diff --git a/.vscode/settings.json b/.vscode/settings.json index e9a0125..428e095 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -60,6 +60,8 @@ "unordered_map": "cpp", "variant": "cpp", "vector": "cpp", - "algorithm": "cpp" + "algorithm": "cpp", + "__tree": "cpp", + "map": "cpp" } } \ No newline at end of file diff --git a/HkStreamer.cpp b/HkStreamer.cpp index d71a224..8871197 100644 --- a/HkStreamer.cpp +++ b/HkStreamer.cpp @@ -2,23 +2,25 @@ #include #include #include +#include #include "HCNetSDK.h" #include "HkStreamer.h" - -void CALLBACK fPlayDataCallBack(LONG lPlayHandle, DWORD dwDataType, BYTE *pBuffer,DWORD dwBufSize,DWORD dwUser) +void CALLBACK fPlayDataCallBack(LONG lPlayHandle, DWORD dwDataType, BYTE *pBuffer, DWORD dwBufSize, void* dwUser) { - if(dwBufSize>0){ - char pb[dwBufSize] = {0}; - memcpy(pb, pBuffer, dwBufSize); - std::cout.write(pb, dwBufSize); - } - int pos = NET_DVR_GetDownloadPos(lPlayHandle); - if (pos > 98) - { - fprintf(stderr, "pyd---Current Time:%d, data size:%d\n", time(NULL), dwBufSize); - printf("Play over!%d\n", pos); - } + if (dwBufSize > 0) + { + char pb[dwBufSize] = {0}; + memcpy(pb, pBuffer, dwBufSize); + + std::cout.write(pb, dwBufSize); + std::cout.flush(); + } + int pos = NET_DVR_GetDownloadPos(lPlayHandle); + if (pos > 98) + { + fprintf(stderr, "pyd---Current Time:%d, data size:%d\n", time(NULL), dwBufSize); + } } int login(LPLoginInfo loginInfo) @@ -27,16 +29,19 @@ int login(LPLoginInfo loginInfo) long lUserID; // login NET_DVR_USER_LOGIN_INFO struLoginInfo = {0}; + NET_DVR_DEVICEINFO_V40 struDeviceInfoV40 = {0}; struLoginInfo.bUseAsynLogin = false; struLoginInfo.wPort = 8000; memcpy(struLoginInfo.sDeviceAddress, loginInfo->sDeviceAddress, NET_DVR_DEV_ADDRESS_MAX_LEN); memcpy(struLoginInfo.sUserName, loginInfo->sUserName, NAME_LEN); memcpy(struLoginInfo.sPassword, loginInfo->sPassword, NAME_LEN); - lUserID = NET_DVR_Login_V40(&struLoginInfo, nullptr); + std::cerr << struLoginInfo.sDeviceAddress << " " << struLoginInfo.sUserName << " " << struLoginInfo.sPassword << std::endl; + lUserID = NET_DVR_Login_V40(&struLoginInfo, &struDeviceInfoV40); return lUserID; } -void cpTime(NET_DVR_TIME *nvrTime, StreamDate date){ +void cpTime(NET_DVR_TIME *nvrTime, StreamDate date) +{ nvrTime->dwYear = date.dwYear; nvrTime->dwMonth = date.dwMonth; nvrTime->dwDay = date.dwDay; @@ -49,47 +54,55 @@ int playback(LPLoginInfo loginInfo, LPStream stream) long lUserID = login(loginInfo); if (lUserID < 0) { - printf("pyd1---Login error, %d\n", NET_DVR_GetLastError()); + std::cerr << "pyd1---Login error" << NET_DVR_GetLastError() << std::endl; return HPR_ERROR; } NET_DVR_VOD_PARA struVodPara = {0}; StreamDate start = stream->start; + struVodPara.struIDInfo.dwChannel = stream->lChannel; cpTime(&struVodPara.struBeginTime, start); cpTime(&struVodPara.struEndTime, stream->end); int hPlayback = NET_DVR_PlayBackByTime_V40(lUserID, &struVodPara); if (hPlayback < 0) { - printf("pyd1---PlayBack error, %d\n", NET_DVR_GetLastError()); + std::cerr << "pyd1---PlayBack error: " << NET_DVR_GetLastError() << std::endl; return HPR_ERROR; } - - if (!NET_DVR_SetPlayDataCallBack(hPlayback, fPlayDataCallBack, 1)) + char usrInfo[200]; + if (!NET_DVR_SetPlayDataCallBack_V40(hPlayback, fPlayDataCallBack, usrInfo)) { - printf("NET_DVR_SetPlayDataCallBack fail!\n"); + std::cerr << "NET_DVR_SetPlayDataCallBack fail!\n" + << std::endl; } - if (!NET_DVR_PlayBackControl(hPlayback, NET_DVR_PLAYSTART, 0, NULL)) + time_t lstart = time(NULL); + if (!NET_DVR_PlayBackControl_V40(hPlayback, NET_DVR_PLAYSTART,NULL, 0, NULL, NULL)) { - printf("play back control failed [%d]\n", NET_DVR_GetLastError()); + std::cerr << "play back control failed : " << NET_DVR_GetLastError() << std::endl; return HPR_ERROR; } int pos = 0; for (pos = 0; pos < 100 && pos >= 0; pos = NET_DVR_GetDownloadPos(hPlayback)) { - sleep(10); + std::cerr<<"Pos:"< 100) { - printf("download err [%d]\n", NET_DVR_GetLastError()); + std::cerr << "download err:" << NET_DVR_GetLastError() << std::endl; return HPR_ERROR; } else @@ -104,6 +117,42 @@ int playback(LPLoginInfo loginInfo, LPStream stream) return HPR_OK; } -int main() +int getCfg(LPLoginInfo loginInfo) { + long lUserID = login(loginInfo); + if (lUserID < 0) + { + std::cerr << "pyd1---Login error" << NET_DVR_GetLastError() << std::endl; + return HPR_ERROR; + } + NET_DVR_IPPARACFG_V40 ipcfg; + DWORD bytesReturned = 0; + ipcfg.dwSize = sizeof(NET_DVR_IPPARACFG_V40); + int iGroupNO = 0; + bool resCode = NET_DVR_GetDVRConfig(lUserID, NET_DVR_GET_IPPARACFG_V40, iGroupNO, &ipcfg, sizeof(NET_DVR_IPPARACFG_V40), &bytesReturned); + if (!resCode) + { + DWORD code = NET_DVR_GetLastError(); + std::cout << "NET_DVR_GetDVRConfig failed " << NET_DVR_GetErrorMsg((LONG *)(&code)) << std::endl; + NET_DVR_Logout(lUserID); + NET_DVR_Cleanup(); + return -1; + } + std::cout << "设备组 " << ipcfg.dwGroupNum << " 数字通道个数 " << ipcfg.dwDChanNum << " 起始通道 " << ipcfg.dwStartDChan << std::endl + << std::endl; + for (int i = 0; i < ipcfg.dwDChanNum; i++) + { + NET_DVR_PICCFG_V30 channelInfo; + bytesReturned = 0; + channelInfo.dwSize = sizeof(NET_DVR_PICCFG_V30); + int channelNum = i + ipcfg.dwStartDChan; + NET_DVR_GetDVRConfig(lUserID, NET_DVR_GET_PICCFG_V30, channelNum, &channelInfo, sizeof(NET_DVR_PICCFG_V30), &bytesReturned); + std::cout << "通道号 " << channelNum << "\t通道名称 " << channelInfo.sChanName; + std::cout << "\t用户名 " << ipcfg.struIPDevInfo[i].sUserName << "\t密码 " << ipcfg.struIPDevInfo[i].sPassword; + std::cout << "\t设备ID " << (long)ipcfg.struIPDevInfo[i].szDeviceID; + std::cout << "\tip地址 " << ipcfg.struIPDevInfo[i].struIP.sIpV4 << "\t端口 " << ipcfg.struIPDevInfo[i].wDVRPort << std::endl; + } + NET_DVR_Logout(lUserID); + NET_DVR_Cleanup(); + return 0; } \ No newline at end of file diff --git a/_obj/_cgo_.o b/_obj/_cgo_.o new file mode 100644 index 0000000..ea4c482 Binary files /dev/null and b/_obj/_cgo_.o differ diff --git a/cwrapper.go b/cwrapper.go new file mode 100644 index 0000000..15d3ece --- /dev/null +++ b/cwrapper.go @@ -0,0 +1,19 @@ +package main + +/* +# +#include "include/HkStreamer.h" +*/ +import "C" + +// type HkLoginInfo C.LoginInfo +// type StreamDate C.StreamDate +// type StreamCon C.StreamCon + +func makeLoginInfo(deviceAddr string, user string, password string) C.LoginInfo { + ret := C.LoginInfo{} + ret.sDeviceAddress = C.CString(deviceAddr) + ret.sUser = C.CString(user) + ret.sPassword = C.CString(password) + return ret +} diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..6ac57e8 --- /dev/null +++ b/go.mod @@ -0,0 +1,3 @@ +module git.pyer.club/kingecg/hkstreamer + +go 1.19 diff --git a/hksdk.rs b/hksdk.rs new file mode 100644 index 0000000..3efc595 --- /dev/null +++ b/hksdk.rs @@ -0,0 +1,305330 @@ +/* automatically generated by rust-bindgen 0.64.0 */ + +pub const OS_POSIX64: u32 = 1; +pub const TRUE: u32 = 1; +pub const FALSE: u32 = 0; +pub const NULL: u32 = 0; +pub const MAX_NAMELEN: u32 = 16; +pub const MAX_RIGHT: u32 = 32; +pub const NAME_LEN: u32 = 32; +pub const MIN_PASSWD_LEN: u32 = 8; +pub const PASSWD_LEN: u32 = 16; +pub const STREAM_PASSWD_LEN: u32 = 12; +pub const MAX_PASSWD_LEN_EX: u32 = 64; +pub const GUID_LEN: u32 = 16; +pub const DEV_TYPE_NAME_LEN: u32 = 24; +pub const SERIALNO_LEN: u32 = 48; +pub const MACADDR_LEN: u32 = 6; +pub const MAC_ADDRESS_NUM: u32 = 48; +pub const MAX_SENCE_NUM: u32 = 16; +pub const RULE_REGION_MAX: u32 = 128; +pub const MAX_ETHERNET: u32 = 2; +pub const MAX_NETWORK_CARD: u32 = 4; +pub const MAX_NETWORK_CARD_EX: u32 = 12; +pub const PATHNAME_LEN: u32 = 128; +pub const MAX_PRESET_V13: u32 = 16; +pub const MAX_TEST_COMMAND_NUM: u32 = 32; +pub const MAX_NUMBER_LEN: u32 = 32; +pub const MAX_NAME_LEN: u32 = 128; +pub const MAX_INDEX_LED: u32 = 8; +pub const MAX_CUSTOM_DIR: u32 = 64; +pub const URL_LEN_V40: u32 = 256; +pub const CLOUD_NAME_LEN: u32 = 48; +pub const CLOUD_PASSWD_LEN: u32 = 48; +pub const MAX_SENSORNAME_LEN: u32 = 64; +pub const MAX_SENSORCHAN_LEN: u32 = 32; +pub const MAX_DESCRIPTION_LEN: u32 = 32; +pub const MAX_DEVNAME_LEN_EX: u32 = 64; +pub const NET_SDK_MAX_FILE_PATH: u32 = 256; +pub const MAX_TMEVOICE_LEN: u32 = 64; +pub const ISO_8601_LEN: u32 = 32; +pub const MODULE_INFO_LEN: u32 = 32; +pub const VERSION_INFO_LEN: u32 = 32; +pub const MAX_NUM_INPUT_BOARD: u32 = 512; +pub const MAX_SHIPSDETE_REGION_NUM: u32 = 8; +pub const MAX_RES_NUM_ONE_VS_INPUT_CHAN: u32 = 8; +pub const MAX_VS_INPUT_CHAN_NUM: u32 = 16; +pub const NET_SDK_MAX_FDID_LEN: u32 = 256; +pub const NET_SDK_MAX_PICID_LEN: u32 = 256; +pub const NET_SDK_FDPIC_CUSTOM_INFO_LEN: u32 = 96; +pub const NET_DVR_MAX_FACE_ANALYSIS_NUM: u32 = 32; +pub const NET_DVR_MAX_FACE_SEARCH_NUM: u32 = 5; +pub const NET_SDK_SECRETKEY_LEN: u32 = 128; +pub const NET_SDK_CUSTOM_LEN: u32 = 512; +pub const NET_SDK_CHECK_CODE_LEN: u32 = 128; +pub const RELATIVE_CHANNEL_LEN: u32 = 2; +pub const NET_SDK_MAX_CALLEDTARGET_NAME: u32 = 32; +pub const NET_SDK_MAX_HBDID_LEN: u32 = 256; +pub const MAX_LEN_TEXT_CONTENT: u32 = 128; +pub const MAX_NUM_INPUT_SOURCE_TEXT: u32 = 32; +pub const MAX_NUM_OUTPUT_CHANNEL: u32 = 512; +pub const MAX_LEN_OSD_CONTENT: u32 = 256; +pub const MAX_NUM_OSD_ONE_SUBWND: u32 = 8; +pub const MAX_NUM_SPLIT_WND: u32 = 64; +pub const MAX_NUM_OSD: u32 = 8; +pub const MAX_DEVNAME_LEN: u32 = 32; +pub const MAX_LED_INFO: u32 = 256; +pub const MAX_TIME_LEN: u32 = 32; +pub const MAX_CARD_LEN: u32 = 24; +pub const MAX_OPERATORNAME_LEN: u32 = 32; +pub const THERMOMETRY_ALARMRULE_NUM: u32 = 40; +pub const MAX_THERMOMETRY_REGION_NUM: u32 = 40; +pub const MAX_THERMOMETRY_DIFFCOMPARISON_NUM: u32 = 40; +pub const MAX_SHIPS_NUM: u32 = 20; +pub const MAX_SHIPIMAGE_NUM: u32 = 6; +pub const KEY_WORD_NUM: u32 = 3; +pub const KEY_WORD_LEN: u32 = 128; +pub const ASYN_LOGIN_SUCC: u32 = 1; +pub const ASYN_LOGIN_FAILED: u32 = 0; +pub const NET_SDK_MAX_VERIFICATION_CODE_LEN: u32 = 32; +pub const NET_SDK_MAX_OPERATE_CODE_LEN: u32 = 64; +pub const MAX_TIMESEGMENT_V30: u32 = 8; +pub const MAX_TIMESEGMENT: u32 = 4; +pub const MAX_ICR_NUM: u32 = 8; +pub const MAX_VEHICLEFLOW_INFO: u32 = 24; +pub const MAX_SHELTERNUM: u32 = 4; +pub const MAX_DAYS: u32 = 7; +pub const PHONENUMBER_LEN: u32 = 32; +pub const MAX_ACCESSORY_CARD: u32 = 256; +pub const MAX_DISKNUM_V30: u32 = 33; +pub const NET_SDK_MAX_NET_USER_NUM: u32 = 64; +pub const NET_SDK_DISK_LOCATION_LEN: u32 = 16; +pub const NET_SDK_SUPPLIER_NAME_LEN: u32 = 32; +pub const NET_SDK_DISK_MODEL_LEN: u32 = 64; +pub const NET_SDK_MAX_DISK_VOLUME: u32 = 33; +pub const NET_SDK_DISK_VOLUME_LEN: u32 = 36; +pub const MAX_DISKNUM: u32 = 16; +pub const MAX_DISKNUM_V10: u32 = 8; +pub const CARD_READER_DESCRIPTION: u32 = 32; +pub const MAX_FACE_NUM: u32 = 2; +pub const MAX_WINDOW_V30: u32 = 32; +pub const MAX_WINDOW_V40: u32 = 64; +pub const MAX_WINDOW: u32 = 16; +pub const MAX_VGA_V30: u32 = 4; +pub const MAX_VGA: u32 = 1; +pub const MAX_USERNUM_V30: u32 = 32; +pub const MAX_USERNUM: u32 = 16; +pub const MAX_EXCEPTIONNUM_V30: u32 = 32; +pub const MAX_EXCEPTIONNUM: u32 = 16; +pub const MAX_LINK: u32 = 6; +pub const MAX_ITC_EXCEPTIONOUT: u32 = 32; +pub const MAX_SCREEN_DISPLAY_LEN: u32 = 512; +pub const MAX_DECPOOLNUM: u32 = 4; +pub const MAX_DECNUM: u32 = 4; +pub const MAX_TRANSPARENTNUM: u32 = 2; +pub const MAX_CYCLE_CHAN: u32 = 16; +pub const MAX_CYCLE_CHAN_V30: u32 = 64; +pub const MAX_DIRNAME_LENGTH: u32 = 80; +pub const MAX_WINDOWS: u32 = 16; +pub const MAX_STRINGNUM_V30: u32 = 8; +pub const MAX_STRINGNUM: u32 = 4; +pub const MAX_STRINGNUM_EX: u32 = 8; +pub const MAX_AUXOUT_V30: u32 = 16; +pub const MAX_AUXOUT: u32 = 4; +pub const MAX_HD_GROUP: u32 = 16; +pub const MAX_HD_GROUP_V40: u32 = 32; +pub const MAX_NFS_DISK: u32 = 8; +pub const NET_SDK_VERSION_LIST_LEN: u32 = 64; +pub const IW_ESSID_MAX_SIZE: u32 = 32; +pub const IW_ENCODING_TOKEN_MAX: u32 = 32; +pub const MAX_SERIAL_NUM: u32 = 64; +pub const MAX_DDNS_NUMS: u32 = 10; +pub const MAX_DOMAIN_NAME: u32 = 64; +pub const MAX_EMAIL_ADDR_LEN: u32 = 48; +pub const MAX_EMAIL_PWD_LEN: u32 = 32; +pub const MAX_SLAVECAMERA_NUM: u32 = 8; +pub const MAX_CALIB_NUM: u32 = 6; +pub const MAX_CALIB_NUM_EX: u32 = 20; +pub const MAX_LEDDISPLAYINFO_LEN: u32 = 1024; +pub const MAX_PEOPLE_DETECTION_NUM: u32 = 8; +pub const MAXPROGRESS: u32 = 100; +pub const MAX_SERIALNUM: u32 = 2; +pub const CARDNUM_LEN: u32 = 20; +pub const PATIENTID_LEN: u32 = 64; +pub const CARDNUM_LEN_OUT: u32 = 32; +pub const MAX_VIDEOOUT_V30: u32 = 4; +pub const MAX_VIDEOOUT: u32 = 2; +pub const MAX_PRESET_V30: u32 = 256; +pub const MAX_TRACK_V30: u32 = 256; +pub const MAX_CRUISE_V30: u32 = 256; +pub const MAX_PRESET: u32 = 128; +pub const MAX_TRACK: u32 = 128; +pub const MAX_CRUISE: u32 = 128; +pub const MAX_PRESET_V40: u32 = 300; +pub const MAX_CRUISE_POINT_NUM: u32 = 128; +pub const MAX_CRUISEPOINT_NUM_V50: u32 = 256; +pub const CRUISE_MAX_PRESET_NUMS: u32 = 32; +pub const MAX_FACE_PIC_NUM: u32 = 30; +pub const LOCKGATE_TIME_NUM: u32 = 4; +pub const MAX_SERIAL_PORT: u32 = 8; +pub const MAX_PREVIEW_MODE: u32 = 8; +pub const MAX_MATRIXOUT: u32 = 16; +pub const LOG_INFO_LEN: u32 = 11840; +pub const DESC_LEN: u32 = 16; +pub const PTZ_PROTOCOL_NUM: u32 = 200; +pub const IPC_PROTOCOL_NUM: u32 = 50; +pub const MAX_AUDIO: u32 = 1; +pub const MAX_AUDIO_V30: u32 = 2; +pub const MAX_CHANNUM: u32 = 16; +pub const MAX_ALARMIN: u32 = 16; +pub const MAX_ALARMOUT: u32 = 4; +pub const MAX_AUDIOCAST_CFG_TYPE: u32 = 3; +pub const MAX_ANALOG_CHANNUM: u32 = 32; +pub const MAX_ANALOG_ALARMOUT: u32 = 32; +pub const MAX_ANALOG_ALARMIN: u32 = 32; +pub const MAX_IP_DEVICE: u32 = 32; +pub const MAX_IP_DEVICE_V40: u32 = 64; +pub const MAX_IP_CHANNEL: u32 = 32; +pub const MAX_IP_ALARMIN: u32 = 128; +pub const MAX_IP_ALARMOUT: u32 = 64; +pub const MAX_IP_ALARMIN_V40: u32 = 4096; +pub const MAX_IP_ALARMOUT_V40: u32 = 4096; +pub const MAX_RECORD_FILE_NUM: u32 = 20; +pub const MAX_ACTION_TYPE: u32 = 12; +pub const MAX_ATM_PROTOCOL_NUM: u32 = 256; +pub const ATM_CUSTOM_PROTO: u32 = 1025; +pub const ATM_PROTOCOL_SORT: u32 = 4; +pub const ATM_DESC_LEN: u32 = 32; +pub const MAX_IPV6_LEN: u32 = 64; +pub const MAX_EVENTID_LEN: u32 = 64; +pub const INVALID_VALUE_UINT32: u32 = 4294967295; +pub const MAX_CHANNUM_V40: u32 = 512; +pub const MAX_MULTI_AREA_NUM: u32 = 24; +pub const COURSE_NAME_LEN: u32 = 32; +pub const INSTRUCTOR_NAME_LEN: u32 = 16; +pub const COURSE_DESCRIPTION_LEN: u32 = 256; +pub const MAX_TIMESEGMENT_V40: u32 = 16; +pub const MAX_MIX_CHAN_NUM: u32 = 16; +pub const MAX_LINE_IN_CHAN_NUM: u32 = 16; +pub const MAX_MIC_CHAN_NUM: u32 = 16; +pub const INQUEST_CASE_NO_LEN: u32 = 64; +pub const INQUEST_CASE_NAME_LEN: u32 = 64; +pub const CUSTOM_INFO_LEN: u32 = 64; +pub const INQUEST_CASE_LEN: u32 = 64; +pub const MAX_FILE_ID_LEN: u32 = 128; +pub const MAX_PIC_NAME_LEN: u32 = 128; +pub const MAX_CHANNUM_V30: u32 = 64; +pub const MAX_ALARMOUT_V40: u32 = 4128; +pub const MAX_ALARMOUT_V30: u32 = 96; +pub const MAX_ALARMIN_V30: u32 = 160; +pub const MAX_ALARMIN_V40: u32 = 4128; +pub const MAX_ANALOG_ALARM_WITH_VOLT_LIMIT: u32 = 16; +pub const MAX_ROIDETECT_NUM: u32 = 8; +pub const MAX_LANERECT_NUM: u32 = 5; +pub const MAX_FORTIFY_NUM: u32 = 10; +pub const MAX_INTERVAL_NUM: u32 = 4; +pub const MAX_CHJC_NUM: u32 = 3; +pub const MAX_VL_NUM: u32 = 5; +pub const MAX_DRIVECHAN_NUM: u32 = 16; +pub const MAX_COIL_NUM: u32 = 3; +pub const MAX_SIGNALLIGHT_NUM: u32 = 6; +pub const LEN_16: u32 = 16; +pub const LEN_32: u32 = 32; +pub const LEN_64: u32 = 64; +pub const LEN_31: u32 = 31; +pub const MAX_LINKAGE_CHAN_NUM: u32 = 16; +pub const MAX_CABINET_COUNT: u32 = 8; +pub const MAX_ID_LEN: u32 = 48; +pub const MAX_PARKNO_LEN: u32 = 16; +pub const MAX_ALARMREASON_LEN: u32 = 32; +pub const MAX_UPGRADE_INFO_LEN: u32 = 48; +pub const MAX_CUSTOMDIR_LEN: u32 = 32; +pub const MAX_LED_INFO_LEN: u32 = 512; +pub const MAX_VOICE_INFO_LEN: u32 = 128; +pub const MAX_LITLE_INFO_LEN: u32 = 64; +pub const MAX_CUSTOM_INFO_LEN: u32 = 64; +pub const MAX_PHONE_NUM_LEN: u32 = 16; +pub const MAX_APP_SERIALNUM_LEN: u32 = 32; +pub const AUDIOTALKTYPE_G722: u32 = 0; +pub const AUDIOTALKTYPE_G711_MU: u32 = 1; +pub const AUDIOTALKTYPE_G711_A: u32 = 2; +pub const AUDIOTALKTYPE_MP2L2: u32 = 5; +pub const AUDIOTALKTYPE_G726: u32 = 6; +pub const AUDIOTALKTYPE_AAC: u32 = 7; +pub const AUDIOTALKTYPE_PCM: u32 = 8; +pub const AUDIOTALKTYPE_G722C: u32 = 9; +pub const AUDIOTALKTYPE_MP3: u32 = 15; +pub const FILE_HEAD: u32 = 0; +pub const VIDEO_I_FRAME: u32 = 1; +pub const VIDEO_B_FRAME: u32 = 2; +pub const VIDEO_P_FRAME: u32 = 3; +pub const AUDIO_PACKET: u32 = 10; +pub const PRIVT_PACKET: u32 = 11; +pub const HIK_H264_E_FRAME: u32 = 64; +pub const MAX_TRANSPARENT_CHAN_NUM: u32 = 4; +pub const MAX_TRANSPARENT_ACCESS_NUM: u32 = 4; +pub const MAX_PARKING_STATUS: u32 = 8; +pub const MAX_PARKING_NUM: u32 = 4; +pub const MAX_ITS_SCENE_NUM: u32 = 16; +pub const MAX_SCENE_TIMESEG_NUM: u32 = 16; +pub const MAX_IVMS_IP_CHANNEL: u32 = 128; +pub const DEVICE_ID_LEN: u32 = 48; +pub const MONITORSITE_ID_LEN: u32 = 48; +pub const MAX_AUXAREA_NUM: u32 = 16; +pub const MAX_SLAVE_CHANNEL_NUM: u32 = 16; +pub const MAX_DEVDESC_LEN: u32 = 64; +pub const ILLEGAL_LEN: u32 = 32; +pub const MAX_TRUCK_AXLE_NUM: u32 = 10; +pub const MAX_CATEGORY_LEN: u32 = 8; +pub const SERIAL_NO_LEN: u32 = 16; +pub const MAX_SECRETKEY_LEN: u32 = 512; +pub const MAX_INDEX_CODE_LEN: u32 = 64; +pub const MAX_ILLEGAL_LEN: u32 = 64; +pub const CODE_LEN: u32 = 64; +pub const ALIAS_LEN: u32 = 32; +pub const MAX_SCH_TASKS_NUM: u32 = 10; +pub const MAX_SERVERID_LEN: u32 = 64; +pub const MAX_SERVERDOMAIN_LEN: u32 = 128; +pub const MAX_AUTHENTICATEID_LEN: u32 = 64; +pub const MAX_AUTHENTICATEPASSWD_LEN: u32 = 32; +pub const MAX_SERVERNAME_LEN: u32 = 64; +pub const MAX_COMPRESSIONID_LEN: u32 = 64; +pub const MAX_SIPSERVER_ADDRESS_LEN: u32 = 128; +pub const MAX_PlATE_NO_LEN: u32 = 32; +pub const UPNP_PORT_NUM: u32 = 12; +pub const MAX_NOTICE_NUMBER_LEN: u32 = 32; +pub const MAX_NOTICE_THEME_LEN: u32 = 64; +pub const MAX_NOTICE_DETAIL_LEN: u32 = 1024; +pub const MAX_NOTICE_PIC_NUM: u32 = 6; +pub const MAX_DEV_NUMBER_LEN: u32 = 32; +pub const LOCK_NAME_LEN: u32 = 32; +pub const HOLIDAY_GROUP_NAME_LEN: u32 = 32; +pub const MAX_HOLIDAY_PLAN_NUM: u32 = 16; +pub const TEMPLATE_NAME_LEN: u32 = 32; +pub const MAX_HOLIDAY_GROUP_NUM: u32 = 16; +pub const DOOR_NAME_LEN: u32 = 32; +pub const STRESS_PASSWORD_LEN: u32 = 8; +pub const SUPER_PASSWORD_LEN: u32 = 8; +pub const GROUP_NAME_LEN: u32 = 32; +pub const GROUP_COMBINATION_NUM: u32 = 8; +pub const MULTI_CARD_GROUP_NUM: u32 = 4; +pub const ACS_CARD_NO_LEN: u32 = 32; +pub const NET_SDK_EMPLOYEE_NO_LEN: u32 = 32; +pub const NET_SDK_UUID_LEN: u32 = 36; +pub const NET_SDK_EHOME_KEY_LEN: u32 = 32; +pub const CARD_PASSWORD_LEN: u32 = 8; +pub const MAX_DOOR_NUM: u32 = 32; +pub const MAX_CARD_RIGHT_PLAN_NUM: u32 = 4; +pub const MAX_GROUP_NUM_128: u32 = 128; +pub const MAX_CARD_READER_NUM: u32 = 64; +pub const MAX_SNEAK_PATH_NODE: u32 = 8; +pub const MAX_MULTI_DOOR_INTERLOCK_GROUP: u32 = 8; +pub const MAX_INTER_LOCK_DOOR_NUM: u32 = 8; +pub const MAX_CASE_SENSOR_NUM: u32 = 8; +pub const MAX_DOOR_NUM_256: u32 = 256; +pub const MAX_READER_ROUTE_NUM: u32 = 16; +pub const MAX_FINGER_PRINT_NUM: u32 = 10; +pub const MAX_CARD_READER_NUM_512: u32 = 512; +pub const NET_SDK_MULTI_CARD_GROUP_NUM_20: u32 = 20; +pub const ERROR_MSG_LEN: u32 = 32; +pub const MAX_DOOR_CODE_LEN: u32 = 8; +pub const MAX_LOCK_CODE_LEN: u32 = 8; +pub const PER_RING_PORT_NUM: u32 = 2; +pub const SENSORNAME_LEN: u32 = 32; +pub const MAX_SENSORDESCR_LEN: u32 = 64; +pub const MAX_DNS_SERVER_NUM: u32 = 2; +pub const SENSORUNIT_LEN: u32 = 32; +pub const WEP_KEY_MAX_SIZE: u32 = 32; +pub const WEP_KEY_MAX_NUM: u32 = 4; +pub const WPA_KEY_MAX_SIZE: u32 = 64; +pub const MAX_SINGLE_FTPPICNAME_LEN: u32 = 20; +pub const MAX_CAMNAME_LEN: u32 = 32; +pub const MAX_FTPNAME_NUM: u32 = 12; +pub const MAX_IDCODE_LEN: u32 = 128; +pub const MAX_VERSIIN_LEN: u32 = 64; +pub const MAX_IDCODE_NUM: u32 = 32; +pub const SDK_LEN_2048: u32 = 2048; +pub const SDK_MAX_IP_LEN: u32 = 48; +pub const RECT_POINT_NUM: u32 = 4; +pub const MAX_PUBLIC_KEY_LEN: u32 = 512; +pub const CHIP_SERIALNO_LEN: u32 = 32; +pub const ENCRYPT_DEV_ID_LEN: u32 = 20; +pub const MAX_SEARCH_ID_LEN: u32 = 36; +pub const TERMINAL_NAME_LEN: u32 = 64; +pub const MAX_URL_LEN: u32 = 512; +pub const REGISTER_NAME_LEN: u32 = 64; +pub const MAX_PORT_NUM: u32 = 64; +pub const MAX_SINGLE_CARD_PORT_NO: u32 = 4; +pub const MAX_FUNC_CARD_NUM: u32 = 32; +pub const MAX_FC_CARD_NUM: u32 = 33; +pub const MAX_REMARKS_LEN: u32 = 128; +pub const MAX_OUTPUT_PORT_NUM: u32 = 32; +pub const MAX_SINGLE_PORT_RECVCARD_NUM: u32 = 64; +pub const MAX_GAMMA_X_VALUE: u32 = 256; +pub const NET_DEV_NAME_LEN: u32 = 64; +pub const NET_DEV_TYPE_NAME_LEN: u32 = 64; +pub const ABNORMAL_INFO_NUM: u32 = 4; +pub const PLAYLIST_NAME_LEN: u32 = 64; +pub const PLAYLIST_ITEM_NUM: u32 = 64; +pub const NET_SDK_MAX_LOGIN_PASSWORD_LEN: u32 = 128; +pub const NET_SDK_MAX_ANSWER_LEN: u32 = 256; +pub const NET_SDK_MAX_QUESTION_LIST_LEN: u32 = 32; +pub const MAX_SCREEN_AREA_NUM: u32 = 128; +pub const NET_SDK_MAX_THERMOMETRYALGNAME: u32 = 128; +pub const NET_SDK_MAX_SHIPSALGNAME: u32 = 128; +pub const NET_SDK_MAX_FIRESALGNAME: u32 = 128; +pub const MAX_PASSPORT_NUM_LEN: u32 = 16; +pub const MAX_PASSPORT_INFO_LEN: u32 = 128; +pub const MAX_PASSPORT_NAME_LEN: u32 = 64; +pub const MAX_PASSPORT_MONITOR_LEN: u32 = 1024; +pub const MAX_NATIONALITY_LEN: u32 = 16; +pub const MAX_PASSPORT_TYPE_LEN: u32 = 4; +pub const NET_DVR_NOERROR: u32 = 0; +pub const NET_DVR_PASSWORD_ERROR: u32 = 1; +pub const NET_DVR_NOENOUGHPRI: u32 = 2; +pub const NET_DVR_NOINIT: u32 = 3; +pub const NET_DVR_CHANNEL_ERROR: u32 = 4; +pub const NET_DVR_OVER_MAXLINK: u32 = 5; +pub const NET_DVR_VERSIONNOMATCH: u32 = 6; +pub const NET_DVR_NETWORK_FAIL_CONNECT: u32 = 7; +pub const NET_DVR_NETWORK_SEND_ERROR: u32 = 8; +pub const NET_DVR_NETWORK_RECV_ERROR: u32 = 9; +pub const NET_DVR_NETWORK_RECV_TIMEOUT: u32 = 10; +pub const NET_DVR_NETWORK_ERRORDATA: u32 = 11; +pub const NET_DVR_ORDER_ERROR: u32 = 12; +pub const NET_DVR_OPERNOPERMIT: u32 = 13; +pub const NET_DVR_COMMANDTIMEOUT: u32 = 14; +pub const NET_DVR_ERRORSERIALPORT: u32 = 15; +pub const NET_DVR_ERRORALARMPORT: u32 = 16; +pub const NET_DVR_PARAMETER_ERROR: u32 = 17; +pub const NET_DVR_CHAN_EXCEPTION: u32 = 18; +pub const NET_DVR_NODISK: u32 = 19; +pub const NET_DVR_ERRORDISKNUM: u32 = 20; +pub const NET_DVR_DISK_FULL: u32 = 21; +pub const NET_DVR_DISK_ERROR: u32 = 22; +pub const NET_DVR_NOSUPPORT: u32 = 23; +pub const NET_DVR_BUSY: u32 = 24; +pub const NET_DVR_MODIFY_FAIL: u32 = 25; +pub const NET_DVR_PASSWORD_FORMAT_ERROR: u32 = 26; +pub const NET_DVR_DISK_FORMATING: u32 = 27; +pub const NET_DVR_DVRNORESOURCE: u32 = 28; +pub const NET_DVR_DVROPRATEFAILED: u32 = 29; +pub const NET_DVR_OPENHOSTSOUND_FAIL: u32 = 30; +pub const NET_DVR_DVRVOICEOPENED: u32 = 31; +pub const NET_DVR_TIMEINPUTERROR: u32 = 32; +pub const NET_DVR_NOSPECFILE: u32 = 33; +pub const NET_DVR_CREATEFILE_ERROR: u32 = 34; +pub const NET_DVR_FILEOPENFAIL: u32 = 35; +pub const NET_DVR_OPERNOTFINISH: u32 = 36; +pub const NET_DVR_GETPLAYTIMEFAIL: u32 = 37; +pub const NET_DVR_PLAYFAIL: u32 = 38; +pub const NET_DVR_FILEFORMAT_ERROR: u32 = 39; +pub const NET_DVR_DIR_ERROR: u32 = 40; +pub const NET_DVR_ALLOC_RESOURCE_ERROR: u32 = 41; +pub const NET_DVR_AUDIO_MODE_ERROR: u32 = 42; +pub const NET_DVR_NOENOUGH_BUF: u32 = 43; +pub const NET_DVR_CREATESOCKET_ERROR: u32 = 44; +pub const NET_DVR_SETSOCKET_ERROR: u32 = 45; +pub const NET_DVR_MAX_NUM: u32 = 46; +pub const NET_DVR_USERNOTEXIST: u32 = 47; +pub const NET_DVR_WRITEFLASHERROR: u32 = 48; +pub const NET_DVR_UPGRADEFAIL: u32 = 49; +pub const NET_DVR_CARDHAVEINIT: u32 = 50; +pub const NET_DVR_PLAYERFAILED: u32 = 51; +pub const NET_DVR_MAX_USERNUM: u32 = 52; +pub const NET_DVR_GETLOCALIPANDMACFAIL: u32 = 53; +pub const NET_DVR_NOENCODEING: u32 = 54; +pub const NET_DVR_IPMISMATCH: u32 = 55; +pub const NET_DVR_MACMISMATCH: u32 = 56; +pub const NET_DVR_UPGRADELANGMISMATCH: u32 = 57; +pub const NET_DVR_MAX_PLAYERPORT: u32 = 58; +pub const NET_DVR_NOSPACEBACKUP: u32 = 59; +pub const NET_DVR_NODEVICEBACKUP: u32 = 60; +pub const NET_DVR_PICTURE_BITS_ERROR: u32 = 61; +pub const NET_DVR_PICTURE_DIMENSION_ERROR: u32 = 62; +pub const NET_DVR_PICTURE_SIZ_ERROR: u32 = 63; +pub const NET_DVR_LOADPLAYERSDKFAILED: u32 = 64; +pub const NET_DVR_LOADPLAYERSDKPROC_ERROR: u32 = 65; +pub const NET_DVR_LOADDSSDKFAILED: u32 = 66; +pub const NET_DVR_LOADDSSDKPROC_ERROR: u32 = 67; +pub const NET_DVR_DSSDK_ERROR: u32 = 68; +pub const NET_DVR_VOICEMONOPOLIZE: u32 = 69; +pub const NET_DVR_JOINMULTICASTFAILED: u32 = 70; +pub const NET_DVR_CREATEDIR_ERROR: u32 = 71; +pub const NET_DVR_BINDSOCKET_ERROR: u32 = 72; +pub const NET_DVR_SOCKETCLOSE_ERROR: u32 = 73; +pub const NET_DVR_USERID_ISUSING: u32 = 74; +pub const NET_DVR_SOCKETLISTEN_ERROR: u32 = 75; +pub const NET_DVR_PROGRAM_EXCEPTION: u32 = 76; +pub const NET_DVR_WRITEFILE_FAILED: u32 = 77; +pub const NET_DVR_FORMAT_READONLY: u32 = 78; +pub const NET_DVR_WITHSAMEUSERNAME: u32 = 79; +pub const NET_DVR_DEVICETYPE_ERROR: u32 = 80; +pub const NET_DVR_LANGUAGE_ERROR: u32 = 81; +pub const NET_DVR_PARAVERSION_ERROR: u32 = 82; +pub const NET_DVR_IPCHAN_NOTALIVE: u32 = 83; +pub const NET_DVR_RTSP_SDK_ERROR: u32 = 84; +pub const NET_DVR_CONVERT_SDK_ERROR: u32 = 85; +pub const NET_DVR_IPC_COUNT_OVERFLOW: u32 = 86; +pub const NET_DVR_MAX_ADD_NUM: u32 = 87; +pub const NET_DVR_PARAMMODE_ERROR: u32 = 88; +pub const NET_DVR_CODESPITTER_OFFLINE: u32 = 89; +pub const NET_DVR_BACKUP_COPYING: u32 = 90; +pub const NET_DVR_CHAN_NOTSUPPORT: u32 = 91; +pub const NET_DVR_CALLINEINVALID: u32 = 92; +pub const NET_DVR_CALCANCELCONFLICT: u32 = 93; +pub const NET_DVR_CALPOINTOUTRANGE: u32 = 94; +pub const NET_DVR_FILTERRECTINVALID: u32 = 95; +pub const NET_DVR_DDNS_DEVOFFLINE: u32 = 96; +pub const NET_DVR_DDNS_INTER_ERROR: u32 = 97; +pub const NET_DVR_FUNCTION_NOT_SUPPORT_OS: u32 = 98; +pub const NET_DVR_DEC_CHAN_REBIND: u32 = 99; +pub const NET_DVR_INTERCOM_SDK_ERROR: u32 = 100; +pub const NET_DVR_NO_CURRENT_UPDATEFILE: u32 = 101; +pub const NET_DVR_USER_NOT_SUCC_LOGIN: u32 = 102; +pub const NET_DVR_USE_LOG_SWITCH_FILE: u32 = 103; +pub const NET_DVR_POOL_PORT_EXHAUST: u32 = 104; +pub const NET_DVR_PACKET_TYPE_NOT_SUPPORT: u32 = 105; +pub const NET_DVR_IPPARA_IPID_ERROR: u32 = 106; +pub const NET_DVR_LOAD_HCPREVIEW_SDK_ERROR: u32 = 107; +pub const NET_DVR_LOAD_HCVOICETALK_SDK_ERROR: u32 = 108; +pub const NET_DVR_LOAD_HCALARM_SDK_ERROR: u32 = 109; +pub const NET_DVR_LOAD_HCPLAYBACK_SDK_ERROR: u32 = 110; +pub const NET_DVR_LOAD_HCDISPLAY_SDK_ERROR: u32 = 111; +pub const NET_DVR_LOAD_HCINDUSTRY_SDK_ERROR: u32 = 112; +pub const NET_DVR_LOAD_HCGENERALCFGMGR_SDK_ERROR: u32 = 113; +pub const NET_DVR_LOAD_HCCOREDEVCFG_SDK_ERROR: u32 = 114; +pub const NET_DVR_LOAD_HCNETUTILS_SDK_ERROR: u32 = 115; +pub const NET_DVR_CORE_VER_MISMATCH: u32 = 121; +pub const NET_DVR_CORE_VER_MISMATCH_HCPREVIEW: u32 = 122; +pub const NET_DVR_CORE_VER_MISMATCH_HCVOICETALK: u32 = 123; +pub const NET_DVR_CORE_VER_MISMATCH_HCALARM: u32 = 124; +pub const NET_DVR_CORE_VER_MISMATCH_HCPLAYBACK: u32 = 125; +pub const NET_DVR_CORE_VER_MISMATCH_HCDISPLAY: u32 = 126; +pub const NET_DVR_CORE_VER_MISMATCH_HCINDUSTRY: u32 = 127; +pub const NET_DVR_CORE_VER_MISMATCH_HCGENERALCFGMGR: u32 = 128; +pub const NET_DVR_COM_VER_MISMATCH_HCPREVIEW: u32 = 136; +pub const NET_DVR_COM_VER_MISMATCH_HCVOICETALK: u32 = 137; +pub const NET_DVR_COM_VER_MISMATCH_HCALARM: u32 = 138; +pub const NET_DVR_COM_VER_MISMATCH_HCPLAYBACK: u32 = 139; +pub const NET_DVR_COM_VER_MISMATCH_HCDISPLAY: u32 = 140; +pub const NET_DVR_COM_VER_MISMATCH_HCINDUSTRY: u32 = 141; +pub const NET_DVR_COM_VER_MISMATCH_HCGENERALCFGMGR: u32 = 142; +pub const NET_ERR_CONFIG_FILE_IMPORT_FAILED: u32 = 145; +pub const NET_ERR_CONFIG_FILE_EXPORT_FAILED: u32 = 146; +pub const NET_DVR_CERTIFICATE_FILE_ERROR: u32 = 147; +pub const NET_DVR_LOAD_SSL_LIB_ERROR: u32 = 148; +pub const NET_DVR_SSL_VERSION_NOT_MATCH: u32 = 149; +pub const NET_DVR_ALIAS_DUPLICATE: u32 = 150; +pub const NET_DVR_INVALID_COMMUNICATION: u32 = 151; +pub const NET_DVR_USERNAME_NOT_EXIST: u32 = 152; +pub const NET_DVR_USER_LOCKED: u32 = 153; +pub const NET_DVR_INVALID_USERID: u32 = 154; +pub const NET_DVR_LOW_LOGIN_VERSION: u32 = 155; +pub const NET_DVR_LOAD_LIBEAY32_DLL_ERROR: u32 = 156; +pub const NET_DVR_LOAD_SSLEAY32_DLL_ERROR: u32 = 157; +pub const NET_ERR_LOAD_LIBICONV: u32 = 158; +pub const NET_ERR_SSL_CONNECT_FAILED: u32 = 159; +pub const NET_ERR_MCAST_ADDRESS_ERROR: u32 = 160; +pub const NET_ERR_LOAD_ZLIB: u32 = 161; +pub const NET_ERR_OPENSSL_NO_INIT: u32 = 162; +pub const NET_DVR_SERVER_NOT_EXIST: u32 = 164; +pub const NET_DVR_TEST_SERVER_FAIL_CONNECT: u32 = 165; +pub const NET_DVR_NAS_SERVER_INVALID_DIR: u32 = 166; +pub const NET_DVR_NAS_SERVER_NOENOUGH_PRI: u32 = 167; +pub const NET_DVR_EMAIL_SERVER_NOT_CONFIG_DNS: u32 = 168; +pub const NET_DVR_EMAIL_SERVER_NOT_CONFIG_GATEWAY: u32 = 169; +pub const NET_DVR_TEST_SERVER_PASSWORD_ERROR: u32 = 170; +pub const NET_DVR_EMAIL_SERVER_CONNECT_EXCEPTION_WITH_SMTP: u32 = 171; +pub const NET_DVR_FTP_SERVER_FAIL_CREATE_DIR: u32 = 172; +pub const NET_DVR_FTP_SERVER_NO_WRITE_PIR: u32 = 173; +pub const NET_DVR_IP_CONFLICT: u32 = 174; +pub const NET_DVR_INSUFFICIENT_STORAGEPOOL_SPACE: u32 = 175; +pub const NET_DVR_STORAGEPOOL_INVALID: u32 = 176; +pub const NET_DVR_EFFECTIVENESS_REBOOT: u32 = 177; +pub const NET_ERR_ANR_ARMING_EXIST: u32 = 178; +pub const NET_ERR_UPLOADLINK_EXIST: u32 = 179; +pub const NET_ERR_INCORRECT_FILE_FORMAT: u32 = 180; +pub const NET_ERR_INCORRECT_FILE_CONTENT: u32 = 181; +pub const NET_ERR_MAX_HRUDP_LINK: u32 = 182; +pub const NET_SDK_ERR_ACCESSKEY_SECRETKEY: u32 = 183; +pub const NET_SDK_ERR_CREATE_PORT_MULTIPLEX: u32 = 184; +pub const NET_DVR_NONBLOCKING_CAPTURE_NOTSUPPORT: u32 = 185; +pub const NET_SDK_ERR_FUNCTION_INVALID: u32 = 186; +pub const NET_SDK_ERR_MAX_PORT_MULTIPLEX: u32 = 187; +pub const NET_DVR_INVALID_LINK: u32 = 188; +pub const NET_DVR_ISAPI_NOT_SUPPORT: u32 = 189; +pub const RAID_ERROR_INDEX: u32 = 200; +pub const NET_DVR_NAME_NOT_ONLY: u32 = 200; +pub const NET_DVR_OVER_MAX_ARRAY: u32 = 201; +pub const NET_DVR_OVER_MAX_VD: u32 = 202; +pub const NET_DVR_VD_SLOT_EXCEED: u32 = 203; +pub const NET_DVR_PD_STATUS_INVALID: u32 = 204; +pub const NET_DVR_PD_BE_DEDICATE_SPARE: u32 = 205; +pub const NET_DVR_PD_NOT_FREE: u32 = 206; +pub const NET_DVR_CANNOT_MIG2NEWMODE: u32 = 207; +pub const NET_DVR_MIG_PAUSE: u32 = 208; +pub const NET_DVR_MIG_CANCEL: u32 = 209; +pub const NET_DVR_EXIST_VD: u32 = 210; +pub const NET_DVR_TARGET_IN_LD_FUNCTIONAL: u32 = 211; +pub const NET_DVR_HD_IS_ASSIGNED_ALREADY: u32 = 212; +pub const NET_DVR_INVALID_HD_COUNT: u32 = 213; +pub const NET_DVR_LD_IS_FUNCTIONAL: u32 = 214; +pub const NET_DVR_BGA_RUNNING: u32 = 215; +pub const NET_DVR_LD_NO_ATAPI: u32 = 216; +pub const NET_DVR_MIGRATION_NOT_NEED: u32 = 217; +pub const NET_DVR_HD_TYPE_MISMATCH: u32 = 218; +pub const NET_DVR_NO_LD_IN_DG: u32 = 219; +pub const NET_DVR_NO_ROOM_FOR_SPARE: u32 = 220; +pub const NET_DVR_SPARE_IS_IN_MULTI_DG: u32 = 221; +pub const NET_DVR_DG_HAS_MISSING_PD: u32 = 222; +pub const NET_DVR_NAME_EMPTY: u32 = 223; +pub const NET_DVR_INPUT_PARAM: u32 = 224; +pub const NET_DVR_PD_NOT_AVAILABLE: u32 = 225; +pub const NET_DVR_ARRAY_NOT_AVAILABLE: u32 = 226; +pub const NET_DVR_PD_COUNT: u32 = 227; +pub const NET_DVR_VD_SMALL: u32 = 228; +pub const NET_DVR_NO_EXIST: u32 = 229; +pub const NET_DVR_NOT_SUPPORT: u32 = 230; +pub const NET_DVR_NOT_FUNCTIONAL: u32 = 231; +pub const NET_DVR_DEV_NODE_NOT_FOUND: u32 = 232; +pub const NET_DVR_SLOT_EXCEED: u32 = 233; +pub const NET_DVR_NO_VD_IN_ARRAY: u32 = 234; +pub const NET_DVR_VD_SLOT_INVALID: u32 = 235; +pub const NET_DVR_PD_NO_ENOUGH_SPACE: u32 = 236; +pub const NET_DVR_ARRAY_NONFUNCTION: u32 = 237; +pub const NET_DVR_ARRAY_NO_ENOUGH_SPACE: u32 = 238; +pub const NET_DVR_STOPPING_SCANNING_ARRAY: u32 = 239; +pub const NET_DVR_NOT_SUPPORT_16T: u32 = 240; +pub const NET_DVR_ARRAY_FORMATING: u32 = 241; +pub const NET_DVR_QUICK_SETUP_PD_COUNT: u32 = 242; +pub const NET_DVR_ERROR_DEVICE_NOT_ACTIVATED: u32 = 250; +pub const NET_DVR_ERROR_RISK_PASSWORD: u32 = 251; +pub const NET_DVR_ERROR_DEVICE_HAS_ACTIVATED: u32 = 252; +pub const VCA_ERROR_INDEX: u32 = 300; +pub const NET_DVR_ID_ERROR: u32 = 300; +pub const NET_DVR_POLYGON_ERROR: u32 = 301; +pub const NET_DVR_RULE_PARAM_ERROR: u32 = 302; +pub const NET_DVR_RULE_CFG_CONFLICT: u32 = 303; +pub const NET_DVR_CALIBRATE_NOT_READY: u32 = 304; +pub const NET_DVR_CAMERA_DATA_ERROR: u32 = 305; +pub const NET_DVR_CALIBRATE_DATA_UNFIT: u32 = 306; +pub const NET_DVR_CALIBRATE_DATA_CONFLICT: u32 = 307; +pub const NET_DVR_CALIBRATE_CALC_FAIL: u32 = 308; +pub const NET_DVR_CALIBRATE_LINE_OUT_RECT: u32 = 309; +pub const NET_DVR_ENTER_RULE_NOT_READY: u32 = 310; +pub const NET_DVR_AID_RULE_NO_INCLUDE_LANE: u32 = 311; +pub const NET_DVR_LANE_NOT_READY: u32 = 312; +pub const NET_DVR_RULE_INCLUDE_TWO_WAY: u32 = 313; +pub const NET_DVR_LANE_TPS_RULE_CONFLICT: u32 = 314; +pub const NET_DVR_NOT_SUPPORT_EVENT_TYPE: u32 = 315; +pub const NET_DVR_LANE_NO_WAY: u32 = 316; +pub const NET_DVR_SIZE_FILTER_ERROR: u32 = 317; +pub const NET_DVR_LIB_FFL_NO_FACE: u32 = 318; +pub const NET_DVR_LIB_FFL_IMG_TOO_SMALL: u32 = 319; +pub const NET_DVR_LIB_FD_IMG_NO_FACE: u32 = 320; +pub const NET_DVR_LIB_FACE_TOO_SMALL: u32 = 321; +pub const NET_DVR_LIB_FACE_QUALITY_TOO_BAD: u32 = 322; +pub const NET_DVR_KEY_PARAM_ERR: u32 = 323; +pub const NET_DVR_CALIBRATE_DATA_ERR: u32 = 324; +pub const NET_DVR_CALIBRATE_DISABLE_FAIL: u32 = 325; +pub const NET_DVR_VCA_LIB_FD_SCALE_OUTRANGE: u32 = 326; +pub const NET_DVR_LIB_FD_REGION_TOO_LARGE: u32 = 327; +pub const NET_DVR_TRIAL_OVERDUE: u32 = 328; +pub const NET_DVR_CONFIG_FILE_CONFLICT: u32 = 329; +pub const NET_DVR_FR_FPL_FAIL: u32 = 330; +pub const NET_DVR_FR_IQA_FAIL: u32 = 331; +pub const NET_DVR_FR_FEM_FAIL: u32 = 332; +pub const NET_DVR_FPL_DT_CONF_TOO_LOW: u32 = 333; +pub const NET_DVR_FPL_CONF_TOO_LOW: u32 = 334; +pub const NET_DVR_E_DATA_SIZE: u32 = 335; +pub const NET_DVR_FR_MODEL_VERSION_ERR: u32 = 336; +pub const NET_DVR_FR_FD_FAIL: u32 = 337; +pub const NET_DVR_FA_NORMALIZE_ERR: u32 = 338; +pub const NET_DVR_DOG_PUSTREAM_NOT_MATCH: u32 = 339; +pub const NET_DVR_DEV_PUSTREAM_NOT_MATCH: u32 = 340; +pub const NET_DVR_PUSTREAM_ALREADY_EXISTS: u32 = 341; +pub const NET_DVR_SEARCH_CONNECT_FAILED: u32 = 342; +pub const NET_DVR_INSUFFICIENT_DISK_SPACE: u32 = 343; +pub const NET_DVR_DATABASE_CONNECTION_FAILED: u32 = 344; +pub const NET_DVR_DATABASE_ADM_PW_ERROR: u32 = 345; +pub const NET_DVR_DECODE_YUV: u32 = 346; +pub const NET_DVR_IMAGE_RESOLUTION_ERROR: u32 = 347; +pub const NET_DVR_CHAN_WORKMODE_ERROR: u32 = 348; +pub const NET_DVR_RTSP_ERROR_NOENOUGHPRI: u32 = 401; +pub const NET_DVR_RTSP_ERROR_ALLOC_RESOURCE: u32 = 402; +pub const NET_DVR_RTSP_ERROR_PARAMETER: u32 = 403; +pub const NET_DVR_RTSP_ERROR_NO_URL: u32 = 404; +pub const NET_DVR_RTSP_ERROR_FORCE_STOP: u32 = 406; +pub const NET_DVR_RTSP_GETPORTFAILED: u32 = 407; +pub const NET_DVR_RTSP_DESCRIBERROR: u32 = 410; +pub const NET_DVR_RTSP_DESCRIBESENDTIMEOUT: u32 = 411; +pub const NET_DVR_RTSP_DESCRIBESENDERROR: u32 = 412; +pub const NET_DVR_RTSP_DESCRIBERECVTIMEOUT: u32 = 413; +pub const NET_DVR_RTSP_DESCRIBERECVDATALOST: u32 = 414; +pub const NET_DVR_RTSP_DESCRIBERECVERROR: u32 = 415; +pub const NET_DVR_RTSP_DESCRIBESERVERERR: u32 = 416; +pub const NET_DVR_RTSP_SETUPERROR: u32 = 420; +pub const NET_DVR_RTSP_SETUPSENDTIMEOUT: u32 = 421; +pub const NET_DVR_RTSP_SETUPSENDERROR: u32 = 422; +pub const NET_DVR_RTSP_SETUPRECVTIMEOUT: u32 = 423; +pub const NET_DVR_RTSP_SETUPRECVDATALOST: u32 = 424; +pub const NET_DVR_RTSP_SETUPRECVERROR: u32 = 425; +pub const NET_DVR_RTSP_OVER_MAX_CHAN: u32 = 426; +pub const NET_DVR_RTSP_SETUPSERVERERR: u32 = 427; +pub const NET_DVR_RTSP_PLAYERROR: u32 = 430; +pub const NET_DVR_RTSP_PLAYSENDTIMEOUT: u32 = 431; +pub const NET_DVR_RTSP_PLAYSENDERROR: u32 = 432; +pub const NET_DVR_RTSP_PLAYRECVTIMEOUT: u32 = 433; +pub const NET_DVR_RTSP_PLAYRECVDATALOST: u32 = 434; +pub const NET_DVR_RTSP_PLAYRECVERROR: u32 = 435; +pub const NET_DVR_RTSP_PLAYSERVERERR: u32 = 436; +pub const NET_DVR_RTSP_TEARDOWNERROR: u32 = 440; +pub const NET_DVR_RTSP_TEARDOWNSENDTIMEOUT: u32 = 441; +pub const NET_DVR_RTSP_TEARDOWNSENDERROR: u32 = 442; +pub const NET_DVR_RTSP_TEARDOWNRECVTIMEOUT: u32 = 443; +pub const NET_DVR_RTSP_TEARDOWNRECVDATALOST: u32 = 444; +pub const NET_DVR_RTSP_TEARDOWNRECVERROR: u32 = 445; +pub const NET_DVR_RTSP_TEARDOWNSERVERERR: u32 = 446; +pub const NET_PLAYM4_NOERROR: u32 = 500; +pub const NET_PLAYM4_PARA_OVER: u32 = 501; +pub const NET_PLAYM4_ORDER_ERROR: u32 = 502; +pub const NET_PLAYM4_TIMER_ERROR: u32 = 503; +pub const NET_PLAYM4_DEC_VIDEO_ERROR: u32 = 504; +pub const NET_PLAYM4_DEC_AUDIO_ERROR: u32 = 505; +pub const NET_PLAYM4_ALLOC_MEMORY_ERROR: u32 = 506; +pub const NET_PLAYM4_OPEN_FILE_ERROR: u32 = 507; +pub const NET_PLAYM4_CREATE_OBJ_ERROR: u32 = 508; +pub const NET_PLAYM4_CREATE_DDRAW_ERROR: u32 = 509; +pub const NET_PLAYM4_CREATE_OFFSCREEN_ERROR: u32 = 510; +pub const NET_PLAYM4_BUF_OVER: u32 = 511; +pub const NET_PLAYM4_CREATE_SOUND_ERROR: u32 = 512; +pub const NET_PLAYM4_SET_VOLUME_ERROR: u32 = 513; +pub const NET_PLAYM4_SUPPORT_FILE_ONLY: u32 = 514; +pub const NET_PLAYM4_SUPPORT_STREAM_ONLY: u32 = 515; +pub const NET_PLAYM4_SYS_NOT_SUPPORT: u32 = 516; +pub const NET_PLAYM4_FILEHEADER_UNKNOWN: u32 = 517; +pub const NET_PLAYM4_VERSION_INCORRECT: u32 = 518; +pub const NET_PALYM4_INIT_DECODER_ERROR: u32 = 519; +pub const NET_PLAYM4_CHECK_FILE_ERROR: u32 = 520; +pub const NET_PLAYM4_INIT_TIMER_ERROR: u32 = 521; +pub const NET_PLAYM4_BLT_ERROR: u32 = 522; +pub const NET_PLAYM4_UPDATE_ERROR: u32 = 523; +pub const NET_PLAYM4_OPEN_FILE_ERROR_MULTI: u32 = 524; +pub const NET_PLAYM4_OPEN_FILE_ERROR_VIDEO: u32 = 525; +pub const NET_PLAYM4_JPEG_COMPRESS_ERROR: u32 = 526; +pub const NET_PLAYM4_EXTRACT_NOT_SUPPORT: u32 = 527; +pub const NET_PLAYM4_EXTRACT_DATA_ERROR: u32 = 528; +pub const NET_CONVERT_ERROR_NOT_SUPPORT: u32 = 581; +pub const NET_AUDIOINTERCOM_OK: u32 = 600; +pub const NET_AUDIOINTECOM_ERR_NOTSUPORT: u32 = 601; +pub const NET_AUDIOINTECOM_ERR_ALLOC_MEMERY: u32 = 602; +pub const NET_AUDIOINTECOM_ERR_PARAMETER: u32 = 603; +pub const NET_AUDIOINTECOM_ERR_CALL_ORDER: u32 = 604; +pub const NET_AUDIOINTECOM_ERR_FIND_DEVICE: u32 = 605; +pub const NET_AUDIOINTECOM_ERR_OPEN_DEVICE: u32 = 606; +pub const NET_AUDIOINTECOM_ERR_NO_CONTEXT: u32 = 607; +pub const NET_AUDIOINTECOM_ERR_NO_WAVFILE: u32 = 608; +pub const NET_AUDIOINTECOM_ERR_INVALID_TYPE: u32 = 609; +pub const NET_AUDIOINTECOM_ERR_ENCODE_FAIL: u32 = 610; +pub const NET_AUDIOINTECOM_ERR_DECODE_FAIL: u32 = 611; +pub const NET_AUDIOINTECOM_ERR_NO_PLAYBACK: u32 = 612; +pub const NET_AUDIOINTECOM_ERR_DENOISE_FAIL: u32 = 613; +pub const NET_AUDIOINTECOM_ERR_UNKOWN: u32 = 619; +pub const NET_QOS_OK: u32 = 700; +pub const NET_QOS_ERROR: u32 = 699; +pub const NET_QOS_ERR_INVALID_ARGUMENTS: u32 = 698; +pub const NET_QOS_ERR_SESSION_NOT_FOUND: u32 = 697; +pub const NET_QOS_ERR_LIB_NOT_INITIALIZED: u32 = 696; +pub const NET_QOS_ERR_OUTOFMEM: u32 = 695; +pub const NET_QOS_ERR_PACKET_UNKNOW: u32 = 690; +pub const NET_QOS_ERR_PACKET_VERSION: u32 = 689; +pub const NET_QOS_ERR_PACKET_LENGTH: u32 = 688; +pub const NET_QOS_ERR_PACKET_TOO_BIG: u32 = 687; +pub const NET_QOS_ERR_SCHEDPARAMS_INVALID_BANDWIDTH: u32 = 680; +pub const NET_QOS_ERR_SCHEDPARAMS_BAD_FRACTION: u32 = 679; +pub const NET_QOS_ERR_SCHEDPARAMS_BAD_MINIMUM_INTERVAL: u32 = 678; +pub const NET_ERROR_TRUNK_LINE: u32 = 711; +pub const NET_ERROR_MIXED_JOINT: u32 = 712; +pub const NET_ERROR_DISPLAY_SWITCH: u32 = 713; +pub const NET_ERROR_USED_BY_BIG_SCREEN: u32 = 714; +pub const NET_ERROR_USE_OTHER_DEC_RESOURCE: u32 = 715; +pub const NET_ERROR_DISP_MODE_SWITCH: u32 = 716; +pub const NET_ERROR_SCENE_USING: u32 = 717; +pub const NET_ERR_NO_ENOUGH_DEC_RESOURCE: u32 = 718; +pub const NET_ERR_NO_ENOUGH_FREE_SHOW_RESOURCE: u32 = 719; +pub const NET_ERR_NO_ENOUGH_VIDEO_MEMORY: u32 = 720; +pub const NET_ERR_MAX_VIDEO_NUM: u32 = 721; +pub const NET_ERR_WIN_COVER_FREE_SHOW_AND_NORMAL: u32 = 722; +pub const NET_ERR_FREE_SHOW_WIN_SPLIT: u32 = 723; +pub const NET_ERR_INAPPROPRIATE_WIN_FREE_SHOW: u32 = 724; +pub const NET_DVR_TRANSPARENT_WIN_NOT_SUPPORT_SPLIT: u32 = 725; +pub const NET_DVR_SPLIT_WIN_NOT_SUPPORT_TRANSPARENT: u32 = 726; +pub const NET_ERR_MAX_LOGO_NUM: u32 = 727; +pub const NET_ERR_MAX_WIN_LOOP_NUM: u32 = 728; +pub const NET_ERR_VIRTUAL_LED_VERTICAL_CROSS: u32 = 729; +pub const NET_ERR_MAX_VIRTUAL_LED_HEIGHT: u32 = 730; +pub const NET_ERR_VIRTUAL_LED_ILLEGAL_CHARACTER: u32 = 731; +pub const NET_ERR_BASEMAP_NOT_EXIST: u32 = 732; +pub const NET_ERR_LED_NOT_SUPPORT_VIRTUAL_LED: u32 = 733; +pub const NET_ERR_LED_RESOLUTION_NOT_SUPPORT: u32 = 734; +pub const NET_ERR_PLAN_OVERDUE: u32 = 735; +pub const NET_ERR_PROCESSER_MAX_SCREEN_BLK: u32 = 736; +pub const NET_ERR_WND_SIZE_TOO_SMALL: u32 = 737; +pub const NET_ERR_WND_SPLIT_NOT_SUPPORT_ROAM: u32 = 738; +pub const NET_ERR_OUTPUT_ONE_BOARD_ONE_WALL: u32 = 739; +pub const NET_ERR_WND_CANNOT_LCD_AND_LED_OUTPUT: u32 = 740; +pub const NET_ERR_MAX_OSD_NUM: u32 = 741; +pub const NET_SDK_CANCEL_WND_TOPKEEP_ATTR_FIRST: u32 = 751; +pub const NET_SDK_ERR_LED_SCREEN_CHECKING: u32 = 752; +pub const NET_SDK_ERR_NOT_SUPPORT_SINGLE_RESOLUTION: u32 = 753; +pub const NET_SDK_ERR_LED_RESOLUTION_MISMATCHED: u32 = 754; +pub const NET_SDK_ERR_MAX_VIRTUAL_LED_WIDTH: u32 = 755; +pub const NET_SDK_ERR_MAX_VIRTUAL_LED_IN_SCREEN: u32 = 756; +pub const NET_SDK_ERR_MAX_VIRTUAL_LED_IN_WALL: u32 = 757; +pub const NET_SDK_ERR_VIRTUAL_LED_OVERLAP: u32 = 758; +pub const NET_SDK_ERR_VIRTUAL_LED_TYPE: u32 = 759; +pub const NET_SDK_ERR_VIRTUAL_LED_COLOUR: u32 = 760; +pub const NET_SDK_ERR_VIRTUAL_LED_MOVE_DIRECTION: u32 = 761; +pub const NET_SDK_ERR_VIRTUAL_LED_MOVE_MODE: u32 = 762; +pub const NET_SDK_ERR_VIRTUAL_LED_MOVE_SPEED: u32 = 763; +pub const NET_SDK_ERR_VIRTUAL_LED_DISP_MODE: u32 = 764; +pub const NET_SDK_ERR_VIRTUAL_LED_NO: u32 = 765; +pub const NET_SDK_ERR_VIRTUAL_LED_PARA: u32 = 766; +pub const NET_SDK_ERR_BASEMAP_POSITION: u32 = 767; +pub const NET_SDK_ERR_BASEMAP_PICTURE_LEN: u32 = 768; +pub const NET_SDK_ERR_BASEMAP_PICTURE_RESOLUTION: u32 = 769; +pub const NET_SDK_ERR_BASEMAP_PICTURE_FORMAT: u32 = 770; +pub const NET_SDK_ERR_MAX_VIRTUAL_LED_NUM: u32 = 771; +pub const NET_SDK_ERR_MAX_TIME_VIRTUAL_LED_IN_WALL: u32 = 772; +pub const NET_ERR_TERMINAL_BUSY: u32 = 780; +pub const NET_ERR_DATA_RETURNED_ILLEGAL: u32 = 790; +pub const NET_DVR_FUNCTION_RESOURCE_USAGE_ERROR: u32 = 791; +pub const NET_DVR_ERR_IMPORT_EMPTY_FILE: u32 = 792; +pub const NET_DVR_ERR_IMPORT_TOO_LARGE_FILE: u32 = 793; +pub const NET_DVR_ERR_BAD_IPV4_ADDRESS: u32 = 794; +pub const NET_DVR_ERR_BAD_NET_MASK: u32 = 795; +pub const NET_DVR_ERR_INVALID_NET_GATE_ADDRESS: u32 = 796; +pub const NET_DVR_ERR_BAD_DNS: u32 = 797; +pub const NET_DVR_ERR_ILLEGAL_PASSWORD: u32 = 798; +pub const NET_DVR_DEV_NET_OVERFLOW: u32 = 800; +pub const NET_DVR_STATUS_RECORDFILE_WRITING_NOT_LOCK: u32 = 801; +pub const NET_DVR_STATUS_CANT_FORMAT_LITTLE_DISK: u32 = 802; +pub const NET_SDK_ERR_REMOTE_DISCONNECT: u32 = 803; +pub const NET_SDK_ERR_RD_ADD_RD: u32 = 804; +pub const NET_SDK_ERR_BACKUP_DISK_EXCEPT: u32 = 805; +pub const NET_SDK_ERR_RD_LIMIT: u32 = 806; +pub const NET_SDK_ERR_ADDED_RD_IS_WD: u32 = 807; +pub const NET_SDK_ERR_ADD_ORDER_WRONG: u32 = 808; +pub const NET_SDK_ERR_WD_ADD_WD: u32 = 809; +pub const NET_SDK_ERR_WD_SERVICE_EXCETP: u32 = 810; +pub const NET_SDK_ERR_RD_SERVICE_EXCETP: u32 = 811; +pub const NET_SDK_ERR_ADDED_WD_IS_RD: u32 = 812; +pub const NET_SDK_ERR_PERFORMANCE_LIMIT: u32 = 813; +pub const NET_SDK_ERR_ADDED_DEVICE_EXIST: u32 = 814; +pub const NET_SDK_ERR_INQUEST_RESUMING: u32 = 815; +pub const NET_SDK_ERR_RECORD_BACKUPING: u32 = 816; +pub const NET_SDK_ERR_DISK_PLAYING: u32 = 817; +pub const NET_SDK_ERR_INQUEST_STARTED: u32 = 818; +pub const NET_SDK_ERR_LOCAL_OPERATING: u32 = 819; +pub const NET_SDK_ERR_INQUEST_NOT_START: u32 = 820; +pub const NET_SDK_ERR_CHAN_AUDIO_BIND: u32 = 821; +pub const NET_DVR_N_PLUS_ONE_MODE: u32 = 822; +pub const NET_DVR_CLOUD_STORAGE_OPENED: u32 = 823; +pub const NET_DVR_ERR_OPER_NOT_ALLOWED: u32 = 824; +pub const NET_DVR_ERR_NEED_RELOCATE: u32 = 825; +pub const NET_SDK_ERR_IR_PORT_ERROR: u32 = 830; +pub const NET_SDK_ERR_IR_CMD_ERROR: u32 = 831; +pub const NET_SDK_ERR_NOT_INQUESTING: u32 = 832; +pub const NET_SDK_ERR_INQUEST_NOT_PAUSED: u32 = 833; +pub const NET_DVR_CHECK_PASSWORD_MISTAKE_ERROR: u32 = 834; +pub const NET_DVR_CHECK_PASSWORD_NULL_ERROR: u32 = 835; +pub const NET_DVR_UNABLE_CALIB_ERROR: u32 = 836; +pub const NET_DVR_PLEASE_CALIB_ERROR: u32 = 837; +pub const NET_DVR_ERR_PANORAMIC_CAL_EMPTY: u32 = 838; +pub const NET_DVR_ERR_CALIB_FAIL_PLEASEAGAIN: u32 = 839; +pub const NET_DVR_ERR_DETECTION_LINE: u32 = 840; +pub const NET_DVR_ERR_TURN_OFF_IMAGE_PARA: u32 = 841; +pub const NET_DVR_EXCEED_FACE_IMAGES_ERROR: u32 = 843; +pub const NET_DVR_ANALYSIS_FACE_IMAGES_ERROR: u32 = 844; +pub const NET_ERR_ALARM_INPUT_OCCUPIED: u32 = 845; +pub const NET_DVR_FACELIB_DATABASE_ERROR: u32 = 846; +pub const NET_DVR_FACELIB_DATA_ERROR: u32 = 847; +pub const NET_DVR_FACE_DATA_ID_ERROR: u32 = 848; +pub const NET_DVR_FACELIB_ID_ERROR: u32 = 849; +pub const NET_DVR_EXCEED_FACE_LIBARY_ERROR: u32 = 850; +pub const NET_DVR_PIC_ANALYSIS_NO_TARGET_ERROR: u32 = 851; +pub const NET_DVR_SUBPIC_ANALYSIS_MODELING_ERROR: u32 = 852; +pub const NET_DVR_PIC_ANALYSIS_NO_RESOURCE_ERROR: u32 = 853; +pub const NET_DVR_ANALYSIS_ENGINES_NO_RESOURCE_ERROR: u32 = 854; +pub const NET_DVR_ANALYSIS_ENGINES_USAGE_EXCEED_ERROR: u32 = 855; +pub const NET_DVR_EXCEED_HUMANMISINFO_FILTER_ENABLED_ERROR: u32 = 856; +pub const NET_DVR_NAME_ERROR: u32 = 857; +pub const NET_DVR_NAME_EXIST_ERROR: u32 = 858; +pub const NET_DVR_FACELIB_PIC_IMPORTING_ERROR: u32 = 859; +pub const NET_DVR_ERR_CALIB_POSITION: u32 = 860; +pub const NET_DVR_ERR_DELETE: u32 = 861; +pub const NET_DVR_ERR_SCENE_ID: u32 = 862; +pub const NET_DVR_ERR_CALIBING: u32 = 863; +pub const NET_DVR_PIC_FORMAT_ERROR: u32 = 864; +pub const NET_DVR_PIC_RESOLUTION_INVALID_ERROR: u32 = 865; +pub const NET_DVR_PIC_SIZE_EXCEED_ERROR: u32 = 866; +pub const NET_DVR_PIC_ANALYSIS_TARGRT_NUM_EXCEED_ERROR: u32 = 867; +pub const NET_DVR_ANALYSIS_ENGINES_LOADING_ERROR: u32 = 868; +pub const NET_DVR_ANALYSIS_ENGINES_ABNORMA_ERROR: u32 = 869; +pub const NET_DVR_ANALYSIS_ENGINES_FACELIB_IMPORTING: u32 = 870; +pub const NET_DVR_NO_DATA_FOR_MODELING_ERROR: u32 = 871; +pub const NET_DVR_FACE_DATA_MODELING_ERROR: u32 = 872; +pub const NET_ERR_FACELIBDATA_OVERLIMIT: u32 = 873; +pub const NET_DVR_ANALYSIS_ENGINES_ASSOCIATED_CHANNEL: u32 = 874; +pub const NET_DVR_ERR_CUSTOMID_LEN: u32 = 875; +pub const NET_DVR_ERR_CUSTOMFACELIBID_REPEAT: u32 = 876; +pub const NET_DVR_ERR_CUSTOMHUMANID_REPEAT: u32 = 877; +pub const NET_DVR_ERR_URL_DOWNLOAD_FAIL: u32 = 878; +pub const NET_DVR_ERR_URL_DOWNLOAD_NOTSTART: u32 = 879; +pub const NET_DVR_CFG_FILE_SECRETKEY_ERROR: u32 = 880; +pub const NET_DVR_WDR_NOTDISABLE_ERROR: u32 = 881; +pub const NET_DVR_HLC_NOTDISABLE_ERROR: u32 = 882; +pub const NET_DVR_THERMOMETRY_REGION_OVERSTEP_ERROR: u32 = 883; +pub const NET_DVR_ERR_MODELING_DEVICEINTERNAL: u32 = 884; +pub const NET_DVR_ERR_MODELING_FACE: u32 = 885; +pub const NET_DVR_ERR_MODELING_FACEGRADING: u32 = 886; +pub const NET_DVR_ERR_MODELING_FACEGFEATURE: u32 = 887; +pub const NET_DVR_ERR_MODELING_FACEGANALYZING: u32 = 888; +pub const NET_DVR_ERR_STREAM_LIMIT: u32 = 889; +pub const NET_DVR_ERR_STREAM_DESCRIPTION: u32 = 890; +pub const NET_DVR_ERR_STREAM_DELETE: u32 = 891; +pub const NET_DVR_ERR_CUSTOMSTREAM_NAME: u32 = 892; +pub const NET_DVR_ERR_CUSTOMSTREAM_NOTEXISTED: u32 = 893; +pub const NET_DVR_ERR_TOO_SHORT_CALIBRATING_TIME: u32 = 894; +pub const NET_DVR_ERR_AUTO_CALIBRATE_FAILED: u32 = 895; +pub const NET_DVR_ERR_VERIFICATION_FAILED: u32 = 896; +pub const NET_DVR_NO_TEMP_SENSOR_ERROR: u32 = 897; +pub const NET_DVR_PUPIL_DISTANCE_OVERSIZE_ERROR: u32 = 898; +pub const NET_DVR_ERR_UNOPENED_FACE_SNAP: u32 = 899; +pub const NET_ERR_CUT_INPUTSTREAM_OVERLIMIT: u32 = 900; +pub const NET_ERR_WINCHAN_IDX: u32 = 901; +pub const NET_ERR_WIN_LAYER: u32 = 902; +pub const NET_ERR_WIN_BLK_NUM: u32 = 903; +pub const NET_ERR_OUTPUT_RESOLUTION: u32 = 904; +pub const NET_ERR_LAYOUT: u32 = 905; +pub const NET_ERR_INPUT_RESOLUTION: u32 = 906; +pub const NET_ERR_SUBDEVICE_OFFLINE: u32 = 907; +pub const NET_ERR_NO_DECODE_CHAN: u32 = 908; +pub const NET_ERR_MAX_WINDOW_ABILITY: u32 = 909; +pub const NET_ERR_ORDER_ERROR: u32 = 910; +pub const NET_ERR_PLAYING_PLAN: u32 = 911; +pub const NET_ERR_DECODER_USED: u32 = 912; +pub const NET_ERR_OUTPUT_BOARD_DATA_OVERFLOW: u32 = 913; +pub const NET_ERR_SAME_USER_NAME: u32 = 914; +pub const NET_ERR_INVALID_USER_NAME: u32 = 915; +pub const NET_ERR_MATRIX_USING: u32 = 916; +pub const NET_ERR_DIFFERENT_CHAN_TYPE: u32 = 917; +pub const NET_ERR_INPUT_CHAN_BINDED: u32 = 918; +pub const NET_ERR_BINDED_OUTPUT_CHAN_OVERFLOW: u32 = 919; +pub const NET_ERR_MAX_SIGNAL_NUM: u32 = 920; +pub const NET_ERR_INPUT_CHAN_USING: u32 = 921; +pub const NET_ERR_MANAGER_LOGON: u32 = 922; +pub const NET_ERR_USERALREADY_LOGON: u32 = 923; +pub const NET_ERR_LAYOUT_INIT: u32 = 924; +pub const NET_ERR_BASEMAP_SIZE_NOT_MATCH: u32 = 925; +pub const NET_ERR_WINDOW_OPERATING: u32 = 926; +pub const NET_ERR_SIGNAL_UPLIMIT: u32 = 927; +pub const NET_ERR_SIGNAL_MAX_ENLARGE_TIMES: u32 = 928; +pub const NET_ERR_ONE_SIGNAL_MULTI_CROSS: u32 = 929; +pub const NET_ERR_ULTRA_HD_SIGNAL_MULTI_WIN: u32 = 930; +pub const NET_ERR_MAX_VIRTUAL_LED_WIDTH: u32 = 931; +pub const NET_ERR_MAX_VIRTUAL_LED_WORD_LEN: u32 = 932; +pub const NET_ERR_SINGLE_OUTPUTPARAM_CONFIG: u32 = 933; +pub const NET_ERR_MULTI_WIN_BE_COVER: u32 = 934; +pub const NET_ERR_WIN_NOT_EXIST: u32 = 935; +pub const NET_ERR_WIN_MAX_SIGNALSOURCE: u32 = 936; +pub const NET_ERR_MULTI_WIN_MOVE: u32 = 937; +pub const NET_ERR_MULTI_WIN_YPBPR_SDI: u32 = 938; +pub const NET_ERR_DIFF_TYPE_OUTPUT_MIXUSE: u32 = 939; +pub const NET_ERR_SPLIT_WIN_CROSS: u32 = 940; +pub const NET_ERR_SPLIT_WIN_NOT_FULL_SCREEN: u32 = 941; +pub const NET_ERR_SPLIT_WIN_MANY_WIN: u32 = 942; +pub const NET_ERR_WINDOW_SIZE_OVERLIMIT: u32 = 943; +pub const NET_ERR_INPUTSTREAM_ALREADY_JOINT: u32 = 944; +pub const NET_ERR_JOINT_INPUTSTREAM_OVERLIMIT: u32 = 945; +pub const NET_ERR_LED_RESOLUTION: u32 = 946; +pub const NET_ERR_JOINT_SCALE_OVERLIMIT: u32 = 947; +pub const NET_ERR_INPUTSTREAM_ALREADY_DECODE: u32 = 948; +pub const NET_ERR_INPUTSTREAM_NOTSUPPORT_CAPTURE: u32 = 949; +pub const NET_ERR_JOINT_NOTSUPPORT_SPLITWIN: u32 = 950; +pub const NET_ERR_MAX_WIN_OVERLAP: u32 = 951; +pub const NET_ERR_STREAMID_CHAN_BOTH_VALID: u32 = 952; +pub const NET_ERR_NO_ZERO_CHAN: u32 = 953; +pub const NEED_RECONNECT: u32 = 955; +pub const NET_ERR_NO_STREAM_ID: u32 = 956; +pub const NET_DVR_TRANS_NOT_START: u32 = 957; +pub const NET_ERR_MAXNUM_STREAM_ID: u32 = 958; +pub const NET_ERR_WORKMODE_MISMATCH: u32 = 959; +pub const NET_ERR_MODE_IS_USING: u32 = 960; +pub const NET_ERR_DEV_PROGRESSING: u32 = 961; +pub const NET_ERR_PASSIVE_TRANSCODING: u32 = 962; +pub const NET_ERR_RING_NOT_CONFIGURE: u32 = 964; +pub const NET_ERR_CLOSE_WINDOW_FIRST: u32 = 971; +pub const NET_ERR_SPLIT_WINDOW_NUM_NOT_SUPPORT: u32 = 972; +pub const NET_ERR_REACH_ONE_SIGNAL_PREVIEW_MAX_LINK: u32 = 973; +pub const NET_ERR_ONLY_SPLITWND_SUPPORT_AMPLIFICATION: u32 = 974; +pub const NET_DVR_ERR_WINDOW_SIZE_PLACE: u32 = 975; +pub const NET_DVR_ERR_RGIONAL_RESTRICTIONS: u32 = 976; +pub const NET_ERR_WNDZOOM_NOT_SUPPORT: u32 = 977; +pub const NET_ERR_LED_SCREEN_SIZE: u32 = 978; +pub const NET_ERR_OPEN_WIN_IN_ERROR_AREA: u32 = 979; +pub const NET_ERR_TITLE_WIN_NOT_SUPPORT_MOVE: u32 = 980; +pub const NET_ERR_TITLE_WIN_NOT_SUPPORT_COVER: u32 = 981; +pub const NET_ERR_TITLE_WIN_NOT_SUPPORT_SPLIT: u32 = 982; +pub const NET_DVR_LED_WINDOWS_ALREADY_CLOSED: u32 = 983; +pub const NET_DVR_ERR_CLOSE_WINDOWS: u32 = 984; +pub const NET_DVR_ERR_MATRIX_LOOP_ABILITY: u32 = 985; +pub const NET_DVR_ERR_MATRIX_LOOP_TIME: u32 = 986; +pub const NET_DVR_ERR_LINKED_OUT_ABILITY: u32 = 987; +pub const NET_ERR_REACH_SCENE_MAX_NUM: u32 = 988; +pub const NET_ERR_SCENE_MEM_NOT_ENOUGH: u32 = 989; +pub const NET_ERR_RESOLUTION_NOT_SUPPORT_ODD_VOUT: u32 = 990; +pub const NET_ERR_RESOLUTION_NOT_SUPPORT_EVEN_VOUT: u32 = 991; +pub const NET_DVR_CANCEL_WND_OPENKEEP_ATTR_FIRST: u32 = 992; +pub const NET_SDK_LED_MODE_NOT_SUPPORT_SPLIT: u32 = 993; +pub const NET_ERR_VOICETALK_ONLY_SUPPORT_ONE_TALK: u32 = 994; +pub const NET_ERR_WND_POSITION_ADJUSTED: u32 = 995; +pub const NET_SDK_ERR_STARTTIME_CANNOT_LESSTHAN_CURTIME: u32 = 996; +pub const NET_SDK_ERR_NEED_ADJUST_PLAN: u32 = 997; +pub const NET_ERR_UnitConfig_Failed: u32 = 998; +pub const XML_ABILITY_NOTSUPPORT: u32 = 1000; +pub const XML_ANALYZE_NOENOUGH_BUF: u32 = 1001; +pub const XML_ANALYZE_FIND_LOCALXML_ERROR: u32 = 1002; +pub const XML_ANALYZE_LOAD_LOCALXML_ERROR: u32 = 1003; +pub const XML_NANLYZE_DVR_DATA_FORMAT_ERROR: u32 = 1004; +pub const XML_ANALYZE_TYPE_ERROR: u32 = 1005; +pub const XML_ANALYZE_XML_NODE_ERROR: u32 = 1006; +pub const XML_INPUT_PARAM_ERROR: u32 = 1007; +pub const NET_DVR_ERR_RETURNED_XML_DATA: u32 = 1008; +pub const NET_ERR_LEDAREA_EXIST_WINDOW: u32 = 1051; +pub const NET_ERR_AUDIO_EXIST: u32 = 1052; +pub const NET_ERR_MATERIAL_NAME_EXIST: u32 = 1053; +pub const NET_ERR_MATERIAL_APPROVE_STATE: u32 = 1054; +pub const NET_ERR_DATAHD_SIGNAL_FORMAT: u32 = 1055; +pub const NET_ERR_SCENE_SWITCHING: u32 = 1056; +pub const NER_ERR_DATA_TRANSFER: u32 = 1057; +pub const NET_ERR_DATA_RESTORE: u32 = 1058; +pub const NET_ERR_CHECK_NOT_ENABLE: u32 = 1059; +pub const NET_ERR_AREA_OFFLINE: u32 = 1060; +pub const NET_ERR_SCREEN_TYPE: u32 = 1061; +pub const NET_ERR_MIN_OPERATE_UNIT: u32 = 1062; +pub const NET_ERR_MAINHD_NOT_BACKUP: u32 = 1063; +pub const NET_ERR_ONE_BACKUP_HD: u32 = 1064; +pub const NET_ERR_CONNECT_SUB_SYSTEM_ABNORMAL: u32 = 1065; +pub const NET_ERR_SERIAL_PORT_VEST: u32 = 1066; +pub const NET_ERR_BLOCKLIST_FULL: u32 = 1067; +pub const NET_ERR_NOT_MATCH_SOURCE: u32 = 1068; +pub const NET_ERR_CLOCK_VIRTUAL_LED_FULL: u32 = 1069; +pub const NET_ERR_MAX_WIN_SIGNAL_LOOP_NUM: u32 = 1070; +pub const NET_ERR_RESOLUTION_NO_MATCH_FRAME: u32 = 1071; +pub const NET_ERR_NOT_UPDATE_LOW_VERSION: u32 = 1072; +pub const NET_ERR_NO_CUSTOM_TO_UPDATE: u32 = 1073; +pub const NET_ERR_CHAN_RESOLUTION_NOT_SUPPORT_SPLIT: u32 = 1074; +pub const NET_ERR_HIGH_DEFINITION_NOT_SUPPORT_SPLIT: u32 = 1075; +pub const NET_ERR_MIRROR_IMAGE_BY_VIDEO_WALL: u32 = 1076; +pub const NET_ERR_MAX_OSD_FONT_SIZE: u32 = 1077; +pub const NET_ERR_HIGH_DEFINITION_NOT_SUPPORT_VIDEO_SET: u32 = 1078; +pub const NET_ERR_TILE_MODE_NOT_SUPPORT_JOINT: u32 = 1079; +pub const NET_ERR_ADD_AUDIO_MATRIX_FAILED: u32 = 1080; +pub const NET_ERR_ONE_VIRTUAL_LED_AREA_BIND_ONE_AUDIO_AREA: u32 = 1081; +pub const NET_ERR_NAT_NOT_MODIFY_SERVER_NETWORK_PARAM: u32 = 1082; +pub const NET_ERR_ORIGINAL_CHECH_DATA_ERROR: u32 = 1083; +pub const NET_ERR_INPUT_BOARD_SPLICED_IN_DIFFERENT_NETWORKAREAS: u32 = 1084; +pub const NET_ERR_SPLICINGSOURCE_ONWALL_IN_DIFFERENT_NETWORKAREAS: u32 = 1085; +pub const NET_ERR_ONWALL_OUTPUTBOARD_MODIFY_NETWORKAREAS: u32 = 1086; +pub const NET_ERR_LAN_AND_WAN_CANNOT_SAME_NET_SEGMENT: u32 = 1087; +pub const NET_ERR_USERNAME_REPETITIVE: u32 = 1088; +pub const NET_ERR_ASSOCIATED_SAMEWALL_IN_DIFFERENT_NETWORKAREAS: u32 = 1089; +pub const NET_ERR_BASEMAP_ROAM_IN_LED_AREA: u32 = 1090; +pub const NET_ERR_VIRTUAL_LED_NOT_SUPPORT_4K_OUTPUT: u32 = 1091; +pub const NET_ERR_BASEMAP_NOT_SUPPORT_4K_OUTPUT: u32 = 1092; +pub const NET_ERR_MIN_BLOCK_IN_VIRTUAL_LED_AND_OUTPUT: u32 = 1093; +pub const NET_ERR_485FIlE_VERSION_INVALID: u32 = 1094; +pub const NET_ERR_485FIlE_CHECK_ERROR: u32 = 1095; +pub const NET_ERR_485FIlE_ABNORMAL_SIZE: u32 = 1096; +pub const NET_ERR_MODIFY_SUBBOARD_NETCFG_IN_NAT: u32 = 1097; +pub const NET_ERR_OSD_CONTENT_WITH_ILLEGAL_CHARACTERS: u32 = 1098; +pub const NET_ERR_NON_SLAVE_DEVICE_INSERT_SYNC_LINE: u32 = 1099; +pub const NET_ERR_PLT_USERID: u32 = 1100; +pub const NET_ERR_TRANS_CHAN_START: u32 = 1101; +pub const NET_ERR_DEV_UPGRADING: u32 = 1102; +pub const NET_ERR_MISMATCH_UPGRADE_PACK_TYPE: u32 = 1103; +pub const NET_ERR_DEV_FORMATTING: u32 = 1104; +pub const NET_ERR_MISMATCH_UPGRADE_PACK_VERSION: u32 = 1105; +pub const NET_ERR_PT_LOCKED: u32 = 1106; +pub const NET_DVR_LOGO_OVERLAY_WITHOUT_UPLOAD_PIC: u32 = 1110; +pub const NET_DVR_ERR_ILLEGAL_VERIFICATION_CODE: u32 = 1111; +pub const NET_DVR_ERR_LACK_VERIFICATION_CODE: u32 = 1112; +pub const NET_DVR_ERR_FORBIDDEN_IP: u32 = 1113; +pub const NET_DVR_ERR_UNLOCKPTZ: u32 = 1114; +pub const NET_DVR_ERR_COUNTAREA_LARGE: u32 = 1116; +pub const NET_DVR_ERR_LABEL_ID_EXCEED: u32 = 1117; +pub const NET_DVR_ERR_LABEL_TYPE: u32 = 1118; +pub const NET_DVR_ERR_LABEL_FULL: u32 = 1119; +pub const NET_DVR_ERR_LABEL_DISABLED: u32 = 1120; +pub const NET_DVR_ERR_DOME_PT_TRANS_TO_DOME_XY: u32 = 1121; +pub const NET_DVR_ERR_DOME_PT_TRANS_TO_PANORAMA_XY: u32 = 1122; +pub const NET_DVR_ERR_PANORAMA_XY_TRANS_TO_DOME_PT: u32 = 1123; +pub const NET_DVR_ERR_SCENE_DUR_TIME_LESS_THAN_INTERV_TIME: u32 = 1124; +pub const NET_DVR_ERR_HTTP_BKN_EXCEED_ONE: u32 = 1125; +pub const NET_DVR_ERR_DELETING_FAILED_TURN_OFF_HTTPS_ESDK_WEBSOCKETS_FIRST: u32 = 1126; +pub const NET_DVR_ERR_DELETING_FAILED_TURN_OFF_HTTPS_ESDK_FIRST: u32 = 1127; +pub const NET_DVR_ERR_PTZ_OCCUPIED_PRIORITY: u32 = 1128; +pub const NET_DVR_ERR_INCORRECT_VIDEOAUDIO_ID: u32 = 1129; +pub const NET_DVR_ERR_REPETITIONTIME_OVER_MAXIMUM: u32 = 1130; +pub const NET_DVR_ERR_FORMATTING_FAILED: u32 = 1131; +pub const NET_DVR_ERR_ENCRYPTED_FORMATTING_FAILED: u32 = 1132; +pub const NET_DVR_ERR_WRONG_PASSWORD: u32 = 1133; +pub const NET_DVR_ERR_EXPOSURE_SYNC: u32 = 1134; +pub const NET_ERR_SEARCHING_MODULE: u32 = 1201; +pub const NET_ERR_REGISTERING_MODULE: u32 = 1202; +pub const NET_ERR_GETTING_ZONES: u32 = 1203; +pub const NET_ERR_GETTING_TRIGGERS: u32 = 1204; +pub const NET_ERR_ARMED_STATUS: u32 = 1205; +pub const NET_ERR_PROGRAM_MODE_STATUS: u32 = 1206; +pub const NET_ERR_WALK_TEST_MODE_STATUS: u32 = 1207; +pub const NET_ERR_BYPASS_STATUS: u32 = 1208; +pub const NET_ERR_DISABLED_MODULE_STATUS: u32 = 1209; +pub const NET_ERR_NOT_SUPPORT_OPERATE_ZONE: u32 = 1210; +pub const NET_ERR_NOT_SUPPORT_MOD_MODULE_ADDR: u32 = 1211; +pub const NET_ERR_UNREGISTERED_MODULE: u32 = 1212; +pub const NET_ERR_PUBLIC_SUBSYSTEM_ASSOCIATE_SELF: u32 = 1213; +pub const NET_ERR_EXCEEDS_ASSOCIATE_SUBSYSTEM_NUM: u32 = 1214; +pub const NET_ERR_BE_ASSOCIATED_BY_PUBLIC_SUBSYSTEM: u32 = 1215; +pub const NET_ERR_ZONE_FAULT_STATUS: u32 = 1216; +pub const NET_ERR_SAME_EVENT_TYPE: u32 = 1217; +pub const NET_ERR_ZONE_ALARM_STATUS: u32 = 1218; +pub const NET_ERR_EXPANSION_BUS_SHORT_CIRCUIT: u32 = 1219; +pub const NET_ERR_PWD_CONFLICT: u32 = 1220; +pub const NET_ERR_DETECTOR_GISTERED_BY_OTHER_ZONE: u32 = 1221; +pub const NET_ERR_DETECTOR_GISTERED_BY_OTHER_PU: u32 = 1222; +pub const NET_ERR_DETECTOR_DISCONNECT: u32 = 1223; +pub const NET_ERR_CALL_BUSY: u32 = 1224; +pub const NET_DVR_ERR_ZONE_TAMPER_STAUS: u32 = 1225; +pub const NET_DVR_ERR_WIRELESS_DEV_REGISTER: u32 = 1226; +pub const NET_DVR_ERR_WIRELESS_DEV_ADDED: u32 = 1227; +pub const NET_DVR_ERR_WIRELESS_DEV_OFFLINE: u32 = 1228; +pub const NET_DVR_ERR_WIRELESS_DEV_TAMPER_STATUS: u32 = 1229; +pub const NET_DVR_ERR_GPRS_PHONE_CONFLICT: u32 = 1230; +pub const NET_ERR_INIT_PASSWORD_NOT_MODIFY: u32 = 1231; +pub const NET_ERR_USER_DISABLED: u32 = 1232; +pub const NET_ERR_DEVICE_DEBUGGING: u32 = 1233; +pub const NET_ERR_GET_ALL_RETURN_OVER: u32 = 1300; +pub const NET_ERR_RESOURCE_USING: u32 = 1301; +pub const NET_ERR_FILE_SIZE_OVERLIMIT: u32 = 1302; +pub const NET_ERR_MATERIAL_NAME: u32 = 1303; +pub const NET_ERR_MATERIAL_NAME_LEN: u32 = 1304; +pub const NET_ERR_MATERIAL_REMARK: u32 = 1305; +pub const NET_ERR_MATERIAL_REMARK_LEN: u32 = 1306; +pub const NET_ERR_MATERIAL_SHARE_PROPERTY: u32 = 1307; +pub const NET_ERR_UNSUPPORT_MATERIAL_TYPE: u32 = 1308; +pub const NET_ERR_MATERIAL_NOT_EXIST: u32 = 1309; +pub const NET_ERR_READ_FROM_DISK: u32 = 1310; +pub const NET_ERR_WRITE_TO_DISK: u32 = 1311; +pub const NET_ERR_WRITE_DATA_BASE: u32 = 1312; +pub const NET_ERR_NO_APPROVED_NOT_EXPORT: u32 = 1313; +pub const NET_ERR_MATERIAL_EXCEPTION: u32 = 1314; +pub const NET_ERR_NO_MISINFO: u32 = 1315; +pub const NET_ERR_LAN_NOT_SUP_DHCP_CLIENT_CONFIGURATION: u32 = 1316; +pub const NET_ERR_VIDEOWALL_OPTPORT_RESOLUTION_INCONSISTENT: u32 = 1317; +pub const NET_ERR_VIDEOWALL_OPTPORT_RESOLUTION_INCONSISTENT_UNBIND_OPTPORT_FIRST: u32 = 1318; +pub const NET_ERR_FOUR_K_OUTPUT_RESOLUTION_UNSUPPORT_NINE_TO_SIXTEEN_SPLIT_SCREEN: u32 = 1319; +pub const NET_ERR_SIGNAL_SOURCE_UNSUPPORT_CUSTOM_RESOLUTION: u32 = 1320; +pub const NET_ERR_DVI_UNSUPPORT_FOURK_OUTPUT_RESOLUTION: u32 = 1321; +pub const NET_ERR_BNC_UNSUPPORT_SOURCE_CROPPING: u32 = 1322; +pub const NET_ERR_OUTPUT_NOT_SUPPORT_VIDEOWALL_RESOLUTION: u32 = 1323; +pub const NET_ERR_MAX_SCREEN_CTRL_NUM: u32 = 1351; +pub const NET_ERR_FILE_NOT_EXIST: u32 = 1352; +pub const NET_ERR_THUMBNAIL_NOT_EXIST: u32 = 1353; +pub const NET_ERR_DEV_OPEN_FILE_FAIL: u32 = 1354; +pub const NET_ERR_SERVER_READ_FILE_FAIL: u32 = 1355; +pub const NET_ERR_FILE_SIZE: u32 = 1356; +pub const NET_ERR_FILE_NAME: u32 = 1357; +pub const NET_ERR_BROADCAST_BUSY: u32 = 1358; +pub const NET_DVR_ERR_LANENUM_EXCEED: u32 = 1400; +pub const NET_DVR_ERR_PRAREA_EXCEED: u32 = 1401; +pub const NET_DVR_ERR_LIGHT_PARAM: u32 = 1402; +pub const NET_DVR_ERR_LANE_LINE_INVALID: u32 = 1403; +pub const NET_DVR_ERR_STOP_LINE_INVALID: u32 = 1404; +pub const NET_DVR_ERR_LEFTORRIGHT_LINE_INVALID: u32 = 1405; +pub const NET_DVR_ERR_LANE_NO_REPEAT: u32 = 1406; +pub const NET_DVR_ERR_PRAREA_INVALID: u32 = 1407; +pub const NET_DVR_ERR_LIGHT_NUM_EXCEED: u32 = 1408; +pub const NET_DVR_ERR_SUBLIGHT_NUM_INVALID: u32 = 1409; +pub const NET_DVR_ERR_LIGHT_AREASIZE_INVALID: u32 = 1410; +pub const NET_DVR_ERR_LIGHT_COLOR_INVALID: u32 = 1411; +pub const NET_DVR_ERR_LIGHT_DIRECTION_INVALID: u32 = 1412; +pub const NET_DVR_ERR_LACK_IOABLITY: u32 = 1413; +pub const NET_DVR_ERR_FTP_PORT: u32 = 1414; +pub const NET_DVR_ERR_FTP_CATALOGUE: u32 = 1415; +pub const NET_DVR_ERR_FTP_UPLOAD_TYPE: u32 = 1416; +pub const NET_DVR_ERR_FLASH_PARAM_WRITE: u32 = 1417; +pub const NET_DVR_ERR_FLASH_PARAM_READ: u32 = 1418; +pub const NET_DVR_ERR_PICNAME_DELIMITER: u32 = 1419; +pub const NET_DVR_ERR_PICNAME_ITEM: u32 = 1420; +pub const NET_DVR_ERR_PLATE_RECOGNIZE_TYPE: u32 = 1421; +pub const NET_DVR_ERR_CAPTURE_TIMES: u32 = 1422; +pub const NET_DVR_ERR_LOOP_DISTANCE: u32 = 1423; +pub const NET_DVR_ERR_LOOP_INPUT_STATUS: u32 = 1424; +pub const NET_DVR_ERR_RELATE_IO_CONFLICT: u32 = 1425; +pub const NET_DVR_ERR_INTERVAL_TIME: u32 = 1426; +pub const NET_DVR_ERR_SIGN_SPEED: u32 = 1427; +pub const NET_DVR_ERR_PIC_FLIP: u32 = 1428; +pub const NET_DVR_ERR_RELATE_LANE_NUMBER: u32 = 1429; +pub const NET_DVR_ERR_TRIGGER_MODE: u32 = 1430; +pub const NET_DVR_ERR_DELAY_TIME: u32 = 1431; +pub const NET_DVR_ERR_EXCEED_RS485_COUNT: u32 = 1432; +pub const NET_DVR_ERR_RADAR_TYPE: u32 = 1433; +pub const NET_DVR_ERR_RADAR_ANGLE: u32 = 1434; +pub const NET_DVR_ERR_RADAR_SPEED_VALID_TIME: u32 = 1435; +pub const NET_DVR_ERR_RADAR_LINE_CORRECT: u32 = 1436; +pub const NET_DVR_ERR_RADAR_CONST_CORRECT: u32 = 1437; +pub const NET_DVR_ERR_RECORD_PARAM: u32 = 1438; +pub const NET_DVR_ERR_LIGHT_WITHOUT_COLOR_AND_DIRECTION: u32 = 1439; +pub const NET_DVR_ERR_LIGHT_WITHOUT_DETECTION_REGION: u32 = 1440; +pub const NET_DVR_ERR_RECOGNIZE_PROVINCE_PARAM: u32 = 1441; +pub const NET_DVR_ERR_SPEED_TIMEOUT: u32 = 1442; +pub const NET_DVR_ERR_NTP_TIMEZONE: u32 = 1443; +pub const NET_DVR_ERR_NTP_INTERVAL_TIME: u32 = 1444; +pub const NET_DVR_ERR_NETWORK_CARD_NUM: u32 = 1445; +pub const NET_DVR_ERR_DEFAULT_ROUTE: u32 = 1446; +pub const NET_DVR_ERR_BONDING_WORK_MODE: u32 = 1447; +pub const NET_DVR_ERR_SLAVE_CARD: u32 = 1448; +pub const NET_DVR_ERR_PRIMARY_CARD: u32 = 1449; +pub const NET_DVR_ERR_DHCP_PPOE_WORK: u32 = 1450; +pub const NET_DVR_ERR_NET_INTERFACE: u32 = 1451; +pub const NET_DVR_ERR_MTU: u32 = 1452; +pub const NET_DVR_ERR_NETMASK: u32 = 1453; +pub const NET_DVR_ERR_IP_INVALID: u32 = 1454; +pub const NET_DVR_ERR_MULTICAST_IP_INVALID: u32 = 1455; +pub const NET_DVR_ERR_GATEWAY_INVALID: u32 = 1456; +pub const NET_DVR_ERR_DNS_INVALID: u32 = 1457; +pub const NET_DVR_ERR_ALARMHOST_IP_INVALID: u32 = 1458; +pub const NET_DVR_ERR_IP_CONFLICT: u32 = 1459; +pub const NET_DVR_ERR_NETWORK_SEGMENT: u32 = 1460; +pub const NET_DVR_ERR_NETPORT: u32 = 1461; +pub const NET_DVR_ERR_PPPOE_NOSUPPORT: u32 = 1462; +pub const NET_DVR_ERR_DOMAINNAME_NOSUPPORT: u32 = 1463; +pub const NET_DVR_ERR_NO_SPEED: u32 = 1464; +pub const NET_DVR_ERR_IOSTATUS_INVALID: u32 = 1465; +pub const NET_DVR_ERR_BURST_INTERVAL_INVALID: u32 = 1466; +pub const NET_DVR_ERR_RESERVE_MODE: u32 = 1467; +pub const NET_DVR_ERR_LANE_NO: u32 = 1468; +pub const NET_DVR_ERR_COIL_AREA_TYPE: u32 = 1469; +pub const NET_DVR_ERR_TRIGGER_AREA_PARAM: u32 = 1470; +pub const NET_DVR_ERR_SPEED_LIMIT_PARAM: u32 = 1471; +pub const NET_DVR_ERR_LANE_PROTOCOL_TYPE: u32 = 1472; +pub const NET_DVR_ERR_INTERVAL_TYPE: u32 = 1473; +pub const NET_DVR_ERR_INTERVAL_DISTANCE: u32 = 1474; +pub const NET_DVR_ERR_RS485_ASSOCIATE_DEVTYPE: u32 = 1475; +pub const NET_DVR_ERR_RS485_ASSOCIATE_LANENO: u32 = 1476; +pub const NET_DVR_ERR_LANENO_ASSOCIATE_MULTIRS485: u32 = 1477; +pub const NET_DVR_ERR_LIGHT_DETECTION_REGION: u32 = 1478; +pub const NET_DVR_ERR_DN2D_NOSUPPORT: u32 = 1479; +pub const NET_DVR_ERR_IRISMODE_NOSUPPORT: u32 = 1480; +pub const NET_DVR_ERR_WB_NOSUPPORT: u32 = 1481; +pub const NET_DVR_ERR_IO_EFFECTIVENESS: u32 = 1482; +pub const NET_DVR_ERR_LIGHTNO_MAX: u32 = 1483; +pub const NET_DVR_ERR_LIGHTNO_CONFLICT: u32 = 1484; +pub const NET_DVR_ERR_CANCEL_LINE: u32 = 1485; +pub const NET_DVR_ERR_STOP_LINE: u32 = 1486; +pub const NET_DVR_ERR_RUSH_REDLIGHT_LINE: u32 = 1487; +pub const NET_DVR_ERR_IOOUTNO_MAX: u32 = 1488; +pub const NET_DVR_ERR_IOOUTNO_AHEADTIME_MAX: u32 = 1489; +pub const NET_DVR_ERR_IOOUTNO_IOWORKTIME: u32 = 1490; +pub const NET_DVR_ERR_IOOUTNO_FREQMULTI: u32 = 1491; +pub const NET_DVR_ERR_IOOUTNO_DUTYRATE: u32 = 1492; +pub const NET_DVR_ERR_VIDEO_WITH_EXPOSURE: u32 = 1493; +pub const NET_DVR_ERR_PLATE_BRIGHTNESS_WITHOUT_FLASHDET: u32 = 1494; +pub const NET_DVR_ERR_RECOGNIZE_TYPE_PARAM: u32 = 1495; +pub const NET_DVR_ERR_PALTE_RECOGNIZE_AREA_PARAM: u32 = 1496; +pub const NET_DVR_ERR_PORT_CONFLICT: u32 = 1497; +pub const NET_DVR_ERR_LOOP_IP: u32 = 1498; +pub const NET_DVR_ERR_DRIVELINE_SENSITIVE: u32 = 1499; +pub const NET_ERR_VQD_TIME_CONFLICT: u32 = 1500; +pub const NET_ERR_VQD_PLAN_NO_EXIST: u32 = 1501; +pub const NET_ERR_VQD_CHAN_NO_EXIST: u32 = 1502; +pub const NET_ERR_VQD_CHAN_MAX: u32 = 1503; +pub const NET_ERR_VQD_TASK_MAX: u32 = 1504; +pub const NET_SDK_GET_INPUTSTREAMCFG: u32 = 1551; +pub const NET_SDK_AUDIO_SWITCH_CONTROL: u32 = 1552; +pub const NET_SDK_GET_VIDEOWALLDISPLAYNO: u32 = 1553; +pub const NET_SDK_GET_ALLSUBSYSTEM_BASIC_INFO: u32 = 1554; +pub const NET_SDK_SET_ALLSUBSYSTEM_BASIC_INFO: u32 = 1555; +pub const NET_SDK_GET_AUDIO_INFO: u32 = 1556; +pub const NET_SDK_GET_MATRIX_STATUS_V50: u32 = 1557; +pub const NET_SDK_DELETE_MONITOR_INFO: u32 = 1558; +pub const NET_SDK_DELETE_CAMERA_INFO: u32 = 1559; +pub const NET_DVR_ERR_EXCEED_MAX_CAPTURE_TIMES: u32 = 1600; +pub const NET_DVR_ERR_REDAR_TYPE_CONFLICT: u32 = 1601; +pub const NET_DVR_ERR_LICENSE_PLATE_NULL: u32 = 1602; +pub const NET_DVR_ERR_WRITE_DATABASE: u32 = 1603; +pub const NET_DVR_ERR_LICENSE_EFFECTIVE_TIME: u32 = 1604; +pub const NET_DVR_ERR_PRERECORDED_STARTTIME_LONG: u32 = 1605; +pub const NET_DVR_ERR_TRIGGER_RULE_LINE: u32 = 1606; +pub const NET_DVR_ERR_LEFTRIGHT_TRIGGERLINE_NOTVERTICAL: u32 = 1607; +pub const NET_DVR_ERR_FLASH_LAMP_MODE: u32 = 1608; +pub const NET_DVR_ERR_ILLEGAL_SNAPSHOT_NUM: u32 = 1609; +pub const NET_DVR_ERR_ILLEGAL_DETECTION_TYPE: u32 = 1610; +pub const NET_DVR_ERR_POSITIVEBACK_TRIGGERLINE_HIGH: u32 = 1611; +pub const NET_DVR_ERR_MIXEDMODE_CAPTYPE_ALLTARGETS: u32 = 1612; +pub const NET_DVR_ERR_CARSIGNSPEED_GREATERTHAN_LIMITSPEED: u32 = 1613; +pub const NET_DVR_ERR_BIGCARSIGNSPEED_GREATERTHAN_LIMITSPEED: u32 = 1614; +pub const NET_DVR_ERR_BIGCARSIGNSPEED_GREATERTHAN_CARSIGNSPEED: u32 = 1615; +pub const NET_DVR_ERR_BIGCARLIMITSPEED_GREATERTHAN_CARLIMITSPEED: u32 = 1616; +pub const NET_DVR_ERR_BIGCARLOWSPEEDLIMIT_GREATERTHAN_CARLOWSPEEDLIMIT: u32 = 1617; +pub const NET_DVR_ERR_CARLIMITSPEED_GREATERTHAN_EXCEPHIGHSPEED: u32 = 1618; +pub const NET_DVR_ERR_BIGCARLIMITSPEED_GREATERTHAN_EXCEPHIGHSPEED: u32 = 1619; +pub const NET_DVR_ERR_STOPLINE_MORETHAN_TRIGGERLINE: u32 = 1620; +pub const NET_DVR_ERR_YELLOWLIGHTTIME_INVALID: u32 = 1621; +pub const NET_DVR_ERR_TRIGGERLINE1_FOR_NOT_YIELD_TO_PEDESTRIAN_CANNOT_EXCEED_TRIGGERLINE2: u32 = + 1622; +pub const NET_DVR_ERR_TRIGGERLINE2_FOR_NOT_YIELD_TO_PEDESTRIAN_CANNOT_EXCEED_TRIGGERLINE1: u32 = + 1623; +pub const NET_ERR_TIME_OVERLAP: u32 = 1900; +pub const NET_ERR_HOLIDAY_PLAN_OVERLAP: u32 = 1901; +pub const NET_ERR_CARDNO_NOT_SORT: u32 = 1902; +pub const NET_ERR_CARDNO_NOT_EXIST: u32 = 1903; +pub const NET_ERR_ILLEGAL_CARDNO: u32 = 1904; +pub const NET_ERR_ZONE_ALARM: u32 = 1905; +pub const NET_ERR_ZONE_OPERATION_NOT_SUPPORT: u32 = 1906; +pub const NET_ERR_INTERLOCK_ANTI_CONFLICT: u32 = 1907; +pub const NET_ERR_DEVICE_CARD_FULL: u32 = 1908; +pub const NET_ERR_HOLIDAY_GROUP_DOWNLOAD: u32 = 1909; +pub const NET_ERR_LOCAL_CONTROL_OFF: u32 = 1910; +pub const NET_ERR_LOCAL_CONTROL_DISADD: u32 = 1911; +pub const NET_ERR_LOCAL_CONTROL_HASADD: u32 = 1912; +pub const NET_ERR_LOCAL_CONTROL_DOORNO_CONFLICT: u32 = 1913; +pub const NET_ERR_LOCAL_CONTROL_COMMUNICATION_FAIL: u32 = 1914; +pub const NET_ERR_OPERAND_INEXISTENCE: u32 = 1915; +pub const NET_ERR_LOCAL_CONTROL_OVER_LIMIT: u32 = 1916; +pub const NET_ERR_DOOR_OVER_LIMIT: u32 = 1917; +pub const NET_ERR_ALARM_OVER_LIMIT: u32 = 1918; +pub const NET_ERR_LOCAL_CONTROL_ADDRESS_INCONFORMITY_TYPE: u32 = 1919; +pub const NET_ERR_NOT_SUPPORT_ONE_MORE_CARD: u32 = 1920; +pub const NET_ERR_DELETE_NO_EXISTENCE_FACE: u32 = 1921; +pub const NET_ERR_DOOR_SPECIAL_PASSWORD_REPEAT: u32 = 1922; +pub const NET_ERR_AUTH_CODE_REPEAT: u32 = 1923; +pub const NET_ERR_DEPLOY_EXCEED_MAX: u32 = 1924; +pub const NET_ERR_NOT_SUPPORT_DEL_FP_BY_ID: u32 = 1925; +pub const NET_ERR_TIME_RANGE: u32 = 1926; +pub const NET_ERR_CAPTURE_TIMEOUT: u32 = 1927; +pub const NET_ERR_LOW_SCORE: u32 = 1928; +pub const NET_ERR_OFFLINE_CAPTURING: u32 = 1929; +pub const NET_DVR_ERR_OUTDOOR_COMMUNICATION: u32 = 1950; +pub const NET_DVR_ERR_ROOMNO_UNDEFINED: u32 = 1951; +pub const NET_DVR_ERR_NO_CALLING: u32 = 1952; +pub const NET_DVR_ERR_RINGING: u32 = 1953; +pub const NET_DVR_ERR_IS_CALLING_NOW: u32 = 1954; +pub const NET_DVR_ERR_LOCK_PASSWORD_WRONG: u32 = 1955; +pub const NET_DVR_ERR_CONTROL_LOCK_FAILURE: u32 = 1956; +pub const NET_DVR_ERR_CONTROL_LOCK_OVERTIME: u32 = 1957; +pub const NET_DVR_ERR_LOCK_DEVICE_BUSY: u32 = 1958; +pub const NET_DVR_ERR_UNOPEN_REMOTE_LOCK_FUNCTION: u32 = 1959; +pub const NET_DVR_ERR_FILE_NOT_COMPLETE: u32 = 2100; +pub const NET_DVR_ERR_IPC_EXIST: u32 = 2101; +pub const NET_DVR_ERR_ADD_IPC: u32 = 2102; +pub const NET_DVR_ERR_OUT_OF_RES: u32 = 2103; +pub const NET_DVR_ERR_CONFLICT_TO_LOCALIP: u32 = 2104; +pub const NET_DVR_ERR_IP_SET: u32 = 2105; +pub const NET_DVR_ERR_PORT_SET: u32 = 2106; +pub const NET_ERR_WAN_NOTSUPPORT: u32 = 2107; +pub const NET_ERR_MUTEX_FUNCTION: u32 = 2108; +pub const NET_ERR_QUESTION_CONFIGNUM: u32 = 2109; +pub const NET_ERR_FACECHAN_NORESOURCE: u32 = 2110; +pub const NET_ERR_DATA_CALLBACK: u32 = 2111; +pub const NET_ERR_ATM_VCA_CHAN_IS_RELATED: u32 = 2112; +pub const NET_ERR_ATM_VCA_CHAN_IS_OVERLAPED: u32 = 2113; +pub const NET_ERR_FACE_CHAN_UNOVERLAP_EACH_OTHER: u32 = 2114; +pub const NET_ERR_ACHIEVE_MAX_CHANNLE_LIMIT: u32 = 2115; +pub const NET_DVR_SMD_ENCODING_NORESOURSE: u32 = 2116; +pub const NET_DVR_SMD_DECODING_NORESOURSE: u32 = 2117; +pub const NET_DVR_FACELIB_DATA_PROCESSING: u32 = 2118; +pub const NET_DVR_ERR_LARGE_TIME_DIFFRENCE: u32 = 2119; +pub const NET_DVR_NO_SUPPORT_WITH_PLAYBACK: u32 = 2120; +pub const NET_DVR_CHANNEL_NO_SUPPORT_WITH_SMD: u32 = 2121; +pub const NET_DVR_CHANNEL_NO_SUPPORT_WITH_FD: u32 = 2122; +pub const NET_DVR_ILLEGAL_PHONE_NUMBER: u32 = 2123; +pub const NET_DVR_ILLEGAL_CERITIFICATE_NUMBER: u32 = 2124; +pub const NET_DVR_ERR_CHANNEL_RESOLUTION_NO_SUPPORT: u32 = 2125; +pub const NET_DVR_ERR_CHANNEL_COMPRESSION_NO_SUPPORT: u32 = 2126; +pub const NET_DVR_ERR_CLUSTER_DEVICE_TOO_LESS: u32 = 2127; +pub const NET_DVR_ERR_CLUSTER_DEL_DEVICE_CM_PLAYLOAD: u32 = 2128; +pub const NET_DVR_ERR_CLUSTER_DEVNUM_OVER_UPPER_LIMIT: u32 = 2129; +pub const NET_DVR_ERR_CLUSTER_DEVICE_TYPE_INCONFORMITY: u32 = 2130; +pub const NET_DVR_ERR_CLUSTER_DEVICE_VERSION_INCONFORMITY: u32 = 2131; +pub const NET_DVR_ERR_CLUSTER_IP_CONFLICT: u32 = 2132; +pub const NET_DVR_ERR_CLUSTER_IP_INVALID: u32 = 2133; +pub const NET_DVR_ERR_CLUSTER_PORT_CONFLICT: u32 = 2134; +pub const NET_DVR_ERR_CLUSTER_PORT_INVALID: u32 = 2135; +pub const NET_DVR_ERR_CLUSTER_USERNAEM_OR_PASSWORD_INVALID: u32 = 2136; +pub const NET_DVR_ERR_CLUSTER_DEVICE_ALREADY_EXIST: u32 = 2137; +pub const NET_DVR_ERR_CLUSTER_DEVICE_NOT_EXIST: u32 = 2138; +pub const NET_DVR_ERR_CLUSTER_NON_CLUSTER_MODE: u32 = 2139; +pub const NET_DVR_ERR_CLUSTER_IP_NOT_SAME_LAN: u32 = 2140; +pub const NET_DVR_ERR_CAPTURE_PACKAGE_FAILED: u32 = 2141; +pub const NET_DVR_ERR_CAPTURE_PACKAGE_PROCESSING: u32 = 2142; +pub const NET_DVR_ERR_SAFETY_HELMET_NO_RESOURCE: u32 = 2143; +pub const NET_DVR_NO_SUPPORT_WITH_ABSTRACT: u32 = 2144; +pub const NET_DVR_ERR_TAPE_LIB_NEED_STOP_ARCHIVE: u32 = 2145; +pub const NET_DVR_INSUFFICIENT_DEEP_LEARNING_RESOURCES: u32 = 2146; +pub const NET_DVR_ERR_IDENTITY_KEY: u32 = 2147; +pub const NET_DVR_MISSING_IDENTITY_KEY: u32 = 2148; +pub const NET_DVR_NO_SUPPORT_WITH_PERSON_DENSITY_DETECT: u32 = 2149; +pub const NET_DVR_IPC_RESOLUTION_OVERFLOW: u32 = 2150; +pub const NET_DVR_IPC_BITRATE_OVERFLOW: u32 = 2151; +pub const NET_DVR_ERR_INVALID_TASKID: u32 = 2152; +pub const NET_DVR_PANEL_MODE_NOT_CONFIG: u32 = 2153; +pub const NET_DVR_NO_HUMAN_ENGINES_RESOURCE: u32 = 2154; +pub const NET_DVR_ERR_TASK_NUMBER_OVERFLOW: u32 = 2155; +pub const NET_DVR_ERR_COLLISION_TIME_OVERFLOW: u32 = 2156; +pub const NET_DVR_ERR_CAPTURE_PACKAGE_NO_USB: u32 = 2157; +pub const NET_DVR_ERR_NO_SET_SECURITY_EMAIL: u32 = 2158; +pub const NET_DVR_ERR_EVENT_NOTSUPPORT: u32 = 2159; +pub const NET_DVR_ERR_PASSWORD_FORMAT: u32 = 2160; +pub const NET_DVR_ACCESS_FRONT_DEVICE_PARAM_FAILURE: u32 = 2161; +pub const NET_DVR_ACCESS_FRONT_DEVICE_STREAM_FAILURE: u32 = 2162; +pub const NET_DVR_ERR_USERNAME_FORMAT: u32 = 2163; +pub const NET_DVR_ERR_UNOPENED_HIGH_RESOLUTION_MODE: u32 = 2164; +pub const NET_DVR_ERR_TOO_SMALL_QUATO: u32 = 2165; +pub const NET_DVR_ERR_EMAIL_FORMAT: u32 = 2166; +pub const NET_DVR_ERR_SECURITY_CODE_FORMAT: u32 = 2167; +pub const NET_DVR_PD_SPACE_TOO_SMALL: u32 = 2168; +pub const NET_DVR_PD_NUM_TOO_BIG: u32 = 2169; +pub const NET_DVR_ERR_USB_IS_FULL: u32 = 2170; +pub const NET_DVR_EXCEED_MAX_SMD_TYPE: u32 = 2171; +pub const NET_DVR_CHANNEL_NO_SUPPORT_WITH_BEHAVIOR: u32 = 2172; +pub const NET_DVR_NO_BEHAVIOR_ENGINES_RESOURCE: u32 = 2173; +pub const NET_DVR_NO_RETENTION_ENGINES_RESOURCE: u32 = 2174; +pub const NET_DVR_NO_LEAVE_POSITION_ENGINES_RESOURCE: u32 = 2175; +pub const NET_DVR_NO_PEOPLE_NUM_CHANGE_ENGINES_RESOURCE: u32 = 2176; +pub const NET_DVR_PANEL_MODE_NUM_OVER_LIMIT: u32 = 2177; +pub const NET_DVR_SURROUND_MODE_NUM_OVER_LIMIT: u32 = 2178; +pub const NET_DVR_FACE_MODE_NUM_OVER_LIMIT: u32 = 2179; +pub const NET_DVR_SAFETYCABIN_MODE_NUM_OVER_LIMIT: u32 = 2180; +pub const NET_DVR_DETECT_REGION_RANGE_INVALID: u32 = 2181; +pub const NET_DVR_CHANNEL_CAPTURE_PICTURE_FAILURE: u32 = 2182; +pub const NET_DVR_VCACHAN_IS_NORESOURCE: u32 = 2183; +pub const NET_DVR_IPC_NUM_REACHES_LIMIT: u32 = 2184; +pub const NET_DVR_IOT_NUM_REACHES_LIMIT: u32 = 2185; +pub const NET_DVR_IOT_CHANNEL_DEVICE_EXIST: u32 = 2186; +pub const NET_DVR_IOT_CHANNEL_DEVICE_NOT_EXIST: u32 = 2187; +pub const NET_DVR_INVALID_IOT_PROTOCOL_TYPE: u32 = 2188; +pub const NET_DVR_INVALID_EZVIZ_SECRET_KEY: u32 = 2189; +pub const NET_DVR_DUPLICATE_IOT_DEVICE: u32 = 2190; +pub const NET_DVR_SADP_MODIFY_FALIURE: u32 = 2191; +pub const NET_DVR_IPC_NETWORK_ABNORMAL: u32 = 2192; +pub const NET_DVR_IPC_PASSWORD_ERROR: u32 = 2193; +pub const NET_DVR_ERROR_IPC_TYPE: u32 = 2194; +pub const NET_DVR_ERROR_IPC_LIST_NOT_EMPTY: u32 = 2195; +pub const NET_DVR_ERROR_IPC_LIST_NOT_MATCH_PAIRING: u32 = 2196; +pub const NET_DVR_ERROR_IPC_BAD_LANGUAGE: u32 = 2197; +pub const NET_DVR_ERROR_IPC_IS_LOCKING: u32 = 2198; +pub const NET_DVR_ERROR_IPC_NOT_ACTIVATED: u32 = 2199; +pub const NET_DVR_FIELD_CODING_NOT_SUPPORT: u32 = 2200; +pub const NET_DVR_ERROR_H323_NOT_SUPPORT_H265: u32 = 2201; +pub const NET_DVR_ERROR_EXPOSURE_TIME_TOO_BIG_IN_MODE_P: u32 = 2202; +pub const NET_DVR_ERROR_EXPOSURE_TIME_TOO_BIG_IN_MODE_N: u32 = 2203; +pub const NET_DVR_ERROR_PING_PROCESSING: u32 = 2204; +pub const NET_DVR_ERROR_PING_NOT_START: u32 = 2205; +pub const NET_DVR_ERROR_NEED_DOUBLE_VERIFICATION: u32 = 2206; +pub const NET_DVR_NO_DOUBLE_VERIFICATION_USER: u32 = 2207; +pub const NET_DVR_CHANNEL_OFFLINE: u32 = 2208; +pub const NET_DVR_TIMESPAN_NUM_OVER_LIMIT: u32 = 2209; +pub const NET_DVR_CHANNEL_NUM_OVER_LIMIT: u32 = 2210; +pub const NET_DVR_NO_SEARCH_ID_RESOURCE: u32 = 2211; +pub const NET_DVR_ERROR_ONEKEY_EXPORT: u32 = 2212; +pub const NET_DVR_NO_CITY_MANAGEMENT_ENGINES_RESOURCE: u32 = 2213; +pub const NET_DVR_NO_SITUATION_ANALYSIS_ENGINES_RESOURCE: u32 = 2214; +pub const NET_DVR_INTELLIGENT_ANALYSIS_IPC_CANNT_DELETE: u32 = 2215; +pub const NET_DVR_NOSUPPORT_RESET_PASSWORD: u32 = 2216; +pub const NET_DVR_ERROR_IPC_NEED_ON_LAN: u32 = 2217; +pub const NET_DVR_CHANNEL_NO_SUPPORT_WITH_SAFETY_HELMET: u32 = 2218; +pub const NET_DVR_ERROR_GET_RESETPASSWORDTYPE_IS_ABNORMAL: u32 = 2219; +pub const NET_DVR_ERROR_IPC_NOSUPPORT_RESET_PASSWORD: u32 = 2220; +pub const NET_DVR_ERROR_IP_IS_NOT_ONLY_ONE: u32 = 2221; +pub const NET_DVR_NO_SUPPORT_WITH_SMD_OR_SCD: u32 = 2222; +pub const NET_DVR_NO_SUPPORT_WITH_FD: u32 = 2223; +pub const NET_DVR_NO_FD_ENGINES_RESOURCE: u32 = 2224; +pub const NET_DVR_ERROR_ONEKEY_REMOVE: u32 = 2225; +pub const NET_DVR_FACE_PIP_BACKGROUND_CHANNEL_OVERFLOW: u32 = 2226; +pub const NET_DVR_MICIN_CHANNEL_OCCUPIED: u32 = 2227; +pub const NET_DVR_IPC_CHANNEL_IS_IN_PIP: u32 = 2228; +pub const NET_DVR_CHANNEL_NO_SUPPORT_WITH_FACE_CONTRAST: u32 = 2229; +pub const NET_DVR_INVALID_RECHARGE_CARD: u32 = 2230; +pub const NET_DVR_CLOUD_PLATFORM_SERVER_EXCEPTION: u32 = 2231; +pub const NET_DVR_OPERATION_FAILURE_WITHOUT_LOGIN: u32 = 2232; +pub const NET_DVR_INVALID_ASSOCIATED_SERIAL_NUMBER: u32 = 2233; +pub const NET_DVR_CLOUD_PLATFORM_ACCOUNT_NOT_EXIST: u32 = 2234; +pub const NET_DVR_DEVICE_SERIAL_NUMBER_REGISTERED: u32 = 2235; +pub const NET_DVR_CONFERENCE_ROOM_NOT_EXIST: u32 = 2236; +pub const NET_DVR_NEED_DISABLED_ANALOG_CHANNEL: u32 = 2237; +pub const NET_DVR_STUDENT_ROLL_CALL_FAILURE: u32 = 2238; +pub const NET_DVR_SUB_DEVICE_NOT_ENABLE_INDIVIDUAL_BEHAVIOR: u32 = 2239; +pub const NET_DVR_SUB_DEVICE_CHANNEL_CONTROL_FAILED: u32 = 2240; +pub const NET_DVR_DEVICE_NOT_IN_CONFERENCE: u32 = 2241; +pub const NET_DVR_ALREADY_EXIST_CONFERENCE: u32 = 2242; +pub const NET_DVR_NO_SUPPORT_WITH_VIDEO_CONFERENCE: u32 = 2243; +pub const NET_DVR_START_INTERACTION_FAILURE: u32 = 2244; +pub const NET_DVR_ASK_QUESTION_STARTED: u32 = 2245; +pub const NET_DVR_ASK_QUESTION_CLOSED: u32 = 2246; +pub const NET_DVR_UNABLE_OPERATE_BY_HOST: u32 = 2247; +pub const NET_DVR_REPEATED_ASK_QUESTION: u32 = 2248; +pub const NET_DVR_SWITCH_TIMEDIFF_LESS_LIMIT: u32 = 2249; +pub const NET_DVR_CHANNEL_DEVICE_EXIST: u32 = 2250; +pub const NET_DVR_CHANNEL_DEVICE_NOT_EXIST: u32 = 2251; +pub const NET_DVR_ERROR_ADJUSTING_RESOLUTION: u32 = 2252; +pub const NET_DVR_SSD_FILE_SYSTEM_IS_UPGRADING: u32 = 2253; +pub const NET_DVR_SSD_FILE_SYSTEM_IS_FORMAT: u32 = 2254; +pub const NET_DVR_CHANNEL_IS_CONNECTING: u32 = 2255; +pub const NET_DVR_CHANNEL_STREAM_TYPE_NOT_SUPPORT: u32 = 2257; +pub const NET_DVR_CHANNEL_USERNAME_NOT_EXIST: u32 = 2258; +pub const NET_DVR_CHANNEL_ACCESS_PARAM_FAILURE: u32 = 2259; +pub const NET_DVR_CHANNEL_GET_STREAM_FAILURE: u32 = 2260; +pub const NET_DVR_CHANNEL_RISK_PASSWORD: u32 = 2261; +pub const NET_DVR_NO_SUPPORT_DELETE_STRANGER_LIB: u32 = 2262; +pub const NET_DVR_NO_SUPPORT_CREATE_STRANGER_LIB: u32 = 2263; +pub const NET_DVR_NETWORK_PORT_CONFLICT: u32 = 2264; +pub const NET_DVR_TRANSCODE_NO_RESOURCES: u32 = 2265; +pub const NET_DVR_SSD_FILE_SYSTEM_ERROR: u32 = 2266; +pub const NET_DVR_INSUFFICIENT_SSD__FOR_FPD: u32 = 2267; +pub const NET_DVR_ASSOCIATED_FACELIB_OVER_LIMIT: u32 = 2268; +pub const NET_DVR_NEED_DELETE_DIGITAL_CHANNEL: u32 = 2269; +pub const NET_DVR_ERR_FALL_DOWN_RULENUM_LIMIT: u32 = 2270; +pub const NET_DVR_ERR_VIOLENT_MOTION_RULENUM_LIMIT: u32 = 2271; +pub const NET_DVR_UPGRADE_ENGINE_VERSION_MISMATCH: u32 = 2272; +pub const NET_DVR_ERR_NOTSUPPORT_DEICING: u32 = 3001; +pub const NET_DVR_ERR_THERMENABLE_CLOSE: u32 = 3002; +pub const NET_DVR_ERR_NOTMEET_DEICING: u32 = 3003; +pub const NET_DVR_ERR_PANORAMIC_LIMIT_OPERATED: u32 = 3004; +pub const NET_DVR_ERR_SMARTH264_ROI_OPERATED: u32 = 3005; +pub const NET_DVR_ERR_RULENUM_LIMIT: u32 = 3006; +pub const NET_DVR_ERR_LASER_DEICING_OPERATED: u32 = 3007; +pub const NET_DVR_ERR_OFFDIGITALZOOM_OR_MINZOOMLIMIT: u32 = 3008; +pub const NET_DVR_ERR_FIREWAITING: u32 = 3009; +pub const NET_DVR_SYNCHRONIZEFOV_ERROR: u32 = 3010; +pub const NET_DVR_CERTIFICATE_VALIDATION_ERROR: u32 = 3011; +pub const NET_DVR_CERTIFICATES_NUM_EXCEED_ERROR: u32 = 3012; +pub const NET_DVR_RULE_SHIELDMASK_CONFLICT_ERROR: u32 = 3013; +pub const NET_DVR_MOTOR_PREHEATING_ERROR: u32 = 3014; +pub const NET_DVR_PT_DEICING_ERROR: u32 = 3015; +pub const NET_DVR_ERR_NO_SAFETY_HELMET_REGION: u32 = 3501; +pub const NET_DVR_ERR_UNCLOSED_SAFETY_HELMET: u32 = 3502; +pub const NET_DVR_ERR_MUX_RECV_STATE: u32 = 3503; +pub const NET_DVR_UPLOAD_HBDLIBID_ERROR: u32 = 3504; +pub const NET_DVR_NOTSUPPORT_SMALLER_RATIOS: u32 = 3505; +pub const NET_ERR_ACCOUNT_NOT_ACTIVED: u32 = 3506; +pub const NET_ERR_NPQ_BASE_INDEX: u32 = 8000; +pub const NET_ERR_NPQ_PARAM: u32 = 8001; +pub const NET_ERR_NPQ_SYSTEM: u32 = 8002; +pub const NET_ERR_NPQ_GENRAL: u32 = 8003; +pub const NET_ERR_NPQ_PRECONDITION: u32 = 8004; +pub const NET_ERR_NPQ_NOTSUPPORT: u32 = 8005; +pub const NET_ERR_NPQ_NOTCALLBACK: u32 = 8100; +pub const NET_ERR_NPQ_LOADLIB: u32 = 8101; +pub const NET_ERR_NPQ_STEAM_CLOSE: u32 = 8104; +pub const NET_ERR_NPQ_MAX_LINK: u32 = 8110; +pub const NET_ERR_NPQ_STREAM_CFG: u32 = 8111; +pub const NET_ERR_NPQ_PLAYBACK_OVERSPEED: u32 = 8112; +pub const NET_ERR_NPQ_PLAYBACK_BELOWSPEED: u32 = 8113; +pub const NET_EZVIZ_P2P_BASE_INDEX: u32 = 8300; +pub const NET_DVR_EZVIZ_P2P_REGISTER_ERROR: u32 = 8301; +pub const NET_DVR_EZVIZ_P2P_LOGIN_2C_ERROR: u32 = 8302; +pub const NET_DVR_EZVIZ_P2P_LOGIN_2B_ERROR: u32 = 8303; +pub const NET_DVR_EZVIZ_P2P_BUILDLINK_ERROR: u32 = 8304; +pub const NET_DVR_EZVIZ_P2P_PORTMAPPING_ERROR: u32 = 8305; +pub const NET_DVR_EZVIZ_P2P_COULDNT_RESOLVE_HOST: u32 = 8306; +pub const NET_DVR_EZVIZ_P2P_COULDNT_CONNECT: u32 = 8307; +pub const NET_DVR_EZVIZ_P2P_OPERATION_TIMEOUT: u32 = 8308; +pub const NET_DVR_EZVIZ_P2P_NOT_INITIALIZED: u32 = 8309; +pub const NET_DVR_EZVIZ_P2P_INVALID_ARG: u32 = 8310; +pub const NET_DVR_EZVIZ_P2P_EXCEED_MAX_SERVICE: u32 = 8311; +pub const NET_DVR_EZVIZ_P2P_TOKEN_NOT_EXIST: u32 = 8312; +pub const NET_DVR_EZVIZ_P2P_DISCONNECTED: u32 = 8313; +pub const NET_DVR_EZVIZ_P2P_RELAY_ADDR_NOT_EXIST: u32 = 8314; +pub const NET_DVR_EZVIZ_P2P_DEV_NOT_ONLINE: u32 = 8315; +pub const NET_DVR_EZVIZ_P2P_DEV_CONNECT_EXCEED: u32 = 8316; +pub const NET_DVR_EZVIZ_P2P_DEV_CONNECT_FAILED: u32 = 8317; +pub const NET_DVR_EZVIZ_P2P_DEV_RECV_TIMEOUT: u32 = 8318; +pub const NET_DVR_EZVIZ_P2P_USER_FORCE_STOP: u32 = 8319; +pub const NET_DVR_EZVIZ_P2P_NO_PERMISSION: u32 = 8320; +pub const NET_DVR_EZVIZ_P2P_DEV_PU_NOT_FOUND: u32 = 8321; +pub const NET_DVR_EZVIZ_P2P_DEV_CONN_NOLONGER_AVAIL: u32 = 8322; +pub const NET_DVR_EZVIZ_P2P_DEV_NOT_LISTENING: u32 = 8323; +pub const NET_DVR_EZVIZ_P2P_DEV_TUNNEL_SOCKET_LIMITED: u32 = 8324; +pub const NET_DVR_EZVIZ_P2P_FAIL_CREATE_THREAD: u32 = 8325; +pub const NET_DVR_EZVIZ_P2P_FAIL_ALLOC_BUFFERS: u32 = 8326; +pub const NET_DVR_EZVIZ_P2P_FAIL_CREATE_SOCKET: u32 = 8327; +pub const NET_DVR_EZVIZ_P2P_BIND_LOCAL_SERVICE: u32 = 8328; +pub const NET_DVR_EZVIZ_P2P_LISTEN_LOCAL_SERVICE: u32 = 8329; +pub const NET_DVR_EZVIZ_P2P_SVR_RSP_BAD: u32 = 8330; +pub const NET_DVR_EZVIZ_P2P_SVR_RSP_INVALID: u32 = 8331; +pub const NET_DVR_EZVIZ_P2P_SVR_LOGIN_FAILED: u32 = 8332; +pub const NET_DVR_EZVIZ_P2P_SVR_TOKEN_EXPIRED: u32 = 8333; +pub const NET_DVR_EZVIZ_P2P_SVR_DEV_NOT_BELONG_TO_USER: u32 = 8334; +pub const NET_ERR_UPGRADE_PROG_ERR: u32 = 8501; +pub const NET_ERR_UPGRADE_NO_DEVICE: u32 = 8502; +pub const NET_ERR_UPGRADE_NO_FILE: u32 = 8503; +pub const NET_ERR_UPGRADE_DATA_ERROR: u32 = 8504; +pub const NET_ERR_UPGRADE_LINK_SERVER_ERR: u32 = 8505; +pub const NET_ERR_UPGRADE_OEMCODE_NOMATCH: u32 = 8506; +pub const NET_ERR_UPGRADE_FLASH_NOENOUGH: u32 = 8507; +pub const NET_ERR_UPGRADE_RAM_NOENOUGH: u32 = 8508; +pub const NET_ERR_UPGRADE_DSPRAM_NOENOUGH: u32 = 8509; +pub const NET_ERR_NOT_SUPPORT_CHECK: u32 = 8510; +pub const NET_ERR_LED_DEVICE_BUSY_CHECK: u32 = 8511; +pub const NET_ERR_DEVICE_MEM_NOT_ENOUGH: u32 = 8512; +pub const NET_ERR_CHECK_PARAM: u32 = 8513; +pub const NET_ERR_RESOLUTION_OVER_LIMIT: u32 = 8514; +pub const NET_ERR_NO_CUSTOM_BASE: u32 = 8515; +pub const NET_ERR_PRIORITY_LOWER: u32 = 8516; +pub const NET_ERR_SEND_MESSAGE_EXCEPT: u32 = 8517; +pub const NET_ERR_SENDCARD_UPGRADING: u32 = 8518; +pub const NET_ERR_NO_WIRELESS_NETCARD: u32 = 8519; +pub const NET_ERR_LOAD_FS_FAIL: u32 = 8520; +pub const NET_ERR_FLASH_UNSTORAGE_RECCARD: u32 = 8521; +pub const NET_ERR_NOT_SUPPORT_SINGLE_NETWORKCARD_AGGREGA: u32 = 8522; +pub const NET_ERR_DISPLAYRESOLUTION_LESSTHAN_SMALLESTRESOLUTION: u32 = 8523; +pub const NET_ERR_NOT_SUPPORT_LOCAL_SOURCE_DRAG_MORE: u32 = 8524; +pub const NET_ERR_CANCEL_CURRENT_LED_AREA: u32 = 8525; +pub const NET_ERR_LED_OUT_ASSOCIATED_AREA: u32 = 8526; +pub const NET_ERR_MAX_VIRTUAL_LED_PICTURE_SIZE: u32 = 8527; +pub const NET_ERR_DEVICE_CTRLED_BY_REMOTER: u32 = 8528; +pub const NET_DVR_SUPPORT_DDRAW: u32 = 1; +pub const NET_DVR_SUPPORT_BLT: u32 = 2; +pub const NET_DVR_SUPPORT_BLTFOURCC: u32 = 4; +pub const NET_DVR_SUPPORT_BLTSHRINKX: u32 = 8; +pub const NET_DVR_SUPPORT_BLTSHRINKY: u32 = 16; +pub const NET_DVR_SUPPORT_BLTSTRETCHX: u32 = 32; +pub const NET_DVR_SUPPORT_BLTSTRETCHY: u32 = 64; +pub const NET_DVR_SUPPORT_SSE: u32 = 128; +pub const NET_DVR_SUPPORT_MMX: u32 = 256; +pub const LIGHT_PWRON: u32 = 2; +pub const WIPER_PWRON: u32 = 3; +pub const FAN_PWRON: u32 = 4; +pub const HEATER_PWRON: u32 = 5; +pub const AUX_PWRON1: u32 = 6; +pub const AUX_PWRON2: u32 = 7; +pub const SET_PRESET: u32 = 8; +pub const CLE_PRESET: u32 = 9; +pub const ZOOM_IN: u32 = 11; +pub const ZOOM_OUT: u32 = 12; +pub const FOCUS_NEAR: u32 = 13; +pub const FOCUS_FAR: u32 = 14; +pub const IRIS_OPEN: u32 = 15; +pub const IRIS_CLOSE: u32 = 16; +pub const TILT_UP: u32 = 21; +pub const TILT_DOWN: u32 = 22; +pub const PAN_LEFT: u32 = 23; +pub const PAN_RIGHT: u32 = 24; +pub const UP_LEFT: u32 = 25; +pub const UP_RIGHT: u32 = 26; +pub const DOWN_LEFT: u32 = 27; +pub const DOWN_RIGHT: u32 = 28; +pub const PAN_AUTO: u32 = 29; +pub const FILL_PRE_SEQ: u32 = 30; +pub const SET_SEQ_DWELL: u32 = 31; +pub const SET_SEQ_SPEED: u32 = 32; +pub const CLE_PRE_SEQ: u32 = 33; +pub const STA_MEM_CRUISE: u32 = 34; +pub const STO_MEM_CRUISE: u32 = 35; +pub const RUN_CRUISE: u32 = 36; +pub const RUN_SEQ: u32 = 37; +pub const STOP_SEQ: u32 = 38; +pub const GOTO_PRESET: u32 = 39; +pub const SET_SEQ_START: u32 = 41; +pub const SET_SEQ_END: u32 = 42; +pub const DEL_SEQ: u32 = 43; +pub const STOP_CRUISE: u32 = 44; +pub const DELETE_CRUISE: u32 = 45; +pub const DELETE_ALL_CRUISE: u32 = 46; +pub const PAN_CIRCLE: u32 = 50; +pub const DRAG_PTZ: u32 = 51; +pub const LINEAR_SCAN: u32 = 52; +pub const CLE_ALL_PRESET: u32 = 53; +pub const CLE_ALL_SEQ: u32 = 54; +pub const CLE_ALL_CRUISE: u32 = 55; +pub const POPUP_MENU: u32 = 56; +pub const TILT_DOWN_ZOOM_IN: u32 = 58; +pub const TILT_DOWN_ZOOM_OUT: u32 = 59; +pub const PAN_LEFT_ZOOM_IN: u32 = 60; +pub const PAN_LEFT_ZOOM_OUT: u32 = 61; +pub const PAN_RIGHT_ZOOM_IN: u32 = 62; +pub const PAN_RIGHT_ZOOM_OUT: u32 = 63; +pub const UP_LEFT_ZOOM_IN: u32 = 64; +pub const UP_LEFT_ZOOM_OUT: u32 = 65; +pub const UP_RIGHT_ZOOM_IN: u32 = 66; +pub const UP_RIGHT_ZOOM_OUT: u32 = 67; +pub const DOWN_LEFT_ZOOM_IN: u32 = 68; +pub const DOWN_LEFT_ZOOM_OUT: u32 = 69; +pub const DOWN_RIGHT_ZOOM_IN: u32 = 70; +pub const DOWN_RIGHT_ZOOM_OUT: u32 = 71; +pub const TILT_UP_ZOOM_IN: u32 = 72; +pub const TILT_UP_ZOOM_OUT: u32 = 73; +pub const DVR_VEHICLE_CONTROL_LIST: u32 = 1; +pub const NET_DVR_PLAYSTART: u32 = 1; +pub const NET_DVR_PLAYSTOP: u32 = 2; +pub const NET_DVR_PLAYPAUSE: u32 = 3; +pub const NET_DVR_PLAYRESTART: u32 = 4; +pub const NET_DVR_PLAYFAST: u32 = 5; +pub const NET_DVR_PLAYSLOW: u32 = 6; +pub const NET_DVR_PLAYNORMAL: u32 = 7; +pub const NET_DVR_PLAYFRAME: u32 = 8; +pub const NET_DVR_PLAYSTARTAUDIO: u32 = 9; +pub const NET_DVR_PLAYSTOPAUDIO: u32 = 10; +pub const NET_DVR_PLAYAUDIOVOLUME: u32 = 11; +pub const NET_DVR_PLAYSETPOS: u32 = 12; +pub const NET_DVR_PLAYGETPOS: u32 = 13; +pub const NET_DVR_PLAYGETTIME: u32 = 14; +pub const NET_DVR_PLAYGETFRAME: u32 = 15; +pub const NET_DVR_GETTOTALFRAMES: u32 = 16; +pub const NET_DVR_GETTOTALTIME: u32 = 17; +pub const NET_DVR_THROWBFRAME: u32 = 20; +pub const NET_DVR_SETSPEED: u32 = 24; +pub const NET_DVR_KEEPALIVE: u32 = 25; +pub const NET_DVR_PLAYSETTIME: u32 = 26; +pub const NET_DVR_PLAYGETTOTALLEN: u32 = 27; +pub const NET_DVR_PLAYSETTIME_V50: u32 = 28; +pub const NET_DVR_PLAY_FORWARD: u32 = 29; +pub const NET_DVR_PLAY_REVERSE: u32 = 30; +pub const NET_DVR_SET_DECODEFFRAMETYPE: u32 = 31; +pub const NET_DVR_SET_TRANS_TYPE: u32 = 32; +pub const NET_DVR_PLAY_CONVERT: u32 = 33; +pub const NET_DVR_START_DRAWFRAME: u32 = 34; +pub const NET_DVR_STOP_DRAWFRAME: u32 = 35; +pub const NET_DVR_CHANGEWNDRESOLUTION: u32 = 36; +pub const NET_DVR_RESETBUFFER: u32 = 37; +pub const NET_DVR_VOD_DRAG_ING: u32 = 38; +pub const NET_DVR_VOD_DRAG_END: u32 = 39; +pub const NET_DVR_VOD_RESET_PLAYTIME: u32 = 40; +pub const PLAYM4_DECODE_NORMAIL: u32 = 0; +pub const PLAYM4_DECODE_KEY_FRAME: u32 = 1; +pub const PLAYM4_DECODE_NONE: u32 = 2; +pub const PLAYM4_DECODE_TEMPORAL_LAYER_0: u32 = 3; +pub const PLAYM4_DECODE_TEMPORAL_LAYER_1: u32 = 4; +pub const KEY_CODE_1: u32 = 1; +pub const KEY_CODE_2: u32 = 2; +pub const KEY_CODE_3: u32 = 3; +pub const KEY_CODE_4: u32 = 4; +pub const KEY_CODE_5: u32 = 5; +pub const KEY_CODE_6: u32 = 6; +pub const KEY_CODE_7: u32 = 7; +pub const KEY_CODE_8: u32 = 8; +pub const KEY_CODE_9: u32 = 9; +pub const KEY_CODE_0: u32 = 10; +pub const KEY_CODE_POWER: u32 = 11; +pub const KEY_CODE_MENU: u32 = 12; +pub const KEY_CODE_ENTER: u32 = 13; +pub const KEY_CODE_CANCEL: u32 = 14; +pub const KEY_CODE_UP: u32 = 15; +pub const KEY_CODE_DOWN: u32 = 16; +pub const KEY_CODE_LEFT: u32 = 17; +pub const KEY_CODE_RIGHT: u32 = 18; +pub const KEY_CODE_EDIT: u32 = 19; +pub const KEY_CODE_ADD: u32 = 20; +pub const KEY_CODE_MINUS: u32 = 21; +pub const KEY_CODE_PLAY: u32 = 22; +pub const KEY_CODE_REC: u32 = 23; +pub const KEY_CODE_PAN: u32 = 24; +pub const KEY_CODE_M: u32 = 25; +pub const KEY_CODE_A: u32 = 26; +pub const KEY_CODE_F1: u32 = 27; +pub const KEY_CODE_F2: u32 = 28; +pub const KEY_PTZ_UP_START: u32 = 15; +pub const KEY_PTZ_UP_STOP: u32 = 32; +pub const KEY_PTZ_DOWN_START: u32 = 16; +pub const KEY_PTZ_DOWN_STOP: u32 = 33; +pub const KEY_PTZ_LEFT_START: u32 = 17; +pub const KEY_PTZ_LEFT_STOP: u32 = 34; +pub const KEY_PTZ_RIGHT_START: u32 = 18; +pub const KEY_PTZ_RIGHT_STOP: u32 = 35; +pub const KEY_PTZ_AP1_START: u32 = 19; +pub const KEY_PTZ_AP1_STOP: u32 = 36; +pub const KEY_PTZ_AP2_START: u32 = 24; +pub const KEY_PTZ_AP2_STOP: u32 = 37; +pub const KEY_PTZ_FOCUS1_START: u32 = 26; +pub const KEY_PTZ_FOCUS1_STOP: u32 = 38; +pub const KEY_PTZ_FOCUS2_START: u32 = 25; +pub const KEY_PTZ_FOCUS2_STOP: u32 = 39; +pub const KEY_PTZ_B1_START: u32 = 40; +pub const KEY_PTZ_B1_STOP: u32 = 41; +pub const KEY_PTZ_B2_START: u32 = 42; +pub const KEY_PTZ_B2_STOP: u32 = 43; +pub const KEY_CODE_11: u32 = 44; +pub const KEY_CODE_12: u32 = 45; +pub const KEY_CODE_13: u32 = 46; +pub const KEY_CODE_14: u32 = 47; +pub const KEY_CODE_15: u32 = 48; +pub const KEY_CODE_16: u32 = 49; +pub const NET_DVR_GET_DEVICECFG: u32 = 100; +pub const NET_DVR_SET_DEVICECFG: u32 = 101; +pub const NET_DVR_GET_NETCFG: u32 = 102; +pub const NET_DVR_SET_NETCFG: u32 = 103; +pub const NET_DVR_GET_PICCFG: u32 = 104; +pub const NET_DVR_SET_PICCFG: u32 = 105; +pub const NET_DVR_GET_COMPRESSCFG: u32 = 106; +pub const NET_DVR_SET_COMPRESSCFG: u32 = 107; +pub const NET_DVR_GET_RECORDCFG: u32 = 108; +pub const NET_DVR_SET_RECORDCFG: u32 = 109; +pub const NET_DVR_GET_DECODERCFG: u32 = 110; +pub const NET_DVR_SET_DECODERCFG: u32 = 111; +pub const NET_DVR_GET_RS232CFG: u32 = 112; +pub const NET_DVR_SET_RS232CFG: u32 = 113; +pub const NET_DVR_GET_ALARMINCFG: u32 = 114; +pub const NET_DVR_SET_ALARMINCFG: u32 = 115; +pub const NET_DVR_GET_ALARMOUTCFG: u32 = 116; +pub const NET_DVR_SET_ALARMOUTCFG: u32 = 117; +pub const NET_DVR_GET_TIMECFG: u32 = 118; +pub const NET_DVR_SET_TIMECFG: u32 = 119; +pub const NET_DVR_GET_PREVIEWCFG: u32 = 120; +pub const NET_DVR_SET_PREVIEWCFG: u32 = 121; +pub const NET_DVR_GET_VIDEOOUTCFG: u32 = 122; +pub const NET_DVR_SET_VIDEOOUTCFG: u32 = 123; +pub const NET_DVR_GET_USERCFG: u32 = 124; +pub const NET_DVR_SET_USERCFG: u32 = 125; +pub const NET_DVR_GET_EXCEPTIONCFG: u32 = 126; +pub const NET_DVR_SET_EXCEPTIONCFG: u32 = 127; +pub const NET_DVR_GET_ZONEANDDST: u32 = 128; +pub const NET_DVR_SET_ZONEANDDST: u32 = 129; +pub const NET_DVR_GET_SHOWSTRING: u32 = 130; +pub const NET_DVR_SET_SHOWSTRING: u32 = 131; +pub const NET_DVR_GET_EVENTCOMPCFG: u32 = 132; +pub const NET_DVR_SET_EVENTCOMPCFG: u32 = 133; +pub const NET_DVR_GET_FTPCFG: u32 = 134; +pub const NET_DVR_SET_FTPCFG: u32 = 135; +pub const NET_DVR_GET_AUXOUTCFG: u32 = 140; +pub const NET_DVR_SET_AUXOUTCFG: u32 = 141; +pub const NET_DVR_GET_PREVIEWCFG_AUX: u32 = 142; +pub const NET_DVR_SET_PREVIEWCFG_AUX: u32 = 143; +pub const NET_DVR_GET_PASSWORD_MANAGE_CFG: u32 = 144; +pub const NET_DVR_SET_PASSWORD_MANAGE_CFG: u32 = 145; +pub const NET_DVR_UNLOCK_USER: u32 = 146; +pub const NET_DVR_GET_SECURITY_CFG: u32 = 147; +pub const NET_DVR_SET_SECURITY_CFG: u32 = 148; +pub const NET_DVR_GET_LOCKED_INFO_LIST: u32 = 149; +pub const NET_DVR_SET_RULECFG: u32 = 152; +pub const NET_DVR_GET_RULECFG: u32 = 153; +pub const NET_DVR_SET_TRACK_CFG: u32 = 160; +pub const NET_DVR_GET_TRACK_CFG: u32 = 161; +pub const NET_DVR_SET_IVMS_STREAMCFG: u32 = 162; +pub const NET_DVR_GET_IVMS_STREAMCFG: u32 = 163; +pub const NET_DVR_SET_VCA_CTRLCFG: u32 = 164; +pub const NET_DVR_GET_VCA_CTRLCFG: u32 = 165; +pub const NET_DVR_SET_VCA_MASK_REGION: u32 = 166; +pub const NET_DVR_GET_VCA_MASK_REGION: u32 = 167; +pub const NET_DVR_SET_VCA_ENTER_REGION: u32 = 168; +pub const NET_DVR_GET_VCA_ENTER_REGION: u32 = 169; +pub const NET_DVR_SET_VCA_LINE_SEGMENT: u32 = 170; +pub const NET_DVR_GET_VCA_LINE_SEGMENT: u32 = 171; +pub const NET_DVR_SET_IVMS_MASK_REGION: u32 = 172; +pub const NET_DVR_GET_IVMS_MASK_REGION: u32 = 173; +pub const NET_DVR_SET_IVMS_ENTER_REGION: u32 = 174; +pub const NET_DVR_GET_IVMS_ENTER_REGION: u32 = 175; +pub const NET_DVR_SET_IVMS_BEHAVIORCFG: u32 = 176; +pub const NET_DVR_GET_IVMS_BEHAVIORCFG: u32 = 177; +pub const NET_DVR_IVMS_SET_SEARCHCFG: u32 = 178; +pub const NET_DVR_IVMS_GET_SEARCHCFG: u32 = 179; +pub const NET_DVR_SET_POSITION_TRACK: u32 = 180; +pub const NET_DVR_GET_POSITION_TRACK: u32 = 181; +pub const NET_DVR_SET_CALIBRATION: u32 = 182; +pub const NET_DVR_GET_CALIBRATION: u32 = 183; +pub const NET_DVR_SET_PDC_RULECFG: u32 = 184; +pub const NET_DVR_GET_PDC_RULECFG: u32 = 185; +pub const NET_DVR_SET_PU_STREAMCFG: u32 = 186; +pub const NET_DVR_GET_PU_STREAMCFG: u32 = 187; +pub const NET_VCA_SET_IVMS_BEHAVIOR_CFG: u32 = 192; +pub const NET_VCA_GET_IVMS_BEHAVIOR_CFG: u32 = 193; +pub const NET_VCA_SET_SIZE_FILTER: u32 = 194; +pub const NET_VCA_GET_SIZE_FILTER: u32 = 195; +pub const NET_DVR_SET_TRACK_PARAMCFG: u32 = 196; +pub const NET_DVR_GET_TRACK_PARAMCFG: u32 = 197; +pub const NET_DVR_SET_DOME_MOVEMENT_PARAM: u32 = 198; +pub const NET_DVR_GET_DOME_MOVEMENT_PARAM: u32 = 199; +pub const NET_DVR_GET_PICCFG_EX: u32 = 200; +pub const NET_DVR_SET_PICCFG_EX: u32 = 201; +pub const NET_DVR_GET_USERCFG_EX: u32 = 202; +pub const NET_DVR_SET_USERCFG_EX: u32 = 203; +pub const NET_DVR_GET_COMPRESSCFG_EX: u32 = 204; +pub const NET_DVR_SET_COMPRESSCFG_EX: u32 = 205; +pub const NET_DVR_GET_NETAPPCFG: u32 = 222; +pub const NET_DVR_SET_NETAPPCFG: u32 = 223; +pub const NET_DVR_GET_NTPCFG: u32 = 224; +pub const NET_DVR_SET_NTPCFG: u32 = 225; +pub const NET_DVR_GET_DDNSCFG: u32 = 226; +pub const NET_DVR_SET_DDNSCFG: u32 = 227; +pub const NET_DVR_GET_EMAILCFG: u32 = 228; +pub const NET_DVR_SET_EMAILCFG: u32 = 229; +pub const NET_DVR_GET_NFSCFG: u32 = 230; +pub const NET_DVR_SET_NFSCFG: u32 = 231; +pub const NET_DVR_GET_SHOWSTRING_EX: u32 = 238; +pub const NET_DVR_SET_SHOWSTRING_EX: u32 = 239; +pub const NET_DVR_GET_NETCFG_OTHER: u32 = 244; +pub const NET_DVR_SET_NETCFG_OTHER: u32 = 245; +pub const NET_DVR_GET_EMAILPARACFG: u32 = 250; +pub const NET_DVR_SET_EMAILPARACFG: u32 = 251; +pub const NET_DVR_GET_DDNSCFG_EX: u32 = 274; +pub const NET_DVR_SET_DDNSCFG_EX: u32 = 275; +pub const NET_DVR_SET_PTZPOS: u32 = 292; +pub const NET_DVR_GET_PTZPOS: u32 = 293; +pub const NET_DVR_GET_PTZSCOPE: u32 = 294; +pub const NET_DVR_GET_AP_INFO_LIST: u32 = 305; +pub const NET_DVR_SET_WIFI_CFG: u32 = 306; +pub const NET_DVR_GET_WIFI_CFG: u32 = 307; +pub const NET_DVR_SET_WIFI_WORKMODE: u32 = 308; +pub const NET_DVR_GET_WIFI_WORKMODE: u32 = 309; +pub const NET_DVR_GET_WIFI_STATUS: u32 = 310; +pub const NET_DVR_GET_REFERENCE_REGION: u32 = 400; +pub const NET_DVR_SET_REFERENCE_REGION: u32 = 401; +pub const NET_DVR_GET_TRAFFIC_MASK_REGION: u32 = 402; +pub const NET_DVR_SET_TRAFFIC_MASK_REGION: u32 = 403; +pub const NET_DVR_SET_AID_RULECFG: u32 = 404; +pub const NET_DVR_GET_AID_RULECFG: u32 = 405; +pub const NET_DVR_SET_TPS_RULECFG: u32 = 406; +pub const NET_DVR_GET_TPS_RULECFG: u32 = 407; +pub const NET_DVR_SET_LANECFG: u32 = 408; +pub const NET_DVR_GET_LANECFG: u32 = 409; +pub const NET_DVR_GET_VCA_RULE_COLOR_CFG: u32 = 410; +pub const NET_DVR_SET_VCA_RULE_COLOR_CFG: u32 = 411; +pub const NET_DVR_GET_SWITCH_LAMP_CFG: u32 = 412; +pub const NET_DVR_SET_SWITCH_LAMP_CFG: u32 = 413; +pub const NET_DVR_SET_FACEDETECT_RULECFG: u32 = 420; +pub const NET_DVR_GET_FACEDETECT_RULECFG: u32 = 421; +pub const NET_DVR_SET_VEHICLE_RECOG_TASK: u32 = 422; +pub const NET_DVR_GET_VEHICLE_RECOG_TASK: u32 = 423; +pub const NET_DVR_SET_TIMECORRECT: u32 = 432; +pub const NET_DVR_GET_CONNECT_LIST: u32 = 433; +pub const NET_DVR_GET_NETCFG_V30: u32 = 1000; +pub const NET_DVR_SET_NETCFG_V30: u32 = 1001; +pub const NET_DVR_GET_PICCFG_V30: u32 = 1002; +pub const NET_DVR_SET_PICCFG_V30: u32 = 1003; +pub const NET_DVR_GET_RECORDCFG_V30: u32 = 1004; +pub const NET_DVR_SET_RECORDCFG_V30: u32 = 1005; +pub const NET_DVR_GET_USERCFG_V30: u32 = 1006; +pub const NET_DVR_SET_USERCFG_V30: u32 = 1007; +pub const NET_DVR_GET_RECORDCFG_V40: u32 = 1008; +pub const NET_DVR_SET_RECORDCFG_V40: u32 = 1009; +pub const NET_DVR_GET_DDNSCFG_V30: u32 = 1010; +pub const NET_DVR_SET_DDNSCFG_V30: u32 = 1011; +pub const NET_DVR_GET_EMAILCFG_V30: u32 = 1012; +pub const NET_DVR_SET_EMAILCFG_V30: u32 = 1013; +pub const NET_DVR_GET_NETCFG_V50: u32 = 1015; +pub const NET_DVR_SET_NETCFG_V50: u32 = 1016; +pub const NET_GET_CRUISEPOINT_V40: u32 = 1018; +pub const NET_DVR_GET_CRUISE: u32 = 1020; +pub const NET_DVR_SET_CRUISE: u32 = 1021; +pub const NET_DVR_GET_ALARMINCFG_V30: u32 = 1024; +pub const NET_DVR_SET_ALARMINCFG_V30: u32 = 1025; +pub const NET_DVR_GET_ALARMOUTCFG_V30: u32 = 1026; +pub const NET_DVR_SET_ALARMOUTCFG_V30: u32 = 1027; +pub const NET_DVR_GET_VIDEOOUTCFG_V30: u32 = 1028; +pub const NET_DVR_SET_VIDEOOUTCFG_V30: u32 = 1029; +pub const NET_DVR_GET_SHOWSTRING_V30: u32 = 1030; +pub const NET_DVR_SET_SHOWSTRING_V30: u32 = 1031; +pub const NET_DVR_GET_EXCEPTIONCFG_V30: u32 = 1034; +pub const NET_DVR_SET_EXCEPTIONCFG_V30: u32 = 1035; +pub const NET_DVR_GET_RS232CFG_V30: u32 = 1036; +pub const NET_DVR_SET_RS232CFG_V30: u32 = 1037; +pub const NET_DVR_GET_NET_DISKCFG: u32 = 1038; +pub const NET_DVR_SET_NET_DISKCFG: u32 = 1039; +pub const NET_DVR_GET_COMPRESSCFG_V30: u32 = 1040; +pub const NET_DVR_SET_COMPRESSCFG_V30: u32 = 1041; +pub const NET_DVR_GET_DECODERCFG_V30: u32 = 1042; +pub const NET_DVR_SET_DECODERCFG_V30: u32 = 1043; +pub const NET_DVR_GET_PREVIEWCFG_V30: u32 = 1044; +pub const NET_DVR_SET_PREVIEWCFG_V30: u32 = 1045; +pub const NET_DVR_GET_PREVIEWCFG_AUX_V30: u32 = 1046; +pub const NET_DVR_SET_PREVIEWCFG_AUX_V30: u32 = 1047; +pub const NET_DVR_GET_IPPARACFG: u32 = 1048; +pub const NET_DVR_SET_IPPARACFG: u32 = 1049; +pub const NET_DVR_GET_IPALARMINCFG: u32 = 1050; +pub const NET_DVR_SET_IPALARMINCFG: u32 = 1051; +pub const NET_DVR_GET_IPALARMOUTCFG: u32 = 1052; +pub const NET_DVR_SET_IPALARMOUTCFG: u32 = 1053; +pub const NET_DVR_GET_HDCFG: u32 = 1054; +pub const NET_DVR_SET_HDCFG: u32 = 1055; +pub const NET_DVR_GET_HDGROUP_CFG: u32 = 1056; +pub const NET_DVR_SET_HDGROUP_CFG: u32 = 1057; +pub const NET_DVR_GET_COMPRESSCFG_AUD: u32 = 1058; +pub const NET_DVR_SET_COMPRESSCFG_AUD: u32 = 1059; +pub const NET_DVR_GET_IPPARACFG_V31: u32 = 1060; +pub const NET_DVR_SET_IPPARACFG_V31: u32 = 1061; +pub const NET_DVR_GET_IPPARACFG_V40: u32 = 1062; +pub const NET_DVR_SET_IPPARACFG_V40: u32 = 1063; +pub const NET_DVR_GET_CCDPARAMCFG: u32 = 1067; +pub const NET_DVR_SET_CCDPARAMCFG: u32 = 1068; +pub const NET_DVR_GET_IOINCFG: u32 = 1070; +pub const NET_DVR_SET_IOINCFG: u32 = 1071; +pub const NET_DVR_GET_IOOUTCFG: u32 = 1072; +pub const NET_DVR_SET_IOOUTCFG: u32 = 1073; +pub const NET_DVR_GET_FLASHCFG: u32 = 1074; +pub const NET_DVR_SET_FLASHCFG: u32 = 1075; +pub const NET_DVR_GET_LIGHTSNAPCFG: u32 = 1076; +pub const NET_DVR_SET_LIGHTSNAPCFG: u32 = 1077; +pub const NET_DVR_GET_MEASURESPEEDCFG: u32 = 1078; +pub const NET_DVR_SET_MEASURESPEEDCFG: u32 = 1079; +pub const NET_DVR_GET_IMAGEOVERLAYCFG: u32 = 1080; +pub const NET_DVR_SET_IMAGEOVERLAYCFG: u32 = 1081; +pub const NET_DVR_GET_SNAPCFG: u32 = 1082; +pub const NET_DVR_SET_SNAPCFG: u32 = 1083; +pub const NET_DVR_GET_VTPPARAM: u32 = 1084; +pub const NET_DVR_SET_VTPPARAM: u32 = 1085; +pub const NET_DVR_GET_SNAPENABLECFG: u32 = 1086; +pub const NET_DVR_SET_SNAPENABLECFG: u32 = 1087; +pub const NET_DVR_GET_POSTEPOLICECFG: u32 = 1088; +pub const NET_DVR_SET_POSTEPOLICECFG: u32 = 1089; +pub const NET_DVR_GET_JPEGCFG_V30: u32 = 1090; +pub const NET_DVR_SET_JPEGCFG_V30: u32 = 1091; +pub const NET_DVR_GET_SPRCFG: u32 = 1092; +pub const NET_DVR_SET_SPRCFG: u32 = 1093; +pub const NET_DVR_GET_PLCCFG: u32 = 1094; +pub const NET_DVR_SET_PLCCFG: u32 = 1095; +pub const NET_DVR_GET_DEVICESTATECFG: u32 = 1096; +pub const NET_DVR_SET_CALIBRATE_TIME: u32 = 1097; +pub const NET_DVR_GET_CALIBRATE_TIME: u32 = 1098; +pub const NET_DVR_GET_DEVICECFG_V40: u32 = 1100; +pub const NET_DVR_SET_DEVICECFG_V40: u32 = 1101; +pub const NET_DVR_GET_ZEROCHANCFG: u32 = 1102; +pub const NET_DVR_SET_ZEROCHANCFG: u32 = 1103; +pub const NET_DVR_GET_ZERO_PREVIEWCFG_V30: u32 = 1104; +pub const NET_DVR_SET_ZERO_PREVIEWCFG_V30: u32 = 1105; +pub const NET_DVR_SET_ZERO_ZOOM: u32 = 1106; +pub const NET_DVR_GET_ZERO_ZOOM: u32 = 1107; +pub const NET_DVR_NATASSOCIATECFG_GET: u32 = 1110; +pub const NET_DVR_NATASSOCIATECFG_SET: u32 = 1111; +pub const NET_DVR_GET_SNMPCFG: u32 = 1112; +pub const NET_DVR_SET_SNMPCFG: u32 = 1113; +pub const NET_DVR_GET_SNMPCFG_V30: u32 = 1114; +pub const NET_DVR_SET_SNMPCFG_V30: u32 = 1115; +pub const NET_DVR_VIDEOPLATFORMALARMCFG_GET: u32 = 1130; +pub const NET_DVR_VIDEOPLATFORMALARMCFG_SET: u32 = 1131; +pub const NET_DVR_GET_RAID_ADAPTER_INFO: u32 = 1134; +pub const NET_DVR_SET_RAID_ADAPTER_INFO: u32 = 1135; +pub const NET_DVR_MATRIX_BIGSCREENCFG_GET: u32 = 1140; +pub const NET_DVR_MATRIX_BIGSCREENCFG_SET: u32 = 1141; +pub const NET_DVR_GET_MB_PLATFORMPARA: u32 = 1145; +pub const NET_DVR_SET_MB_PLATFORMPARA: u32 = 1146; +pub const NET_DVR_GET_MB_DEVSTATUS: u32 = 1147; +pub const NET_DVR_GET_DECODER_JOINT_CHAN: u32 = 1151; +pub const NET_DVR_SET_DECODER_JOINT_CHAN: u32 = 1152; +pub const NET_DVR_GET_NETCFG_MULTI: u32 = 1161; +pub const NET_DVR_SET_NETCFG_MULTI: u32 = 1162; +pub const NET_DVR_GET_NETCFG_MULTI_V50: u32 = 1163; +pub const NET_DVR_SET_NETCFG_MULTI_V50: u32 = 1164; +pub const NET_DVR_GET_CMSPARA: u32 = 1170; +pub const NET_DVR_SET_CMSPARA: u32 = 1171; +pub const NET_DVR_GET_DIALSTATUS: u32 = 1172; +pub const NET_DVR_GET_SMSRELATIVEPARA: u32 = 1173; +pub const NET_DVR_SET_SMSRELATIVEPARA: u32 = 1174; +pub const NET_DVR_GET_PINSTATUS: u32 = 1175; +pub const NET_DVR_SET_PINCMD: u32 = 1176; +pub const NET_DVR_SET_SENSOR_CFG: u32 = 1180; +pub const NET_DVR_GET_SENSOR_CFG: u32 = 1181; +pub const NET_DVR_SET_ALARMIN_PARAM: u32 = 1182; +pub const NET_DVR_GET_ALARMIN_PARAM: u32 = 1183; +pub const NET_DVR_SET_ALARMOUT_PARAM: u32 = 1184; +pub const NET_DVR_GET_ALARMOUT_PARAM: u32 = 1185; +pub const NET_DVR_SET_SIREN_PARAM: u32 = 1186; +pub const NET_DVR_GET_SIREN_PARAM: u32 = 1187; +pub const NET_DVR_SET_ALARM_RS485CFG: u32 = 1188; +pub const NET_DVR_GET_ALARM_RS485CFG: u32 = 1189; +pub const NET_DVR_GET_ALARMHOST_MAIN_STATUS: u32 = 1190; +pub const NET_DVR_GET_ALARMHOST_OTHER_STATUS: u32 = 1191; +pub const NET_DVR_SET_ALARMHOST_ENABLECFG: u32 = 1192; +pub const NET_DVR_GET_ALARMHOST_ENABLECFG: u32 = 1193; +pub const NET_DVR_SET_ALARM_CAMCFG: u32 = 1194; +pub const NET_DVR_GET_ALARM_CAMCFG: u32 = 1195; +pub const NET_DVR_GET_GATEWAY_CFG: u32 = 1196; +pub const NET_DVR_SET_GATEWAY_CFG: u32 = 1197; +pub const NET_DVR_GET_ALARMDIALMODECFG: u32 = 1198; +pub const NET_DVR_SET_ALARMDIALMODECFG: u32 = 1199; +pub const NET_DVR_SET_ALARMIN_PARAM_V50: u32 = 1200; +pub const NET_DVR_GET_ALARMIN_PARAM_V50: u32 = 1201; +pub const NET_DVR_SET_WINCFG: u32 = 1202; +pub const NET_DVR_GET_ALARMHOSTDIALSETUPMODE: u32 = 1204; +pub const NET_DVR_SET_ALARMHOSTDIALSETUPMODE: u32 = 1205; +pub const NET_DVR_SET_SUBSYSTEM_ALARM: u32 = 1210; +pub const NET_DVR_GET_SUBSYSTEM_ALARM: u32 = 1211; +pub const NET_DVR_GET_ALLOWLIST_ALARM: u32 = 1215; +pub const NET_DVR_SET_ALLOWLIST_ALARM: u32 = 1216; +pub const NET_DVR_GET_ALARMHOST_MODULE_LIST: u32 = 1222; +pub const NET_DVR_SET_PRIOR_ALARM: u32 = 1223; +pub const NET_DVR_GET_PRIOR_ALARM: u32 = 1224; +pub const NET_DVR_SET_TAMPER_ALARMIN_PARAM: u32 = 1225; +pub const NET_DVR_GET_TAMPER_ALARMIN_PARAM: u32 = 1226; +pub const NET_DVR_GET_HOLIDAY_PARAM_CFG: u32 = 1240; +pub const NET_DVR_SET_HOLIDAY_PARAM_CFG: u32 = 1241; +pub const NET_DVR_GET_MOTION_HOLIDAY_HANDLE: u32 = 1242; +pub const NET_DVR_SET_MOTION_HOLIDAY_HANDLE: u32 = 1243; +pub const NET_DVR_GET_VILOST_HOLIDAY_HANDLE: u32 = 1244; +pub const NET_DVR_SET_VILOST_HOLIDAY_HANDLE: u32 = 1245; +pub const NET_DVR_GET_HIDE_HOLIDAY_HANDLE: u32 = 1246; +pub const NET_DVR_SET_HIDE_HOLIDAY_HANDLE: u32 = 1247; +pub const NET_DVR_GET_ALARMIN_HOLIDAY_HANDLE: u32 = 1248; +pub const NET_DVR_SET_ALARMIN_HOLIDAY_HANDLE: u32 = 1249; +pub const NET_DVR_GET_ALARMOUT_HOLIDAY_HANDLE: u32 = 1250; +pub const NET_DVR_SET_ALARMOUT_HOLIDAY_HANDLE: u32 = 1251; +pub const NET_DVR_GET_HOLIDAY_RECORD: u32 = 1252; +pub const NET_DVR_SET_HOLIDAY_RECORD: u32 = 1253; +pub const NET_DVR_GET_NETWORK_BONDING: u32 = 1254; +pub const NET_DVR_SET_NETWORK_BONDING: u32 = 1255; +pub const NET_DVR_GET_LINK_STATUS: u32 = 1256; +pub const NET_DVR_GET_DISK_QUOTA_CFG: u32 = 1278; +pub const NET_DVR_SET_DISK_QUOTA_CFG: u32 = 1279; +pub const NET_DVR_GET_JPEG_CAPTURE_CFG: u32 = 1280; +pub const NET_DVR_SET_JPEG_CAPTURE_CFG: u32 = 1281; +pub const NET_DVR_GET_SCHED_CAPTURECFG: u32 = 1282; +pub const NET_DVR_SET_SCHED_CAPTURECFG: u32 = 1283; +pub const NET_DVR_GET_VGA_PREVIEWCFG: u32 = 1284; +pub const NET_DVR_SET_VGA_PREVIEWCFG: u32 = 1285; +pub const NET_DVR_GET_VIDEO_INPUT_EFFECT: u32 = 1286; +pub const NET_DVR_SET_VIDEO_INPUT_EFFECT: u32 = 1287; +pub const NET_DVR_GET_STORAGE_SERVER_SWITCH: u32 = 1290; +pub const NET_DVR_SET_STORAGE_SERVER_SWITCH: u32 = 1291; +pub const NET_DVR_GET_DISK_QUOTA_CFG_V60: u32 = 1292; +pub const NET_DVR_SET_DISK_QUOTA_CFG_V60: u32 = 1293; +pub const NET_DVR_GET_OPTICAL_CHANNEL: u32 = 1300; +pub const NET_DVR_SET_OPTICAL_CHANNEL: u32 = 1301; +pub const NET_DVR_GET_FIBER_CASCADE: u32 = 1302; +pub const NET_DVR_SET_FIBER_CASCADE: u32 = 1303; +pub const NET_DVR_GET_SPARTAN_STATUS: u32 = 1304; +pub const NET_DVR_SET_SPARTAN_STATUS: u32 = 1305; +pub const NET_DVR_GET_ETHERNET_CHANNEL: u32 = 1306; +pub const NET_DVR_SET_ETHERMET_CHANNEL: u32 = 1307; +pub const NET_DVR_OPTICAL_REBOOT: u32 = 1320; +pub const NET_DVR_SET_AUDIOCHAN_CFG: u32 = 1321; +pub const NET_DVR_GET_AUDIOCHAN_CFG: u32 = 1322; +pub const NET_DVR_SET_MATRIX_BASE_CFG: u32 = 1332; +pub const NET_DVR_GET_MATRIX_BASE_CFG: u32 = 1333; +pub const NET_DVR_SWITCH_MATRIX_IO: u32 = 1334; +pub const NET_DVR_GET_MATRIX_IO_RELATION: u32 = 1335; +pub const NET_DVR_V6PSUBSYSTEMARAM_GET: u32 = 1501; +pub const NET_DVR_V6PSUBSYSTEMARAM_SET: u32 = 1502; +pub const NET_DVR_GET_ALLWINCFG: u32 = 1503; +pub const NET_DVR_BIGSCREENASSOCIATECFG_GET: u32 = 1511; +pub const NET_DVR_BIGSCREENASSOCIATECFG_SET: u32 = 1512; +pub const NET_DVR_GETSCREENINFO: u32 = 1601; +pub const NET_DVR_SETSCREENINFO: u32 = 1602; +pub const NET_DVR_GET_SCREEN_WINCFG: u32 = 1603; +pub const NET_DVR_LAYOUTLIST_GET: u32 = 1605; +pub const NET_DVR_SET_LAYOUTCFG: u32 = 1606; +pub const NET_DVR_LAYOUTCTRL: u32 = 1607; +pub const NET_DVR_INPUTLIST_GET: u32 = 1608; +pub const NET_DVR_SET_INPUTSTREAMCFG: u32 = 1609; +pub const NET_DVR_OUTPUT_SET: u32 = 1610; +pub const NET_DVR_OUTPUT_GET: u32 = 1611; +pub const NET_DVR_SET_OSDCFG: u32 = 1612; +pub const NET_DVR_GET_OSDCFG: u32 = 1613; +pub const NET_DVR_BIGSCREEN_GETSERIAL: u32 = 1614; +pub const NET_DVR_GET_PLANLIST: u32 = 1615; +pub const NET_DVR_SET_PLAN: u32 = 1616; +pub const NET_DVR_CTRL_PLAN: u32 = 1617; +pub const NET_DVR_GET_DEVICE_RUN_STATUS: u32 = 1618; +pub const NET_DVR_GET_EXTERNAL_MATRIX_CFG: u32 = 1619; +pub const NET_DVR_SET_EXTERNAL_MATRIX_CFG: u32 = 1620; +pub const NET_DVR_GET_OUTPUT_SCREEN_RELATION: u32 = 1621; +pub const NET_DVR_SET_OUTPUT_SCREEN_RELATION: u32 = 1622; +pub const NET_DVR_GET_VCS_USER_CFG: u32 = 1623; +pub const NET_DVR_SET_VCS_USER_CFG: u32 = 1624; +pub const NET_DVR_CONTROL_SCREEN: u32 = 1625; +pub const NET_DVR_GET_EXTERNAL_MATRIX_CFG_V50: u32 = 1626; +pub const NET_DVR_SET_EXTERNAL_MATRIX_CFG_V50: u32 = 1627; +pub const NET_DVR_GET_DEV_BASEINFO: u32 = 1650; +pub const NET_DVR_SET_DEV_BASEINFO: u32 = 1651; +pub const NET_DVR_GET_DEV_NETINFO: u32 = 1652; +pub const NET_DVR_SET_DEV_NETINFO: u32 = 1653; +pub const NET_DVR_GET_SIGNAL_SOURCE_INFO: u32 = 1654; +pub const NET_DVR_SET_SIGNAL_SOURCE_INFO: u32 = 1655; +pub const NET_DVR_ADJUST_PIC_V40: u32 = 1656; +pub const NET_DVR_RESTORE_V40: u32 = 1657; +pub const NET_DVR_SET_NET_SIGNAL: u32 = 1658; +pub const NET_DVR_REBOOT_V40: u32 = 1659; +pub const NET_DVR_CONTROL_PICTURE_V41: u32 = 1660; +pub const NET_DVR_GET_AUTO_REBOOT_CFG: u32 = 1710; +pub const NET_DVR_SET_AUTO_REBOOT_CFG: u32 = 1711; +pub const NET_DVR_GET_TRUNK_USE_STATE: u32 = 1713; +pub const NET_DVR_SET_PTZ_CTRL_INFO: u32 = 1714; +pub const NET_DVR_GET_PTZ_CTRL_INFO: u32 = 1715; +pub const NET_DVR_GET_PTZ_STATUS: u32 = 1716; +pub const NET_DVR_GET_DISP_ROUTE_LIST: u32 = 1717; +pub const NET_DVR_GET_DEC_RESOURCE_LIST: u32 = 1720; +pub const NET_DVR_SET_DEC_RESOURCE_LIST: u32 = 1721; +pub const NET_DVR_GET_DEC_YUV: u32 = 1722; +pub const NET_DVR_SET_DEC_YUV: u32 = 1723; +pub const NET_DVR_GET_DEC_RESOUCE: u32 = 1724; +pub const NET_DVR_FREE_DEC_RESOURCE: u32 = 1725; +pub const NET_DVR_SET_VIDEOWALLDISPLAYMODE: u32 = 1730; +pub const NET_DVR_GET_VIDEOWALLDISPLAYMODE: u32 = 1731; +pub const NET_DVR_GET_VIDEOWALLDISPLAYNO: u32 = 1732; +pub const NET_DVR_SET_VIDEOWALLDISPLAYPOSITION: u32 = 1733; +pub const NET_DVR_GET_VIDEOWALLDISPLAYPOSITION: u32 = 1734; +pub const NET_DVR_GET_VIDEOWALLWINDOWPOSITION: u32 = 1735; +pub const NET_DVR_SET_VIDEOWALLWINDOWPOSITION: u32 = 1736; +pub const NET_DVR_VIDEOWALLWINDOW_CLOSEALL: u32 = 1737; +pub const NET_DVR_SET_VIRTUALLED: u32 = 1738; +pub const NET_DVR_GET_VIRTUALLED: u32 = 1739; +pub const NET_DVR_GET_IMAGE_CUT_MODE: u32 = 1740; +pub const NET_DVR_SET_IMAGE_CUT_MODE: u32 = 1741; +pub const NET_DVR_GET_USING_SERIALPORT: u32 = 1742; +pub const NET_DVR_SET_USING_SERIALPORT: u32 = 1743; +pub const NET_DVR_SCENE_CONTROL: u32 = 1744; +pub const NET_DVR_GET_CURRENT_SCENE: u32 = 1745; +pub const NET_DVR_GET_VW_SCENE_PARAM: u32 = 1746; +pub const NET_DVR_SET_VW_SCENE_PARAM: u32 = 1747; +pub const NET_DVR_DISPLAY_CHANNO_CONTROL: u32 = 1748; +pub const NET_DVR_GET_WIN_DEC_INFO: u32 = 1749; +pub const NET_DVR_RESET_VIDEOWALLDISPLAYPOSITION: u32 = 1750; +pub const NET_DVR_SET_VW_AUDIO_CFG: u32 = 1752; +pub const NET_DVR_GET_VW_AUDIO_CFG: u32 = 1753; +pub const NET_DVR_GET_GBT28181_DECCHANINFO_CFG: u32 = 1754; +pub const NET_DVR_SET_GBT28181_DECCHANINFO_CFG: u32 = 1755; +pub const NET_DVR_SET_MAINBOARD_SERIAL: u32 = 1756; +pub const NET_DVR_GET_MAINBOARD_SERIAL: u32 = 1757; +pub const NET_DVR_GET_SUBBOARD_INFO: u32 = 1758; +pub const NET_DVR_GET_SUBBOARD_EXCEPTION: u32 = 1759; +pub const NET_DVR_GET_CAMERACHAN_SERIALCFG: u32 = 1760; +pub const NET_DVR_SET_CAMERACHAN_SERIALCFG: u32 = 1761; +pub const NET_DVR_GET_MATRIX_STATUS: u32 = 1762; +pub const NET_SET_MULTIFUNCTION_SERIALCFG: u32 = 1763; +pub const NET_GET_MULTIFUNCTION_SERIALCFG: u32 = 1764; +pub const NET_DVR_PTZ_3D_SPEED: u32 = 1765; +pub const NET_DVR_GET_SIGNAL_JOINT: u32 = 1766; +pub const NET_DVR_SET_SIGNAL_JOINT: u32 = 1767; +pub const NET_DVR_SIGNAL_CUT: u32 = 1768; +pub const NET_DVR_DYNAMIC_DECODE_BATCH: u32 = 1769; +pub const NET_DVR_DECSWITCH_SET_BATCH: u32 = 1770; +pub const NET_DVR_DECSWITCH_GET_BATCH: u32 = 1771; +pub const NET_DVR_GET_ALL_SIGNAL_JOINT: u32 = 1772; +pub const NET_DVR_GET_PLAYING_PLAN: u32 = 1773; +pub const NET_DVR_WALL_RELATION_GET: u32 = 1774; +pub const NET_DVR_WALL_RELATION_SET: u32 = 1775; +pub const NET_DVR_SET_INPUTSTREAMCFG_V40: u32 = 1776; +pub const NET_DVR_PTZCFG_INPUTSTREAM_GET: u32 = 1777; +pub const NET_DVR_PTZCFG_INPUTSTREAM_SET: u32 = 1778; +pub const NET_DVR_SIGNAL_CUTPARAM_GET: u32 = 1779; +pub const NET_DVR_GET_SUBSYSTEM_NETCFG: u32 = 1780; +pub const NET_DVR_SET_SUBSYSTEM_NETCFG: u32 = 1781; +pub const NET_DVR_DEL_SIGNAL_JOINT: u32 = 1782; +pub const NET_DVR_GET_PICTURE_INFO: u32 = 1783; +pub const NET_DVR_SET_PICTURE_INFO: u32 = 1784; +pub const NET_DVR_GET_VIDEO_INFO: u32 = 1785; +pub const NET_DVR_SET_VIDEO_INFO: u32 = 1786; +pub const NET_DVR_SET_PLAYLIST: u32 = 1787; +pub const NET_DVR_GET_PLAYLIST: u32 = 1788; +pub const NET_DVR_GET_ALL_PLAYLIST: u32 = 1789; +pub const NET_DVR_PLAYITEM_CONTROL: u32 = 1790; +pub const NET_DVR_SET_PLAYPLAN_TEMPLATE: u32 = 1791; +pub const NET_DVR_GET_PLAYPLAN_TEMPLATE: u32 = 1792; +pub const NET_DVR_GET_ALL_PLAYPLAN_TEMPLATE: u32 = 1793; +pub const NET_DVR_SET_WINDOW_PLAYPLAN: u32 = 1794; +pub const NET_DVR_GET_WINDOW_PLAYPLAN: u32 = 1795; +pub const NET_DVR_TOPLAY_ITEM: u32 = 1796; +pub const NET_DVR_DEVICE_PLAY_CONTROL: u32 = 1797; +pub const NET_DVR_GET_PLAY_INFO: u32 = 1798; +pub const NET_DVR_GET_ALL_PICTURE_INFO: u32 = 1799; +pub const NET_DVR_GET_ALL_VIDEO_INFO: u32 = 1800; +pub const NET_DVR_DELETE_VIDEO_FILE: u32 = 1801; +pub const NET_DVR_GET_ALARMHOSTSUBSYSTEM_CFG: u32 = 2001; +pub const NET_DVR_SET_ALARMHOSTSUBSYSTEM_CFG: u32 = 2002; +pub const NET_DVR_GETEXTENDALARMININFO: u32 = 2003; +pub const NET_DVR_MODIFYALARMINNO: u32 = 2004; +pub const NET_DVR_GET_ALARMHOST_WIRELESS_NETWORK_CFG: u32 = 2005; +pub const NET_DVR_SET_ALARMHOST_WIRELESS_NETWORK_CFG: u32 = 2006; +pub const NET_DVR_GET_ALARMHOST_NETCFG: u32 = 2007; +pub const NET_DVR_SET_ALARMHOST_NETCFG: u32 = 2008; +pub const NET_DVR_GET_LED_SCREEN_CFG: u32 = 2009; +pub const NET_DVR_SET_LED_SCREEN_CFG: u32 = 2010; +pub const NET_DVR_GET_LED_CONTENT_CFG: u32 = 2011; +pub const NET_DVR_SET_LED_CONTENT_CFG: u32 = 2012; +pub const NET_DVR_TURNON_LED: u32 = 2013; +pub const NET_DVR_TURNOFF_LED: u32 = 2014; +pub const NET_DVR_GET_LED_TIMER_SWITCH: u32 = 2015; +pub const NET_DVR_SET_LED_TIMER_SWITCH: u32 = 2016; +pub const NET_DVR_SET_LED_BRIGHTNESS: u32 = 2017; +pub const NET_DVR_GET_LED_TIMER_BRIGHTNESS: u32 = 2018; +pub const NET_DVR_SET_LED_TIMER_BRIGHTNESS: u32 = 2019; +pub const NET_DVR_LED_CHECKTIME: u32 = 2020; +pub const NET_DVR_GET_ALARMHOST_AUDIO_ASSOCIATE_ALARM: u32 = 2021; +pub const NET_DVR_SET_ALARMHOST_AUDIO_ASSOCIATE_ALARM: u32 = 2022; +pub const NET_DVR_GET_LED_STATUS: u32 = 2023; +pub const NET_DVR_CLOSE_SUBSYSTEM_FAULT_ALARM: u32 = 2027; +pub const NET_DVR_SET_SUBSYSTEM_BYPASS: u32 = 2028; +pub const NET_DVR_CANCEL_SUBSYSTEM_BYPASS: u32 = 2029; +pub const NET_DVR_GET_ALARMHOST_SUBSYSTEM_CFG_EX: u32 = 2030; +pub const NET_DVR_SET_ALARMHOST_SUBSYSTEM_CFG_EX: u32 = 2031; +pub const NET_DVR_GET_ALARMHOST_PRINTER_CFG: u32 = 2032; +pub const NET_DVR_SET_ALARMHOST_PRINTER_CFG: u32 = 2033; +pub const NET_DVR_GET_ALARMHOST_ZONE_LIST_IN_SUBSYSTEM: u32 = 2034; +pub const NET_DVR_GET_ALARMHOST_TRIGGER_LIST: u32 = 2035; +pub const NET_DVR_ARM_ALARMHOST_SUBSYSTEM: u32 = 2036; +pub const NET_DVR_GET_ALARMHOST_EVENT_TRIG_ALARMOUT_CFG: u32 = 2037; +pub const NET_DVR_SET_ALARMHOST_EVENT_TRIG_ALARMOUT_CFG: u32 = 2038; +pub const NET_DVR_GET_ALARMHOST_FAULT_CFG: u32 = 2039; +pub const NET_DVR_SET_ALARMHOST_FAULT_CFG: u32 = 2040; +pub const NET_DVR_SEARCH_ARMHOST_EXTERNAL_MODULE: u32 = 2041; +pub const NET_DVR_REGISTER_ALARMHOST_EXTERNAL_MODULE: u32 = 2042; +pub const NET_DVR_CLOSE_ALARMHOST_OVERALL_FAULT_ALARM: u32 = 2043; +pub const NET_DVR_GET_SAFETYCABIN_WORK_MODE: u32 = 2044; +pub const NET_DVR_SET_SAFETYCABIN_WORK_MODE: u32 = 2045; +pub const NET_DVR_GET_SAFETYCABIN_PERSON_SIGNAL_CFG: u32 = 2046; +pub const NET_DVR_SET_SAFETYCABIN_PERSON_SIGNAL_CFG: u32 = 2047; +pub const NET_DVR_GET_ALARMHOST_MODULE_CFG: u32 = 2048; +pub const NET_DVR_GET_ALARMHOST_EXTERNAL_DEVICE_STATE: u32 = 2050; +pub const NET_DVR_SET_ALARMHOST_EXTERNAL_DEVICE_LIMIT_VALUE: u32 = 2051; +pub const NET_DVR_GET_ALARMHOST_EXTERNAL_DEVICE_LIMIT_VALUE: u32 = 2052; +pub const NET_DVR_GET_ALARMHOST_SENSOR_JOINT_CFG: u32 = 2053; +pub const NET_DVR_SET_ALARMHOST_SENSOR_JOINT_CFG: u32 = 2054; +pub const NET_DVR_SET_ALARMHOST_RS485_SLOT_CFG: u32 = 2055; +pub const NET_DVR_GET_ALARMHOST_RS485_SLOT_CFG: u32 = 2056; +pub const NET_DVR_GET_ALL_VARIABLE_INFO: u32 = 2057; +pub const NET_DVR_GET_ALARM_POINT_CFG: u32 = 2058; +pub const NET_DVR_SET_ALARM_POINT_CFG: u32 = 2059; +pub const NET_DVR_GET_HISTORY_VALUE: u32 = 2060; +pub const NET_DVR_GET_ALARMHOST_ALARM_MODE: u32 = 2061; +pub const NET_DVR_SET_ALARMHOST_ALARM_MODE: u32 = 2062; +pub const NET_DVR_GET_ALARMHOST_SENSOR_VALUE: u32 = 2063; +pub const NET_DVR_GET_ALARMHOST_REPORT_CENTER_V40: u32 = 2064; +pub const NET_DVR_SET_ALARMHOST_REPORT_CENTER_V40: u32 = 2065; +pub const NET_DVR_GET_OUTPUT_SCHEDULE_RULECFG: u32 = 2068; +pub const NET_DVR_SET_OUTPUT_SCHEDULE_RULECFG: u32 = 2069; +pub const NET_DVR_GET_CMS_CFG: u32 = 2070; +pub const NET_DVR_SET_CMS_CFG: u32 = 2071; +pub const NET_DVR_GET_PASSTHROUGH_CAP: u32 = 2073; +pub const NET_DVR_GET_ALARMHOST_MAIN_STATUS_V40: u32 = 2072; +pub const NET_DVR_GET_ALARMHOST_MAIN_STATUS_V51: u32 = 2083; +pub const NET_DVR_GET_ALARM_CAPTRUE_CFG: u32 = 2074; +pub const NET_DVR_SET_ALARM_CAPTRUE_CFG: u32 = 2075; +pub const NET_DVR_GET_ONE_OUTPUT_SCH_RULECFG_V40: u32 = 2078; +pub const NET_DVR_SET_ONE_OUTPUT_SCH_RULECFG_V40: u32 = 2079; +pub const NET_DVR_GET_OUTPUT_SCHEDULE_RULECFG_V40: u32 = 2080; +pub const NET_DVR_SET_OUTPUT_SCHEDULE_RULECFG_V40: u32 = 2081; +pub const NET_DVR_ALARMHOST_CLOSE_SUBSYSTEM: u32 = 2082; +pub const NET_DVR_GET_WEEK_PLAN_CFG: u32 = 2100; +pub const NET_DVR_SET_WEEK_PLAN_CFG: u32 = 2101; +pub const NET_DVR_GET_DOOR_STATUS_HOLIDAY_PLAN: u32 = 2102; +pub const NET_DVR_SET_DOOR_STATUS_HOLIDAY_PLAN: u32 = 2103; +pub const NET_DVR_GET_DOOR_STATUS_HOLIDAY_GROUP: u32 = 2104; +pub const NET_DVR_SET_DOOR_STATUS_HOLIDAY_GROUP: u32 = 2105; +pub const NET_DVR_GET_DOOR_STATUS_PLAN_TEMPLATE: u32 = 2106; +pub const NET_DVR_SET_DOOR_STATUS_PLAN_TEMPLATE: u32 = 2107; +pub const NET_DVR_GET_DOOR_CFG: u32 = 2108; +pub const NET_DVR_SET_DOOR_CFG: u32 = 2109; +pub const NET_DVR_GET_DOOR_STATUS_PLAN: u32 = 2110; +pub const NET_DVR_SET_DOOR_STATUS_PLAN: u32 = 2111; +pub const NET_DVR_GET_GROUP_CFG: u32 = 2112; +pub const NET_DVR_SET_GROUP_CFG: u32 = 2113; +pub const NET_DVR_GET_MULTI_CARD_CFG: u32 = 2114; +pub const NET_DVR_SET_MULTI_CARD_CFG: u32 = 2115; +pub const NET_DVR_GET_CARD_CFG: u32 = 2116; +pub const NET_DVR_SET_CARD_CFG: u32 = 2117; +pub const NET_DVR_CLEAR_ACS_PARAM: u32 = 2118; +pub const NET_DVR_GET_SNEAK_CFG: u32 = 2119; +pub const NET_DVR_SET_SNEAK_CFG: u32 = 2120; +pub const NET_DVR_GET_MULTI_DOOR_INTERLOCK_CFG: u32 = 2121; +pub const NET_DVR_SET_MULTI_DOOR_INTERLOCK_CFG: u32 = 2122; +pub const NET_DVR_GET_ACS_WORK_STATUS: u32 = 2123; +pub const NET_DVR_GET_VERIFY_WEEK_PLAN: u32 = 2124; +pub const NET_DVR_SET_VERIFY_WEEK_PLAN: u32 = 2125; +pub const NET_DVR_GET_CARD_RIGHT_WEEK_PLAN: u32 = 2126; +pub const NET_DVR_SET_CARD_RIGHT_WEEK_PLAN: u32 = 2127; +pub const NET_DVR_GET_VERIFY_HOLIDAY_PLAN: u32 = 2128; +pub const NET_DVR_SET_VERIFY_HOLIDAY_PLAN: u32 = 2129; +pub const NET_DVR_GET_CARD_RIGHT_HOLIDAY_PLAN: u32 = 2130; +pub const NET_DVR_SET_CARD_RIGHT_HOLIDAY_PLAN: u32 = 2131; +pub const NET_DVR_GET_VERIFY_HOLIDAY_GROUP: u32 = 2132; +pub const NET_DVR_SET_VERIFY_HOLIDAY_GROUP: u32 = 2133; +pub const NET_DVR_GET_CARD_RIGHT_HOLIDAY_GROUP: u32 = 2134; +pub const NET_DVR_SET_CARD_RIGHT_HOLIDAY_GROUP: u32 = 2135; +pub const NET_DVR_GET_VERIFY_PLAN_TEMPLATE: u32 = 2136; +pub const NET_DVR_SET_VERIFY_PLAN_TEMPLATE: u32 = 2137; +pub const NET_DVR_GET_CARD_RIGHT_PLAN_TEMPLATE: u32 = 2138; +pub const NET_DVR_SET_CARD_RIGHT_PLAN_TEMPLATE: u32 = 2139; +pub const NET_DVR_GET_CARD_READER_CFG: u32 = 2140; +pub const NET_DVR_SET_CARD_READER_CFG: u32 = 2141; +pub const NET_DVR_GET_CARD_READER_PLAN: u32 = 2142; +pub const NET_DVR_SET_CARD_READER_PLAN: u32 = 2143; +pub const NET_DVR_GET_CASE_SENSOR_CFG: u32 = 2144; +pub const NET_DVR_SET_CASE_SENSOR_CFG: u32 = 2145; +pub const NET_DVR_GET_CARD_READER_ANTI_SNEAK_CFG: u32 = 2146; +pub const NET_DVR_SET_CARD_READER_ANTI_SNEAK_CFG: u32 = 2147; +pub const NET_DVR_GET_PHONE_DOOR_RIGHT_CFG: u32 = 2148; +pub const NET_DVR_SET_PHONE_DOOR_RIGHT_CFG: u32 = 2149; +pub const NET_DVR_GET_FINGERPRINT_CFG: u32 = 2150; +pub const NET_DVR_SET_FINGERPRINT_CFG: u32 = 2151; +pub const NET_DVR_DEL_FINGERPRINT_CFG: u32 = 2152; +pub const NET_DVR_GET_EVENT_CARD_LINKAGE_CFG: u32 = 2153; +pub const NET_DVR_SET_EVENT_CARD_LINKAGE_CFG: u32 = 2154; +pub const NET_DVR_GET_ANTI_SNEAK_HOST_CFG: u32 = 2155; +pub const NET_DVR_SET_ANTI_SNEAK_HOST_CFG: u32 = 2156; +pub const NET_DVR_GET_READER_ANTI_SNEAK_HOST_CFG: u32 = 2157; +pub const NET_DVR_SET_READER_ANTI_SNEAK_HOST_CFG: u32 = 2158; +pub const NET_DVR_GET_ACS_CFG: u32 = 2159; +pub const NET_DVR_SET_ACS_CFG: u32 = 2160; +pub const NET_DVR_GET_CARD_PASSWD_CFG: u32 = 2161; +pub const NET_DVR_SET_CARD_PASSWD_CFG: u32 = 2162; +pub const NET_DVR_GET_CARD_USERINFO_CFG: u32 = 2163; +pub const NET_DVR_SET_CARD_USERINFO_CFG: u32 = 2164; +pub const NET_DVR_GET_ACS_EXTERNAL_DEV_CFG: u32 = 2165; +pub const NET_DVR_SET_ACS_EXTERNAL_DEV_CFG: u32 = 2166; +pub const NET_DVR_GET_PERSONNEL_CHANNEL_CFG: u32 = 2167; +pub const NET_DVR_SET_PERSONNEL_CHANNEL_CFG: u32 = 2168; +pub const NET_DVR_SET_PLATFORM_VERIFY_CFG: u32 = 2169; +pub const NET_DVR_GET_PERSON_STATISTICS_CFG: u32 = 2170; +pub const NET_DVR_SET_PERSON_STATISTICS_CFG: u32 = 2171; +pub const NET_DVR_GET_ACS_SCREEN_DISPLAY_CFG: u32 = 2172; +pub const NET_DVR_SET_ACS_SCREEN_DISPLAY_CFG: u32 = 2173; +pub const NET_DVR_GET_GATE_TIME_CFG: u32 = 2174; +pub const NET_DVR_SET_GATE_TIME_CFG: u32 = 2175; +pub const NET_DVR_GET_LOCAL_CONTROLLER_STATUS: u32 = 2176; +pub const NET_DVR_GET_ONLINE_LOCAL_CONTROLLER: u32 = 2177; +pub const NET_DVR_GET_CARD_CFG_V50: u32 = 2178; +pub const NET_DVR_SET_CARD_CFG_V50: u32 = 2179; +pub const NET_DVR_GET_ACS_WORK_STATUS_V50: u32 = 2180; +pub const NET_DVR_GET_EVENT_CARD_LINKAGE_CFG_V50: u32 = 2181; +pub const NET_DVR_SET_EVENT_CARD_LINKAGE_CFG_V50: u32 = 2182; +pub const NET_DVR_GET_FINGERPRINT_CFG_V50: u32 = 2183; +pub const NET_DVR_SET_FINGERPRINT_CFG_V50: u32 = 2184; +pub const NET_DVR_GET_SAFETYCABIN_STATE: u32 = 2197; +pub const NET_DVR_GET_RS485_CASCADE_CFG: u32 = 2198; +pub const NET_DVR_SET_RS485_CASCADE_CFG: u32 = 2199; +pub const NET_DVR_GET_REMOTECONTROLLER_PERMISION_CFG: u32 = 2200; +pub const NET_DVR_SET_REMOTECONTROLLER_PERMISION_CFG: u32 = 2201; +pub const NET_DVR_GET_KEYBOARD_CFG: u32 = 2202; +pub const NET_DVR_SET_KEYBOARD_CFG: u32 = 2203; +pub const NET_DVR_GET_ALARMHOST_WIRELESS_BUSINNESS_INFO: u32 = 2204; +pub const NET_DVR_GET_ALL_REMOTECONTROLLER_LIST: u32 = 2205; +pub const NET_DVR_GET_PREVIEW_DELAY_CFG: u32 = 2206; +pub const NET_DVR_SET_PREVIEW_DELAY_CFG: u32 = 2207; +pub const NET_DVR_GET_ZONE_CHANNEL_LINKAGE_CFG: u32 = 2208; +pub const NET_DVR_SET_ZONE_CHANNEL_LINKAGE_CFG: u32 = 2209; +pub const NET_DVR_GET_CENTER_SERVER_CFG: u32 = 2210; +pub const NET_DVR_SET_CENTER_SERVER_CFG: u32 = 2211; +pub const NET_DVR_GET_EMERGENCE_ALARM_PRODUCT_CAP: u32 = 2212; +pub const NET_DVR_GET_CALL_WAITTING_CFG_CAP: u32 = 2213; +pub const NET_DVR_GET_CALL_WAITTING_CFG: u32 = 2214; +pub const NET_DVR_SET_CALL_WAITTING_CFG: u32 = 2215; +pub const NET_DVR_GET_ALARM_LAMP_CFG_CAP: u32 = 2216; +pub const NET_DVR_GET_ALARM_LAMP_CFG: u32 = 2217; +pub const NET_DVR_SET_ALARM_LAMP_CFG: u32 = 2218; +pub const NET_DVR_GET_VOICE_PROMPTION_CFG_CAP: u32 = 2219; +pub const NET_DVR_GET_VOICE_PROMPTION_CFG: u32 = 2220; +pub const NET_DVR_SET_VOICE_PROMPTION_CFG: u32 = 2221; +pub const NET_DVR_GET_EMERGENCE_ALARM_RESPONSE_CAP: u32 = 2222; +pub const NET_DVR_EMERGENCE_ALARM_RESPONSE_CTRL: u32 = 2223; +pub const NET_DVR_GET_ALARMHOST_NETCFG_V50: u32 = 2224; +pub const NET_DVR_SET_ALARMHOST_NETCFG_V50: u32 = 2225; +pub const NET_DVR_REGISTER_ALARM_RS485: u32 = 2226; +pub const NET_DVR_GET_ALARMIN_PARAM_LIST: u32 = 2227; +pub const NET_DVR_GET_ALARMHOST_OTHER_STATUS_V50: u32 = 2228; +pub const NET_DVR_GET_ALARMHOST_OTHER_STATUS_V51: u32 = 2236; +pub const NET_DVR_GET_ALARMIN_ASSOCIATED_CHAN_LIST: u32 = 2229; +pub const NET_DVR_GET_ALARMIN_TRIGGER: u32 = 2230; +pub const NET_DVR_SET_ALARMIN_TRIGGER: u32 = 2231; +pub const NET_DVR_GET_EMERGENCY_CALL_HELP_TRIGGER: u32 = 2232; +pub const NET_DVR_SET_EMERGENCY_CALL_HELP_TRIGGER: u32 = 2233; +pub const NET_DVR_GET_CONSULT_TRIGGER: u32 = 2234; +pub const NET_DVR_SET_CONSULT_TRIGGER: u32 = 2235; +pub const NET_DVR_GET_ALARMIN_PARAM_LIST_V50: u32 = 2237; +pub const NET_DVR_GET_CARD_RIGHT_WEEK_PLAN_V50: u32 = 2304; +pub const NET_DVR_SET_CARD_RIGHT_WEEK_PLAN_V50: u32 = 2305; +pub const NET_DVR_GET_CARD_RIGHT_HOLIDAY_PLAN_V50: u32 = 2310; +pub const NET_DVR_SET_CARD_RIGHT_HOLIDAY_PLAN_V50: u32 = 2311; +pub const NET_DVR_GET_CARD_RIGHT_HOLIDAY_GROUP_V50: u32 = 2316; +pub const NET_DVR_SET_CARD_RIGHT_HOLIDAY_GROUP_V50: u32 = 2317; +pub const NET_DVR_GET_CARD_RIGHT_PLAN_TEMPLATE_V50: u32 = 2322; +pub const NET_DVR_SET_CARD_RIGHT_PLAN_TEMPLATE_V50: u32 = 2323; +pub const NET_DVR_GET_SCHEDULE_INFO: u32 = 2500; +pub const NET_DVR_GET_ATTENDANCE_SUMMARY_INFO: u32 = 2501; +pub const NET_DVR_GET_ATTENDANCE_RECORD_INFO: u32 = 2502; +pub const NET_DVR_GET_ABNORMAL_INFO: u32 = 2503; +pub const NET_DVR_CAPTURE_FINGERPRINT_INFO: u32 = 2504; +pub const NET_DVR_BULK_UPLOAD_BLOCKLIST_PICTURE: u32 = 2520; +pub const NET_DVR_BULK_UPLOAD_ID_BLOCKLIST: u32 = 2521; +pub const NET_DVR_GET_FAILED_FACE_INFO: u32 = 2522; +pub const NET_DVR_GET_FACE_AND_TEMPLATE: u32 = 2523; +pub const NET_DVR_SET_FACE_AND_TEMPLATE: u32 = 2524; +pub const NET_DVR_GET_CARD_READER_CFG_V50: u32 = 2505; +pub const NET_DVR_SET_CARD_READER_CFG_V50: u32 = 2506; +pub const NET_DVR_GET_FACE_PARAM_CFG: u32 = 2507; +pub const NET_DVR_SET_FACE_PARAM_CFG: u32 = 2508; +pub const NET_DVR_DEL_FACE_PARAM_CFG: u32 = 2509; +pub const NET_DVR_CAPTURE_FACE_INFO: u32 = 2510; +pub const NET_DVR_GET_REGISTER_INFO: u32 = 2511; +pub const NET_DVR_GET_SMSRELATIVEPARA_V50: u32 = 2512; +pub const NET_DVR_SET_SMSRELATIVEPARA_V50: u32 = 2513; +pub const NET_DVR_GET_ACS_EVENT: u32 = 2514; +pub const NET_DVR_GET_MULTI_CARD_CFG_V50: u32 = 2515; +pub const NET_DVR_SET_MULTI_CARD_CFG_V50: u32 = 2516; +pub const NET_DVR_DEL_FINGERPRINT_CFG_V50: u32 = 2517; +pub const NET_DVR_GET_EVENT_CARD_LINKAGE_CFG_V51: u32 = 2518; +pub const NET_DVR_SET_EVENT_CARD_LINKAGE_CFG_V51: u32 = 2519; +pub const NET_DVR_SET_EXAM_INFO: u32 = 2530; +pub const NET_DVR_SET_EXAMINEE_INFO: u32 = 2531; +pub const NET_DVR_SEARCH_EXAM_COMPARE_RESULT: u32 = 2532; +pub const NET_DVR_BULK_CHECK_FACE_PICTURE: u32 = 2533; +pub const NET_DVR_JSON_CONFIG: u32 = 2550; +pub const NET_DVR_FACE_DATA_RECORD: u32 = 2551; +pub const NET_DVR_FACE_DATA_SEARCH: u32 = 2552; +pub const NET_DVR_FACE_DATA_MODIFY: u32 = 2553; +pub const NET_DVR_CAPTURE_DATA_SEARCH: u32 = 2554; +pub const NET_DVR_SET_FORM_DATA: u32 = 2555; +pub const NET_DVR_GET_FORM_DATA: u32 = 2556; +pub const NET_DVR_GET_CARD: u32 = 2560; +pub const NET_DVR_SET_CARD: u32 = 2561; +pub const NET_DVR_DEL_CARD: u32 = 2562; +pub const NET_DVR_GET_FINGERPRINT: u32 = 2563; +pub const NET_DVR_SET_FINGERPRINT: u32 = 2564; +pub const NET_DVR_DEL_FINGERPRINT: u32 = 2565; +pub const NET_DVR_GET_FACE: u32 = 2566; +pub const NET_DVR_SET_FACE: u32 = 2567; +pub const NET_DVR_GET_ALL_ALARM_RS485CFG: u32 = 2705; +pub const NET_DVR_GET_ALL_ALARMHOST_RS485_SLOT_CFG: u32 = 2706; +pub const NET_DVR_GET_DEVICE_SELF_CHECK_STATE: u32 = 2707; +pub const NET_DVR_GET_ALL_ALARM_POINT_CFG: u32 = 2708; +pub const NET_DVR_GET_ALL_ALARM_SENSOR_CFG: u32 = 2709; +pub const NET_DVR_GET_ALL_ALARM_SENSOR_JOINT: u32 = 2710; +pub const NET_DVR_GET_AIR_CONDITION_PARAM: u32 = 2711; +pub const NET_DVR_GET_OUT_SCALE_CFG: u32 = 2712; +pub const NET_DVR_SET_OUT_SCALE_CFG: u32 = 2713; +pub const NET_DVR_GET_ALARM_CHAN_ABLITITY: u32 = 2714; +pub const NET_DVR_GET_ALARMCENTER_NETCFG: u32 = 2715; +pub const NET_DVR_SET_ALARMCENTER_NETCFG: u32 = 2716; +pub const NET_ITC_GET_TRIGGERCFG: u32 = 3003; +pub const NET_ITC_SET_TRIGGERCFG: u32 = 3004; +pub const NET_ITC_GET_IOOUT_PARAM_CFG: u32 = 3005; +pub const NET_ITC_SET_IOOUT_PARAM_CFG: u32 = 3006; +pub const NET_DVR_GET_CAMERA_SETUPCFG: u32 = 3007; +pub const NET_DVR_SET_CAMERA_SETUPCFG: u32 = 3008; +pub const NET_ITC_GET_TRIGGER_DEFAULTCFG: u32 = 3013; +pub const NET_DVR_GET_STATUS_DETECTCFG: u32 = 3015; +pub const NET_DVR_SET_STATUS_DETECTCFG: u32 = 3016; +pub const NET_ITC_GET_VIDEO_TRIGGERCFG: u32 = 3017; +pub const NET_ITC_SET_VIDEO_TRIGGERCFG: u32 = 3018; +pub const NET_DVR_GET_TPS_ALARMCFG: u32 = 3019; +pub const NET_DVR_SET_TPS_ALARMCFG: u32 = 3020; +pub const NET_DVR_GET_REDAREACFG: u32 = 3100; +pub const NET_DVR_SET_REDAREACFG: u32 = 3101; +pub const NET_DVR_GET_TEST_SPOT: u32 = 3102; +pub const NET_DVR_SET_TEST_SPOT: u32 = 3103; +pub const NET_DVR_GET_CABINETCFG: u32 = 3104; +pub const NET_DVR_SET_CABINETCFG: u32 = 3105; +pub const NET_DVR_VEHICLE_CHECK_START: u32 = 3106; +pub const NET_DVR_SET_CAPTUREPIC_CFG: u32 = 3107; +pub const NET_DVR_GET_CAPTUREPIC_CFG: u32 = 3108; +pub const NET_DVR_SET_MOBILEPLATE_RECOG_CFG: u32 = 3109; +pub const NET_DVR_GET_MOBILEPLATE_RECOG_CFG: u32 = 3110; +pub const NET_DVR_SET_MOBILE_RADAR_CFG: u32 = 3111; +pub const NET_DVR_GET_MOBILE_RADAR_CFG: u32 = 3112; +pub const NET_DVR_SET_MOBILE_LOCALPLATECHK_CFG: u32 = 3113; +pub const NET_DVR_GET_MOBILE_LOCALPLATECHK_CFG: u32 = 3114; +pub const NET_ITC_GET_ICRCFG: u32 = 3115; +pub const NET_ITC_SET_ICRCFG: u32 = 3116; +pub const NET_ITC_GET_RS485_ACCESSINFO: u32 = 3117; +pub const NET_ITC_SET_RS485_ACCESSINFO: u32 = 3118; +pub const NET_ITC_GET_EXCEPTIONCFG: u32 = 3119; +pub const NET_ITC_SET_EXCEPTIONCFG: u32 = 3120; +pub const NET_ITC_GET_FTPCFG: u32 = 3121; +pub const NET_ITC_SET_FTPCFG: u32 = 3122; +pub const NET_DVR_VEHICLE_CONTROL_LIST_START: u32 = 3123; +pub const NET_DVR_GET_ALL_VEHICLE_CONTROL_LIST: u32 = 3124; +pub const NET_DVR_VEHICLE_DELINFO_CTRL: u32 = 3125; +pub const NET_DVR_GET_ENTRANCE_PARAMCFG: u32 = 3126; +pub const NET_DVR_SET_ENTRANCE_PARAMCFG: u32 = 3127; +pub const NET_DVR_BARRIERGATE_CTRL: u32 = 3128; +pub const NET_DVR_GATELAMP_CTRL: u32 = 3129; +pub const NET_DVR_GET_CURTRIGGERMODE: u32 = 3130; +pub const NET_DVR_GET_GPSDATACFG: u32 = 3131; +pub const NET_DVR_SET_GPSDATACFG: u32 = 3132; +pub const NET_DVR_VEHICLELIST_CTRL_START: u32 = 3133; +pub const NET_DVR_GET_GUARDCFG: u32 = 3134; +pub const NET_DVR_SET_GUARDCFG: u32 = 3135; +pub const NET_DVR_GET_SNAPINFO_CFG: u32 = 3136; +pub const NET_DVR_SET_SNAPINFO_CFG: u32 = 3137; +pub const NET_DVR_GET_SNAPINFO_CFG_V40: u32 = 3138; +pub const NET_DVR_SET_SNAPINFO_CFG_V40: u32 = 3139; +pub const NET_DVR_SET_CURTRIGGERMODE: u32 = 3140; +pub const NET_DVR_GET_TRAFFIC_DATA: u32 = 3141; +pub const NET_DVR_GET_TRAFFIC_FLOW: u32 = 3142; +pub const NET_DVR_PARKING_VEHICLE_SEND: u32 = 3143; +pub const NET_DVR_PARKING_CARD_SEND: u32 = 3144; +pub const NET_DVR_PARKING_CARD_CTRL: u32 = 3145; +pub const NET_DVR_GET_ALARMCTRL_CAPABILITIES: u32 = 3146; +pub const NET_DVR_SET_ALARMCTRL_CFG: u32 = 3147; +pub const NET_DVR_GET_ALARMCTRL_CFG: u32 = 3148; +pub const NET_DVR_GET_AUDIO_INPUT: u32 = 3201; +pub const NET_DVR_SET_AUDIO_INPUT: u32 = 3202; +pub const NET_DVR_GET_CAMERA_DEHAZE_CFG: u32 = 3203; +pub const NET_DVR_SET_CAMERA_DEHAZE_CFG: u32 = 3204; +pub const NET_DVR_REMOTECONTROL_ALARM: u32 = 3205; +pub const NET_DVR_REMOTECONTROL_DISALARM: u32 = 3206; +pub const NET_DVR_REMOTECONTROL_STUDY: u32 = 3207; +pub const NET_DVR_WIRELESS_ALARM_STUDY: u32 = 3208; +pub const NET_IPC_GET_AUX_ALARMCFG: u32 = 3209; +pub const NET_IPC_SET_AUX_ALARMCFG: u32 = 3210; +pub const NET_DVR_GET_PREVIEW_DISPLAYCFG: u32 = 3211; +pub const NET_DVR_SET_PREVIEW_DISPLAYCFG: u32 = 3212; +pub const NET_DVR_REMOTECONTROL_PTZ: u32 = 3213; +pub const NET_DVR_REMOTECONTROL_PRESETPOINT: u32 = 3214; +pub const NET_DVR_REMOTECONTROL_CRUISE: u32 = 3215; +pub const NET_DVR_GET_MULTI_STREAM_COMPRESSIONCFG: u32 = 3216; +pub const NET_DVR_SET_MULTI_STREAM_COMPRESSIONCFG: u32 = 3217; +pub const NET_DVR_GET_WPSCFG: u32 = 3218; +pub const NET_DVR_SET_WPSCFG: u32 = 3219; +pub const NET_DVR_WPS_CONNECT: u32 = 3220; +pub const NET_DVR_GET_DEVICE_PIN: u32 = 3221; +pub const NET_DVR_UPDATE_PIN: u32 = 3223; +pub const NET_DVR_GET_PRESETCFG: u32 = 3224; +pub const NET_DVR_GET_PTZCRUISECFG: u32 = 3225; +pub const NET_DVR_GET_PRESET_NUM: u32 = 3226; +pub const NET_DVR_GET_PTZCRUISE_NUM: u32 = 3227; +pub const NET_DVR_GET_MOTION_TRACK_CFG: u32 = 3228; +pub const NET_DVR_SET_MOTION_TRACK_CFG: u32 = 3229; +pub const NET_DVR_CLEAR_IPC_PARAM: u32 = 3230; +pub const NET_DVR_GET_IPADDR_FILTERCFG: u32 = 3232; +pub const NET_DVR_SET_IPADDR_FILTERCFG: u32 = 3233; +pub const NET_DVR_GET_LOGO_OVERLAYCFG: u32 = 3234; +pub const NET_DVR_SET_LOGO_OVERLAYCFG: u32 = 3235; +pub const NET_DVR_GET_IPV6_LIST: u32 = 3236; +pub const NET_DVR_GET_AUDIOOUT_VOLUME: u32 = 3237; +pub const NET_DVR_SET_AUDIOOUT_VOLUME: u32 = 3238; +pub const NET_DVR_GET_FUZZY_UPGRADE: u32 = 3239; +pub const NET_DVR_GET_BV_CORRECT_PARAM: u32 = 3240; +pub const NET_DVR_SET_BV_CORRECT_PARAM: u32 = 3241; +pub const NET_DVR_GET_OUTPUT_VIDEO_TYPE: u32 = 3242; +pub const NET_DVR_SET_OUTPUT_VIDEO_TYPE: u32 = 3243; +pub const NET_DVR_FISHEYE_CFG: u32 = 3244; +pub const NET_DVR_GET_PTZ_POINT: u32 = 3245; +pub const NET_DVR_SET_PTZ_POINT: u32 = 3246; +pub const NET_DVR_REMOTECONTROL_DEV_PARAM: u32 = 3247; +pub const NET_DVR_GET_FISHEYE_STREAM_STATUS: u32 = 3248; +pub const NET_DVR_GET_GBT28181_ACCESS_CFG: u32 = 3249; +pub const NET_DVR_SET_GBT28181_ACCESS_CFG: u32 = 3250; +pub const NET_DVR_GET_GBT28181_CHANINFO_CFG: u32 = 3251; +pub const NET_DVR_SET_GBT28181_CHANINFO_CFG: u32 = 3252; +pub const NET_DVR_GET_GBT28181_ALARMINCFG: u32 = 3253; +pub const NET_DVR_SET_GBT28181_ALARMINCFG: u32 = 3254; +pub const NET_DVR_GET_ISP_CAMERAPARAMCFG: u32 = 3255; +pub const NET_DVR_SET_ISP_CAMERAPARAMCFG: u32 = 3256; +pub const NET_DVR_GET_DEVSERVER_CFG: u32 = 3257; +pub const NET_DVR_SET_DEVSERVER_CFG: u32 = 3258; +pub const NET_DVR_GET_WIPERINFO_CFG: u32 = 3259; +pub const NET_DVR_SET_WIPERINFO_CFG: u32 = 3260; +pub const NET_DVR_GET_TRACK_DEV_PARAM: u32 = 3261; +pub const NET_DVR_SET_TRACK_DEV_PARAM: u32 = 3262; +pub const NET_DVR_GET_PTZ_TRACK_PARAM: u32 = 3263; +pub const NET_DVR_SET_PTZ_TRACK_PARAM: u32 = 3264; +pub const NET_DVR_GET_CENTER_POINT_CFG: u32 = 3265; +pub const NET_DVR_SET_CENTER_POINT_CFG: u32 = 3266; +pub const NET_DVR_GET_CENTER_POINT_CFG_CAPABILITIES: u32 = 3267; +pub const NET_DVR_GET_FISHEYE_CAPABILITIES: u32 = 3268; +pub const NET_DVR_GET_BASICPARAMCFG: u32 = 3270; +pub const NET_DVR_SET_BASICPARAMCFG: u32 = 3271; +pub const NET_DVR_GET_PTZOSDCFG: u32 = 3272; +pub const NET_DVR_SET_PTZOSDCFG: u32 = 3273; +pub const NET_DVR_GET_POWEROFFMEMCFG: u32 = 3274; +pub const NET_DVR_SET_POWEROFFMEMCFG: u32 = 3275; +pub const NET_DVR_GET_LIMITCFG: u32 = 3276; +pub const NET_DVR_SET_LIMITCFG: u32 = 3277; +pub const NET_DVR_PTZLIMIT_CTRL: u32 = 3278; +pub const NET_DVR_PTZ_CLEARCTRL: u32 = 3279; +pub const NET_DVR_GET_PRIORITIZECFG: u32 = 3281; +pub const NET_DVR_SET_PRIORITIZECFG: u32 = 3282; +pub const NET_DVR_PTZ_INITIALPOSITIONCTRL: u32 = 3283; +pub const NET_DVR_GET_PRIVACY_MASKSCFG: u32 = 3285; +pub const NET_DVR_SET_PRIVACY_MASKSCFG: u32 = 3286; +pub const NET_DVR_GET_PTZLOCKCFG: u32 = 3287; +pub const NET_DVR_SET_PTZLOCKCFG: u32 = 3288; +pub const NET_DVR_PTZ_ZOOMRATIOCTRL: u32 = 3289; +pub const NET_DVR_GET_PTZLOCKINFO: u32 = 3290; +pub const NET_DVR_GET_PRIVACY_MASKS_ENABLECFG: u32 = 3291; +pub const NET_DVR_SET_PRIVACY_MASKS_ENABLECFG: u32 = 3292; +pub const NET_DVR_GET_SMARTTRACKCFG: u32 = 3293; +pub const NET_DVR_SET_SMARTTRACKCFG: u32 = 3294; +pub const NET_DVR_GET_EPTZ_CFG: u32 = 3295; +pub const NET_DVR_SET_EPTZ_CFG: u32 = 3296; +pub const NET_DVR_GET_EPTZ_CFG_CAPABILITIES: u32 = 3297; +pub const NET_DVR_GET_LOW_LIGHTCFG: u32 = 3303; +pub const NET_DVR_SET_LOW_LIGHTCFG: u32 = 3304; +pub const NET_DVR_GET_FOCUSMODECFG: u32 = 3305; +pub const NET_DVR_SET_FOCUSMODECFG: u32 = 3306; +pub const NET_DVR_GET_INFRARECFG: u32 = 3307; +pub const NET_DVR_SET_INFRARECFG: u32 = 3308; +pub const NET_DVR_GET_AEMODECFG: u32 = 3309; +pub const NET_DVR_SET_AEMODECFG: u32 = 3310; +pub const NET_DVR_CONTROL_RESTORE_SUPPORT: u32 = 3311; +pub const NET_DVR_CONTROL_RESTART_SUPPORT: u32 = 3312; +pub const NET_DVR_CONTROL_PTZ_PATTERN: u32 = 3313; +pub const NET_DVR_GET_PTZ_PARKACTION_CFG: u32 = 3314; +pub const NET_DVR_SET_PTZ_PARKACTION_CFG: u32 = 3315; +pub const NET_DVR_CONTROL_PTZ_MANUALTRACE: u32 = 3316; +pub const NET_DVR_GET_ROI_DETECT_NUM: u32 = 3349; +pub const NET_DVR_GET_ROI_DETECT: u32 = 3350; +pub const NET_DVR_SET_ROI_DETECT: u32 = 3351; +pub const NET_DVR_GET_FACE_DETECT: u32 = 3352; +pub const NET_DVR_SET_FACE_DETECT: u32 = 3353; +pub const NET_DVR_GET_CORRIDOR_MODE: u32 = 3354; +pub const NET_DVR_SET_CORRIDOR_MODE: u32 = 3355; +pub const NET_DVR_GET_SCENECHANGE_DETECTIONCFG: u32 = 3356; +pub const NET_DVR_SET_SCENECHANGE_DETECTIONCFG: u32 = 3357; +pub const NET_DVR_GET_TRAVERSE_PLANE_DETECTION: u32 = 3360; +pub const NET_DVR_SET_TRAVERSE_PLANE_DETECTION: u32 = 3361; +pub const NET_DVR_GET_FIELD_DETECTION: u32 = 3362; +pub const NET_DVR_SET_FIELD_DETECTION: u32 = 3363; +pub const NET_DVR_GET_DEFOCUSPARAM: u32 = 3364; +pub const NET_DVR_SET_DEFOCUSPARAM: u32 = 3365; +pub const NET_DVR_GET_AUDIOEXCEPTIONPARAM: u32 = 3366; +pub const NET_DVR_SET_AUDIOEXCEPTIONPARAM: u32 = 3367; +pub const NET_DVR_GET_CCDPARAMCFG_EX: u32 = 3368; +pub const NET_DVR_SET_CCDPARAMCFG_EX: u32 = 3369; +pub const NET_DVR_START_GET_INPUTVOLUME: u32 = 3370; +pub const NET_DVR_SET_SCH_TASK: u32 = 3380; +pub const NET_DVR_GET_SCH_TASK: u32 = 3381; +pub const NET_DVR_SET_PRESET_NAME: u32 = 3382; +pub const NET_DVR_GET_PRESET_NAME: u32 = 3383; +pub const NET_DVR_SET_AUDIO_NAME: u32 = 3384; +pub const NET_DVR_GET_AUDIO_NAME: u32 = 3385; +pub const NET_DVR_RESUME_INITRACKPOS: u32 = 3386; +pub const NET_DVR_NTP_SERVER_TEST: u32 = 3387; +pub const NET_DVR_NAS_SERVER_TEST: u32 = 3388; +pub const NET_DVR_EMAIL_SERVER_TEST: u32 = 3389; +pub const NET_DVR_FTP_SERVER_TEST: u32 = 3390; +pub const NET_DVR_IP_TEST: u32 = 3391; +pub const NET_DVR_GET_NET_DISKCFG_V40: u32 = 3392; +pub const NET_DVR_SET_NET_DISKCFG_V40: u32 = 3393; +pub const NET_DVR_GET_IOOUT_CFG: u32 = 3394; +pub const NET_DVR_SET_IOOUT_CFG: u32 = 3395; +pub const NET_DVR_GET_SIGNAL_SYNC: u32 = 3396; +pub const NET_DVR_SET_SIGNAL_SYNC: u32 = 3397; +pub const NET_DVR_GET_EZVIZ_ACCESS_CFG: u32 = 3398; +pub const NET_DVR_SET_EZVIZ_ACCESS_CFG: u32 = 3399; +pub const NET_DVR_GET_SCHEDULE_AUTO_TRACK_CFG: u32 = 3400; +pub const NET_DVR_SET_SCHEDULE_AUTO_TRACK_CFG: u32 = 3401; +pub const NET_DVR_MAKE_I_FRAME: u32 = 3402; +pub const NET_DVR_GET_ALARM_RELATE: u32 = 3403; +pub const NET_DVR_SET_ALARM_RELATE: u32 = 3404; +pub const NET_DVR_GET_PDC_RULECFG_V42: u32 = 3405; +pub const NET_DVR_SET_PDC_RULECFG_V42: u32 = 3406; +pub const NET_DVR_GET_HEATMAP_CFG: u32 = 3407; +pub const NET_DVR_SET_HEATMAP_CFG: u32 = 3408; +pub const NET_DVR_REMOTECONTROL_LINEARSCAN: u32 = 3409; +pub const NET_DVR_DPC_CTRL: u32 = 3410; +pub const NET_DVR_FFC_MANUAL_CTRL: u32 = 3411; +pub const NET_DVR_FFC_BACKCOMP_CTRL: u32 = 3412; +pub const NET_DVR_GET_FOCUSING_POSITION_STATE: u32 = 3413; +pub const NET_DVR_GET_PRIVATE_PROTOCOL_CFG: u32 = 3414; +pub const NET_DVR_SET_PRIVATE_PROTOCOL_CFG: u32 = 3415; +pub const NET_DVR_COMPLETE_RESTORE_CTRL: u32 = 3420; +pub const NET_DVR_CLOUDSTORAGE_SERVER_TEST: u32 = 3421; +pub const NET_DVR_PHONE_NUM_TEST: u32 = 3422; +pub const NET_DVR_GET_REMOTECONTROL_STATUS: u32 = 3423; +pub const NET_DVR_GET_MONITOR_LOCATION_INFO: u32 = 3424; +pub const NET_DVR_SET_MONITOR_LOCATION_INFO: u32 = 3425; +pub const NET_DVR_GET_SMART_CAPABILITIES: u32 = 3500; +pub const NET_DVR_GET_EVENT_TRIGGERS_CAPABILITIES: u32 = 3501; +pub const NET_DVR_GET_REGION_ENTRANCE_CAPABILITIES: u32 = 3502; +pub const NET_DVR_GET_REGION_ENTR_DETECTION: u32 = 3503; +pub const NET_DVR_SET_REGION_ENTR_DETECTION: u32 = 3504; +pub const NET_DVR_GET_REGION_ENTR_REGION: u32 = 3505; +pub const NET_DVR_SET_REGION_ENTR_REGION: u32 = 3506; +pub const NET_DVR_GET_REGION_ENTR_TRIGGER: u32 = 3507; +pub const NET_DVR_SET_REGION_ENTR_TRIGGER: u32 = 3508; +pub const NET_DVR_GET_REGION_ENTR_SCHEDULE: u32 = 3509; +pub const NET_DVR_SET_REGION_ENTR_SCHEDULE: u32 = 3510; +pub const NET_DVR_GET_REGION_EXITINT_CAPABILITIES: u32 = 3511; +pub const NET_DVR_GET_REGION_EXITING_DETECTION: u32 = 3512; +pub const NET_DVR_SET_REGION_EXITING_DETECTION: u32 = 3513; +pub const NET_DVR_GET_REGION_EXITING_REGION: u32 = 3514; +pub const NET_DVR_SET_REGION_EXITING_REGION: u32 = 3515; +pub const NET_DVR_GET_REGION_EXIT_TRIGGER: u32 = 3516; +pub const NET_DVR_SET_REGION_EXIT_TRIGGER: u32 = 3517; +pub const NET_DVR_GET_REGION_EXIT_SCHEDULE: u32 = 3518; +pub const NET_DVR_SET_REGION_EXIT_SCHEDULE: u32 = 3519; +pub const NET_DVR_GET_LOITERING_CAPABILITIES: u32 = 3520; +pub const NET_DVR_GET_LOITERING_DETECTION: u32 = 3521; +pub const NET_DVR_SET_LOITERING_DETECTION: u32 = 3522; +pub const NET_DVR_GET_LOITERING_REGION: u32 = 3523; +pub const NET_DVR_SET_LOITERING_REGION: u32 = 3524; +pub const NET_DVR_GET_LOITERING_TRIGGER: u32 = 3525; +pub const NET_DVR_SET_LOITERING_TRIGGER: u32 = 3526; +pub const NET_DVR_GET_LOITERING_SCHEDULE: u32 = 3527; +pub const NET_DVR_SET_LOITERING_SCHEDULE: u32 = 3528; +pub const NET_DVR_GET_GROUPDETECTION_CAPABILITIES: u32 = 3529; +pub const NET_DVR_GET_GROUP_DETECTION: u32 = 3530; +pub const NET_DVR_SET_GROUP_DETECTION: u32 = 3531; +pub const NET_DVR_GET_GROUPDETECTION_REGION: u32 = 3532; +pub const NET_DVR_SET_GROUPDETECTION_REGION: u32 = 3533; +pub const NET_DVR_GET_GROUPDETECTION_TRIGGER: u32 = 3534; +pub const NET_DVR_SET_GROUPDETECTION_TRIGGER: u32 = 3535; +pub const NET_DVR_GET_GROUPDETECTION_SCHEDULE: u32 = 3536; +pub const NET_DVR_SET_GROUPDETECTION_SCHEDULE: u32 = 3537; +pub const NET_DVR_GET_RAPIDMOVE_CAPABILITIES: u32 = 3538; +pub const NET_DVR_GET_RAPIDMOVE_DETECTION: u32 = 3539; +pub const NET_DVR_SET_RAPIDMOVE_DETECTION: u32 = 3540; +pub const NET_DVR_GET_RAPIDMOVE_REGION: u32 = 3541; +pub const NET_DVR_SET_RAPIDMOVE_REGION: u32 = 3542; +pub const NET_DVR_GET_RAPIDMOVE_TRIGGER: u32 = 3543; +pub const NET_DVR_SET_RAPIDMOVE_TRIGGER: u32 = 3544; +pub const NET_DVR_GET_RAPIDMOVE_SCHEDULE: u32 = 3545; +pub const NET_DVR_SET_RAPIDMOVE_SCHEDULE: u32 = 3546; +pub const NET_DVR_GET_PATKING_CAPABILITIES: u32 = 3547; +pub const NET_DVR_GET_PARKING_DETECTION: u32 = 3548; +pub const NET_DVR_SET_PARKING_DETECTION: u32 = 3549; +pub const NET_DVR_GET_PARKING_REGION: u32 = 3550; +pub const NET_DVR_SET_PARKING_REGION: u32 = 3551; +pub const NET_DVR_GET_PARKING_TRIGGER: u32 = 3552; +pub const NET_DVR_SET_PARKING_TRIGGER: u32 = 3553; +pub const NET_DVR_GET_PARKING_SCHEDULE: u32 = 3554; +pub const NET_DVR_SET_PARKING_SCHEDULE: u32 = 3555; +pub const NET_DVR_GET_UNATTENDED_BAGGAGE_CAPABILITIES: u32 = 3556; +pub const NET_DVR_GET_UNATTENDED_BAGGAGE_DETECTION: u32 = 3557; +pub const NET_DVR_SET_UNATTENDED_BAGGAGE_DETECTION: u32 = 3558; +pub const NET_DVR_GET_UNATTENDED_BAGGAGE_REGION: u32 = 3559; +pub const NET_DVR_SET_UNATTENDED_BAGGAGE_REGION: u32 = 3560; +pub const NET_DVR_GET_UNATTENDED_BAGGAGE_TRIGGER: u32 = 3561; +pub const NET_DVR_SET_UNATTENDED_BAGGAGE_TRIGGER: u32 = 3562; +pub const NET_DVR_GET_UNATTENDED_BAGGAGE_SCHEDULE: u32 = 3563; +pub const NET_DVR_SET_UNATTENDED_BAGGAGE_SCHEDULE: u32 = 3564; +pub const NET_DVR_GET_ATTENDEDBAGGAGE_CAPABILITIES: u32 = 3565; +pub const NET_DVR_GET_ATTENDEDBAGGAGE_DETECTION: u32 = 3566; +pub const NET_DVR_SET_ATTENDEDBAGGAGE_DETECTION: u32 = 3567; +pub const NET_DVR_GET_ATTENDEDBAGGAGE_REGION: u32 = 3568; +pub const NET_DVR_SET_ATTENDEDBAGGAGE_REGION: u32 = 3569; +pub const NET_DVR_GET_ATTENDEDBAGGAGE_TRIGGER: u32 = 3570; +pub const NET_DVR_SET_ATTENDEDBAGGAGE_TRIGGER: u32 = 3571; +pub const NET_DVR_GET_ATTENDEDBAGGAGE_SCHEDULE: u32 = 3572; +pub const NET_DVR_SET_ATTENDEDBAGGAGE_SCHEDULE: u32 = 3573; +pub const NET_DVR_GET_REGIONCLIP_CAPABILITIES: u32 = 3574; +pub const NET_DVR_GET_REGION_CLIP: u32 = 3575; +pub const NET_DVR_SET_REGION_CLIP: u32 = 3576; +pub const NET_DVR_GET_NETWORK_CAPABILITIES: u32 = 3577; +pub const NET_DVR_GET_WIRELESS_DIAL: u32 = 3578; +pub const NET_DVR_SET_WIRELESS_DIAL: u32 = 3579; +pub const NET_DVR_GET_WIRELESSDIAL_CAPABILITIES: u32 = 3580; +pub const NET_DVR_GET_WIRELESSDIAL_SCHEDULE: u32 = 3581; +pub const NET_DVR_SET_WIRELESSDIAL_SCHEDULE: u32 = 3582; +pub const NET_DVR_GET_WIRELESSDIAL_STATUS: u32 = 3583; +pub const NET_DVR_GET_REGION_ENTRANCE_SCHEDULE_CAPABILITIES: u32 = 3584; +pub const NET_DVR_GET_REGION_EXITING_SCHEDULE_CAPABILITIES: u32 = 3585; +pub const NET_DVR_GET_LOITERING_SCHEDULE_CAPABILITIES: u32 = 3586; +pub const NET_DVR_GET_GROUP_SCHEDULE_CAPABILITIES: u32 = 3587; +pub const NET_DVR_GET_RAPIDMOVE_SCHEDULE_CAPABILITIES: u32 = 3588; +pub const NET_DVR_GET_PARKING_SCHEDULE_CAPABILITIES: u32 = 3589; +pub const NET_DVR_GET_UNATTENDEDBAGGAGE_SCHEDULE_CAPABILITIES: u32 = 3590; +pub const NET_DVR_GET_ATTENDEDBAGGAGE_SCHEDULE_CAPABILITIES: u32 = 3591; +pub const NET_DVR_GET_WIRELESSDIAL_SCHEDULE_CAPABILITIES: u32 = 3592; +pub const NET_DVR_WIRELESSDIAL_CONNECT: u32 = 3593; +pub const NET_DVR_GET_LITESTORAGE: u32 = 3594; +pub const NET_DVR_SET_LITESTORAGE: u32 = 3595; +pub const NET_DVR_GET_LITESTORAGE_CAPABILITIES: u32 = 3596; +pub const NET_DVR_GET_VEHICLE_CAPABILITIES: u32 = 3597; +pub const NET_DVR_GET_VEHICLE_CALIBRATION: u32 = 3598; +pub const NET_DVR_GET_SLAVECAMERA_CAPABILITIES: u32 = 3599; +pub const NET_DVR_GET_SLAVECAMERA: u32 = 3600; +pub const NET_DVR_SET_SLAVECAMERA: u32 = 3601; +pub const NET_DVR_GET_SLAVECAMERA_STATUS: u32 = 3602; +pub const NET_DVR_GET_SLAVECAMERA_CALIB_CAPABILITIES: u32 = 3603; +pub const NET_DVR_GET_SLAVECAMERA_CALIB: u32 = 3604; +pub const NET_DVR_SET_SLAVECAMERA_CALIB: u32 = 3605; +pub const NET_DVR_GET_PHY_RATIO: u32 = 3606; +pub const NET_DVR_SET_PHY_RATIO: u32 = 3607; +pub const NET_DVR_GET_MASTERSLAVETRACKING_CAPABILITIES: u32 = 3608; +pub const NET_DVR_SET_TRACKINGRATIO: u32 = 3610; +pub const NET_DVR_GET_TRACKING: u32 = 3611; +pub const NET_DVR_SET_TRACKING: u32 = 3612; +pub const NET_DVR_GET_TRACKING_CAPABILITIES: u32 = 3613; +pub const NET_DVR_GET_SLAVECAMERA_CALIB_V50: u32 = 3614; +pub const NET_DVR_SET_SLAVECAMERA_CALIB_V50: u32 = 3615; +pub const NET_DVR_SET_TRACKINGRATIO_MANUAL: u32 = 3616; +pub const NET_DVR_GET_TRACKINGRATIO_MANUAL: u32 = 3617; +pub const NET_DVR_SET_TRACK_INITPOSTION: u32 = 3618; +pub const NET_DVR_GET_PTZ_CAPABILITIES: u32 = 3619; +pub const NET_DVR_GET_THERMOMETRY_BASICPARAM_CAPABILITIES: u32 = 3620; +pub const NET_DVR_GET_THERMOMETRY_BASICPARAM: u32 = 3621; +pub const NET_DVR_SET_THERMOMETRY_BASICPARAM: u32 = 3622; +pub const NET_DVR_GET_THERMOMETRY_SCENE_CAPABILITIES: u32 = 3623; +pub const NET_DVR_GET_THERMOMETRY_PRESETINFO: u32 = 3624; +pub const NET_DVR_SET_THERMOMETRY_PRESETINFO: u32 = 3625; +pub const NET_DVR_GET_THERMOMETRY_ALARMRULE_CAPABILITIES: u32 = 3626; +pub const NET_DVR_GET_THERMOMETRY_ALARMRULE: u32 = 3627; +pub const NET_DVR_SET_THERMOMETRY_ALARMRULE: u32 = 3628; +pub const NET_DVR_GET_REALTIME_THERMOMETRY: u32 = 3629; +pub const NET_DVR_GET_THERMOMETRY_DIFFCOMPARISON: u32 = 3630; +pub const NET_DVR_SET_THERMOMETRY_DIFFCOMPARISON: u32 = 3631; +pub const NET_DVR_GET_THERMOMETRY_TRIGGER: u32 = 3632; +pub const NET_DVR_SET_THERMOMETRY_TRIGGER: u32 = 3633; +pub const NET_DVR_GET_THERMAL_CAPABILITIES: u32 = 3634; +pub const NET_DVR_GET_FIREDETECTION_CAPABILITIES: u32 = 3635; +pub const NET_DVR_GET_FIREDETECTION: u32 = 3636; +pub const NET_DVR_SET_FIREDETECTION: u32 = 3637; +pub const NET_DVR_GET_FIREDETECTION_TRIGGER: u32 = 3638; +pub const NET_DVR_SET_FIREDETECTION_TRIGGER: u32 = 3639; +pub const NET_DVR_GET_OIS_CAPABILITIES: u32 = 3640; +pub const NET_DVR_GET_OIS_CFG: u32 = 3641; +pub const NET_DVR_SET_OIS_CFG: u32 = 3642; +pub const NET_DVR_GET_MACFILTER_CAPABILITIES: u32 = 3643; +pub const NET_DVR_GET_MACFILTER_CFG: u32 = 3644; +pub const NET_DVR_SET_MACFILTER_CFG: u32 = 3645; +pub const NET_DVR_GET_EAGLEFOCUS_CALCFG_CAPABILITIES: u32 = 3646; +pub const NET_DVR_GET_EAGLEFOCUSING_CALCFG: u32 = 3647; +pub const NET_DVR_SET_EAGLEFOCUSING_CALCFG: u32 = 3648; +pub const NET_DVR_GET_EAGLEFOCUSING_CFG_CAPABILITIES: u32 = 3649; +pub const NET_DVR_GET_EAGLEFOCUSING_CTRL: u32 = 3650; +pub const NET_DVR_SET_EAGLEFOCUSING_CTRL: u32 = 3651; +pub const NET_DVR_GET_PXOFFLINE_CAPABILITIES: u32 = 3652; +pub const NET_DVR_SET_PXOFFLINE_CFG: u32 = 3653; +pub const NET_DVR_GET_PXOFFLINE_CFG: u32 = 3654; +pub const NET_DVR_GET_PAPERCHARGEINFO_CAPABILITIES: u32 = 3655; +pub const NET_DVR_SET_PAPERCHARGEINFO: u32 = 3656; +pub const NET_DVR_GET_PARKINGSAPCE_CAPABILITIES: u32 = 3657; +pub const NET_DVR_SET_PARKINGSAPCE_INFO: u32 = 3658; +pub const NET_DVR_GET_PXMULTICTRL_CAPABILITIES: u32 = 3659; +pub const NET_DVR_GET_CHARGEACCOUNT_CAPABILITIES: u32 = 3661; +pub const NET_DVR_SET_CHARGE_ACCOUNTINFO: u32 = 3662; +pub const NET_DVR_SET_PXMULTICTRL_CFG: u32 = 3663; +pub const NET_DVR_GET_PXMULTICTRL_CFG: u32 = 3664; +pub const NET_DVR_GET_TME_CHARGERULE: u32 = 3665; +pub const NET_DVR_SET_TME_CHARGERULE: u32 = 3666; +pub const NET_DVR_GET_TME_CHARGERULE_CAPABILITIES: u32 = 3667; +pub const NET_DVR_GET_ILLEGALCARDFILTERING_CAPABILITIES: u32 = 3668; +pub const NET_DVR_GET_ILLEGALCARDFILTERING_CFG: u32 = 3669; +pub const NET_DVR_SET_ILLEGALCARDFILTERING_CFG: u32 = 3670; +pub const NET_DVR_GET_LEDDISPLAY_CAPABILITIES: u32 = 3671; +pub const NET_DVR_SET_LEDDISPLAY_CFG: u32 = 3672; +pub const NET_DVR_GET_LEDDISPLAY_CFG: u32 = 3673; +pub const NET_DVR_GET_VOICEBROADCAST_CAPABILITIES: u32 = 3674; +pub const NET_DVR_SET_VOICEBROADCAST_CFG: u32 = 3675; +pub const NET_DVR_GET_PAPERPRINTFORMAT_CAPABILITIES: u32 = 3676; +pub const NET_DVR_GET_PAPERPRINTFORMAT_CFG: u32 = 3677; +pub const NET_DVR_SET_PAPERPRINTFORMAT_CFG: u32 = 3678; +pub const NET_DVR_GET_LOCkGATE_CAPABILITIES: u32 = 3679; +pub const NET_DVR_GET_LOCKGATE_CFG: u32 = 3680; +pub const NET_DVR_SET_LOCKGATE_CFG: u32 = 3681; +pub const NET_DVR_GET_PARKING_DATASTATE: u32 = 3682; +pub const NET_DVR_SET_PARKING_DATASTATE: u32 = 3683; +pub const NET_DVR_GET_TME_CAPABILITIES: u32 = 3684; +pub const NET_DVR_GET_TMEVOICE_CAPABILITIES: u32 = 3686; +pub const NET_DVR_SET_TMEVOICE_CFG: u32 = 3687; +pub const NET_DVR_GET_TMEVOICE_CFG: u32 = 3688; +pub const NET_DVR_DEL_TMEVOICE_CFG: u32 = 3689; +pub const NET_DVR_GET_POSITION: u32 = 3698; +pub const NET_DVR_SET_POSITION: u32 = 3699; +pub const NET_DVR_GET_CENTRALIZEDCTRL_CAPABILITIES: u32 = 3700; +pub const NET_DVR_GET_CENTRALIZEDCTRL: u32 = 3701; +pub const NET_DVR_SET_CENTRALIZEDCTRL: u32 = 3702; +pub const NET_DVR_GET_COMPASS_CAPABILITIES: u32 = 3703; +pub const NET_DVR_GET_VANDALPROOFALARM: u32 = 3704; +pub const NET_DVR_SET_VANDALPROOFALARM: u32 = 3705; +pub const NET_DVR_COMPASS_CALIBRATE_CTRL: u32 = 3706; +pub const NET_DVR_COMPASS_NORTH_CTRL: u32 = 3707; +pub const NET_DVR_GET_AZIMUTHINFO: u32 = 3708; +pub const NET_DVR_GET_SATELLITETIME: u32 = 3709; +pub const NET_DVR_SET_SATELLITETIME: u32 = 3710; +pub const NET_DVR_GET_GISINFO: u32 = 3711; +pub const NET_DVR_GET_STREAMING_CAPABILITIES: u32 = 3712; +pub const NET_DVR_GET_REFRESHFRAME_CAPABILITIES: u32 = 3713; +pub const NET_DVR_STREAMING_REFRESH_FRAME: u32 = 3714; +pub const NET_DVR_FACECAPTURE_STATISTICS: u32 = 3715; +pub const NET_DVR_GET_WIRELESSSERVER_CAPABILITIES: u32 = 3716; +pub const NET_DVR_GET_WIRELESSSERVER: u32 = 3717; +pub const NET_DVR_SET_WIRELESSSERVER: u32 = 3718; +pub const NET_DVR_GET_CONNECT_LIST_CAPABILITIES: u32 = 3719; +pub const NET_DVR_GET_THSCREEN_CAPABILITIES: u32 = 3720; +pub const NET_DVR_GET_THSCREEN: u32 = 3721; +pub const NET_DVR_GET_EXTERNALDEVICE_CAPABILITIES: u32 = 3722; +pub const NET_DVR_GET_EXTERNALDEVICE: u32 = 3723; +pub const NET_DVR_SET_EXTERNALDEVICE: u32 = 3724; +pub const NET_DVR_GET_LEDDISPLAYINFO_CAPABILITIES: u32 = 3725; +pub const NET_DVR_SET_LEDDISPLAYINFO: u32 = 3726; +pub const NET_DVR_GET_SUPPLEMENTLIGHT_CAPABILITIES: u32 = 3727; +pub const NET_DVR_GET_SUPPLEMENTLIGHT: u32 = 3728; +pub const NET_DVR_SET_SUPPLEMENTLIGHT: u32 = 3729; +pub const NET_DVR_SET_THSCREEN: u32 = 3730; +pub const NET_DVR_GET_LOWPOWER_CAPABILITIES: u32 = 3731; +pub const NET_DVR_GET_LOWPOWER: u32 = 3732; +pub const NET_DVR_SET_LOWPOWER: u32 = 3733; +pub const NET_DVR_GET_ZOOMLINKAGE_CAPABILITIES: u32 = 3734; +pub const NET_DVR_GET_ZOOMLINKAGE: u32 = 3735; +pub const NET_DVR_SET_ZOOMLINKAGE: u32 = 3736; +pub const NET_DVR_THSCREEN_TIMING: u32 = 3737; +pub const NET_DVR_GET_OSD_BATTERY_POWER_CFG: u32 = 3741; +pub const NET_DVR_SET_OSD_BATTERY_POWER_CFG: u32 = 3742; +pub const NET_DVR_GET_OSD_BATTERY_POWER_CFG_CAPABILITIES: u32 = 3743; +pub const NET_DVR_GET_VANDALPROOFALARM_TRIGGER: u32 = 3744; +pub const NET_DVR_SET_VANDALPROOFALARM_TRIGGER: u32 = 3745; +pub const NET_DVR_GET_PANORAMAIMAGE_CAPABILITIES: u32 = 3746; +pub const NET_DVR_GET_PANORAMAIMAGE: u32 = 3747; +pub const NET_DVR_SET_PANORAMAIMAGE: u32 = 3748; +pub const NET_DVR_GET_STREAMENCRYPTION: u32 = 3749; +pub const NET_DVR_SET_STREAMENCRYPTION: u32 = 3750; +pub const NET_DVR_GET_STREAMENCRYPTION_CAPABILITIES: u32 = 3751; +pub const NET_DVR_GET_REVISE_GPS_CAPABILITIES: u32 = 3752; +pub const NET_DVR_GET_REVISE_GPS: u32 = 3753; +pub const NET_DVR_SET_REVISE_GPS: u32 = 3754; +pub const NET_DVR_GET_PDC_RECOMMEND: u32 = 3755; +pub const NET_DVR_REMOVE_FLASHSTORAGE: u32 = 3756; +pub const NET_DVR_GET_COUNTING_CAPABILITIES: u32 = 3757; +pub const NET_DVR_SET_SENSOR_ADJUSTMENT: u32 = 3758; +pub const NET_DVR_GET_SENSOR_ADJUSTMENT_CAPABILITIES: u32 = 3759; +pub const NET_DVR_GET_WIRELESSSERVER_FULLVERSION_CFG: u32 = 3760; +pub const NET_DVR_SET_WIRELESSSERVER_FULLVERSION_CFG: u32 = 3761; +pub const NET_DVR_GET_ONLINEUSER_INFO: u32 = 3762; +pub const NET_DVR_GET_SENSOR_ADJUSTMENT_INFO: u32 = 3763; +pub const NET_DVR_SENSOR_RESET_CTRL: u32 = 3764; +pub const NET_DVR_GET_POSTRADAR_CAPABILITIES: u32 = 3765; +pub const NET_DVR_GET_POSTRADARSPEED_CFG: u32 = 3766; +pub const NET_DVR_SET_POSTRADARSPEED_CFG: u32 = 3767; +pub const NET_DVR_GET_POSTRADARSPEED_RECOM_CFG: u32 = 3768; +pub const NET_DVR_GET_POSTRADARPARAM_CFG: u32 = 3769; +pub const NET_DVR_SET_POSTRADARPARAM_CFG: u32 = 3770; +pub const NET_DVR_GET_POSTRADARPARAM_RECOM_CFG: u32 = 3771; +pub const NET_DVR_GET_ENCRYPT_DEVICE_INFO: u32 = 3772; +pub const NET_DVR_GET_ANR_ARMING_HOST: u32 = 3773; +pub const NET_DVR_GET_FIRMWARE_VERSION: u32 = 3776; +pub const NET_DVR_GET_FTP_CAPABILITIES: u32 = 3782; +pub const NET_DVR_GET_FTPUPLOAD_CFG: u32 = 3783; +pub const NET_DVR_SET_FTPUPLOAD_CFG: u32 = 3784; +pub const NET_DVR_GET_VEHICLE_INFORMATION: u32 = 3785; +pub const NET_DVR_GET_DDNS_COUNTRY_ABILITY: u32 = 3800; +pub const NET_DVR_GET_DEVICECFG_V50: u32 = 3801; +pub const NET_DVR_SET_DEVICECFG_V50: u32 = 3802; +pub const NET_DVR_SET_VEHICLE_RECOG_TASK_V50: u32 = 3851; +pub const NET_DVR_GET_SMARTCALIBRATION_CAPABILITIES: u32 = 3900; +pub const NET_DVR_GET_TEMPERATURE_TRIGGER: u32 = 3903; +pub const NET_DVR_SET_TEMPERATURE_TRIGGER: u32 = 3904; +pub const NET_DVR_GET_SMARTCALIBRATION_CFG: u32 = 3910; +pub const NET_DVR_SET_SMARTCALIBRATION_CFG: u32 = 3911; +pub const NET_DVR_POST_SETUP_CALIB: u32 = 3912; +pub const NET_DVR_SET_POS_INFO_OVERLAY: u32 = 3913; +pub const NET_DVR_GET_POS_INFO_OVERLAY: u32 = 3914; +pub const NET_DVR_GET_CAMERA_WORK_MODE: u32 = 3915; +pub const NET_DVR_SET_CAMERA_WORK_MODE: u32 = 3916; +pub const NET_DVR_GET_RESOLUTION_SWITCH_CAPABILITIES: u32 = 3917; +pub const NET_DVR_GET_RESOLUTION_SWITCH: u32 = 3918; +pub const NET_DVR_SET_RESOLUTION_SWITCH: u32 = 3919; +pub const NET_DVR_GET_CONFIRM_MECHANISM_CAPABILITIES: u32 = 3920; +pub const NET_DVR_CONFIRM_MECHANISM_CTRL: u32 = 3921; +pub const NET_DVR_GET_VEHICLLE_RESULT_CAPABILITIES: u32 = 3951; +pub const NET_DVR_GET_CALIB_CAPABILITIES: u32 = 3952; +pub const NET_DVR_GET_POSINFO_OVERLAY_CAPABILITIES: u32 = 3953; +pub const NET_SDK_FINDMEDICALFILE: u32 = 3954; +pub const NET_SDK_FINDMEDICALPICTURE: u32 = 3955; +pub const NET_DVR_SET_POSINFO_OVERLAY: u32 = 3960; +pub const NET_DVR_GET_POSINFO_OVERLAY: u32 = 3961; +pub const NET_DVR_GET_FACELIB_TRIGGER: u32 = 3962; +pub const NET_DVR_SET_FACELIB_TRIGGER: u32 = 3963; +pub const NET_DVR_GET_FACECONTRAST_TRIGGER: u32 = 3965; +pub const NET_DVR_SET_FACECONTRAST_TRIGGER: u32 = 3966; +pub const NET_DVR_GET_FACECONTRAST_SCHEDULE_CAPABILITIES: u32 = 3967; +pub const NET_DVR_GET_FACECONTRAST_SCHEDULE: u32 = 3968; +pub const NET_DVR_SET_FACECONTRAST_SCHEDULE: u32 = 3969; +pub const NET_DVR_GET_FACELIB_SCHEDULE_CAPABILITIES: u32 = 3970; +pub const NET_DVR_GET_VCA_VERSION_LIST: u32 = 3973; +pub const NET_DVR_GET_SETUP_CALIB: u32 = 3974; +pub const NET_DVR_GET_PANORAMA_LINKAGE: u32 = 3975; +pub const NET_DVR_SET_PANORAMA_LINKAGE: u32 = 3976; +pub const NET_DVR_GET_FACELIB_SCHEDULE: u32 = 3977; +pub const NET_DVR_SET_FACELIB_SCHEDULE: u32 = 3978; +pub const NET_DVR_GET_SOFTWARE_SERVICE_CAPABILITIES: u32 = 3980; +pub const NET_DVR_GET_SOFTWARE_SERVICE: u32 = 3981; +pub const NET_DVR_SET_SOFTWARE_SERVICE: u32 = 3982; +pub const NET_DVR_GET_PREVIEW_MODE_CAPABILITIES: u32 = 3983; +pub const NET_DVR_SET_EAGLE_FOCUS_GOTOSCENE: u32 = 3984; +pub const NET_DVR_EAGLE_FOCUS_SCENE_DEL: u32 = 3985; +pub const NET_DVR_GET_SAFETY_HELMET_TRIGGER: u32 = 3986; +pub const NET_DVR_SET_SAFETY_HELMET_TRIGGER: u32 = 3987; +pub const NET_DVR_GET_SAFETY_HELMET_SCHEDULE_CAPABILITIES: u32 = 3988; +pub const NET_DVR_GET_SAFETY_HELMET_SCHEDULE: u32 = 3989; +pub const NET_DVR_SET_SAFETY_HELMET_SCHEDULE: u32 = 3990; +pub const NET_DVR_GET_SIGN_ABNORMAL_TRIGGER: u32 = 4150; +pub const NET_DVR_SET_SIGN_ABNORMAL_TRIGGER: u32 = 4151; +pub const NET_DVR_ONE_KEY_CONFIG_SAN_V50: u32 = 4152; +pub const NET_DVR_GET_HDCFG_V50: u32 = 4153; +pub const NET_DVR_SET_HDCFG_V50: u32 = 4154; +pub const NET_DVR_GET_HDVOLUME_CFG: u32 = 4155; +pub const NET_DVR_SET_HDVOLUME_CFG: u32 = 4156; +pub const NET_DVR_GET_POWER_SUPPLY_CABINET_TRIGGER: u32 = 4157; +pub const NET_DVR_SET_POWER_SUPPLY_CABINET_TRIGGER: u32 = 4158; +pub const NET_DVR_GET_SENSOR_TRIGGER: u32 = 4159; +pub const NET_DVR_SET_SENSOR_TRIGGER: u32 = 4160; +pub const NET_DVR_GET_FACESNAP_TRIGGER: u32 = 4161; +pub const NET_DVR_SET_FACESNAP_TRIGGER: u32 = 4162; +pub const NET_DVR_GET_FACESNAP_SCHEDULE_CAPABILITIES: u32 = 4163; +pub const NET_DVR_GET_FACESNAP_SCHEDULE: u32 = 4164; +pub const NET_DVR_SET_FACESNAP_SCHEDULE: u32 = 4165; +pub const NET_DVR_SET_SCREEN_SWITCH: u32 = 4171; +pub const NET_DVR_GET_BV_CALIB_PIC: u32 = 4172; +pub const NET_DVR_GET_BV_CALIB_RESULT: u32 = 4173; +pub const NET_DVR_GET_BV_HCORRECTION: u32 = 4174; +pub const NET_DVR_DEL_BV_CALIB_PIC: u32 = 4175; +pub const NET_DVR_GET_TV_SCREEN_CFG: u32 = 4176; +pub const NET_DVR_SET_TV_SCREEN_CFG: u32 = 4177; +pub const NET_DVR_ADJUST_BV_CALIB: u32 = 4178; +pub const NET_DVR_GET_HUMAN_CALIB: u32 = 4179; +pub const NET_DVR_SET_HUMAN_CALIB: u32 = 4180; +pub const NET_DVR_GET_USERCFG_V51: u32 = 4181; +pub const NET_DVR_SET_USERCFG_V51: u32 = 4182; +pub const NET_DVR_GET_SOFTIO_TRIGGER: u32 = 4183; +pub const NET_DVR_SET_SOFTIO_TRIGGER: u32 = 4184; +pub const NET_DVR_GET_SOFTIO_SCHEDULE_CAPABILITIES: u32 = 4185; +pub const NET_DVR_GET_SOFTIO_SCHEDULE: u32 = 4186; +pub const NET_DVR_SET_SOFTIO_SCHEDULE: u32 = 4187; +pub const NET_DVR_GET_HFPD_TRIGGER: u32 = 4188; +pub const NET_DVR_SET_HFPD_TRIGGER: u32 = 4189; +pub const NET_DVR_GET_HFPD_SCHEDULE_CAPABILITIES: u32 = 4190; +pub const NET_DVR_GET_HFPD_SCHEDULE: u32 = 4191; +pub const NET_DVR_SET_HFPD_SCHEDULE: u32 = 4192; +pub const NET_DVR_GET_ALARM_INFO: u32 = 4193; +pub const NET_DVR_GET_USERCFG_V52: u32 = 4194; +pub const NET_DVR_SET_USERCFG_V52: u32 = 4195; +pub const NET_DVR_GET_MUTEX_FUNCTION: u32 = 4353; +pub const NET_DVR_GET_SINGLE_CHANNELINFO: u32 = 4360; +pub const NET_DVR_GET_CHANNELINFO: u32 = 4361; +pub const NET_DVR_CHECK_LOGIN_PASSWORDCFG: u32 = 4362; +pub const NET_DVR_GET_SINGLE_SECURITY_QUESTION_CFG: u32 = 4363; +pub const NET_DVR_SET_SINGLE_SECURITY_QUESTION_CFG: u32 = 4364; +pub const NET_DVR_GET_SECURITY_QUESTION_CFG: u32 = 4365; +pub const NET_DVR_SET_SECURITY_QUESTION_CFG: u32 = 4366; +pub const NET_DVR_GET_ONLINEUSERLIST_SC: u32 = 4367; +pub const NET_DVR_GET_BLOCKLIST_FACECONTRAST_TRIGGER: u32 = 4368; +pub const NET_DVR_SET_BLOCKLIST_FACECONTRAST_TRIGGER: u32 = 4369; +pub const NET_DVR_GET_ALLOWLIST_FACECONTRAST_TRIGGER: u32 = 4370; +pub const NET_DVR_SET_ALLOWLIST_FACECONTRAST_TRIGGER: u32 = 4371; +pub const NET_DVR_GET_BLOCKLIST_FACECONTRAST_SCHEDULE_CAPABILITIES: u32 = 4372; +pub const NET_DVR_GET_BLOCKLIST_FACECONTRAST_SCHEDULE: u32 = 4373; +pub const NET_DVR_SET_BLOCKLIST_FACECONTRAST_SCHEDULE: u32 = 4374; +pub const NET_DVR_GET_ALLOWLIST_FACECONTRAST_SCHEDULE_CAPABILITIES: u32 = 4375; +pub const NET_DVR_GET_ALLOWLIST_FACECONTRAST_SCHEDULE: u32 = 4376; +pub const NET_DVR_SET_ALLOWLIST_FACECONTRAST_SCHEDULE: u32 = 4377; +pub const NET_DVR_GET_HUMAN_RECOGNITION_SCHEDULE_CAPABILITIES: u32 = 4378; +pub const NET_DVR_GET_HUMAN_RECOGNITION_SCHEDULE: u32 = 4379; +pub const NET_DVR_SET_HUMAN_RECOGNITION_SCHEDULE: u32 = 4380; +pub const NET_DVR_GET_HUMAN_RECOGNITION_TRIGGER: u32 = 4381; +pub const NET_DVR_SET_HUMAN_RECOGNITION_TRIGGER: u32 = 4382; +pub const NET_DVR_GET_GBT28181_AUDIO_OUTPUT_CFG: u32 = 4383; +pub const NET_DVR_SET_GBT28181_AUDIO_OUTPUT_CFG: u32 = 4384; +pub const NET_DVR_GET_STUDENTS_STOODUP_TRIGGER: u32 = 4386; +pub const NET_DVR_SET_STUDENTS_STOODUP_TRIGGER: u32 = 4387; +pub const NET_DVR_GET_FRAMES_PEOPLE_COUNTING_SCHEDULE_CAPABILITIES: u32 = 4388; +pub const NET_DVR_GET_FRAMES_PEOPLE_COUNTING_SCHEDULE: u32 = 4389; +pub const NET_DVR_SET_FRAMES_PEOPLE_COUNTING_SCHEDULE: u32 = 4390; +pub const NET_DVR_GET_FRAMES_PEOPLE_COUNTING_TRIGGER: u32 = 4391; +pub const NET_DVR_SET_FRAMES_PEOPLE_COUNTING_TRIGGER: u32 = 4392; +pub const NET_DVR_GET_PERSONDENSITY_TRIGGER: u32 = 4393; +pub const NET_DVR_SET_PERSONDENSITY_TRIGGER: u32 = 4394; +pub const NET_DVR_GET_PERSONDENSITY_SCHEDULE_CAPABILITIES: u32 = 4395; +pub const NET_DVR_GET_PERSONDENSITY_SCHEDULE: u32 = 4396; +pub const NET_DVR_SET_PERSONDENSITY_SCHEDULE: u32 = 4397; +pub const NET_DVR_GET_STUDENTS_STOODUP_SCHEDULE_CAPABILITIES: u32 = 4398; +pub const NET_DVR_GET_STUDENTS_STOODUP_SCHEDULE: u32 = 4399; +pub const NET_DVR_SET_STUDENTS_STOODUP_SCHEDULE: u32 = 4400; +pub const NET_DVR_SET_FACE_THERMOMETRY_TRIGGER: u32 = 4401; +pub const NET_DVR_GET_FACE_THERMOMETRY_SCHEDULE_CAPABILITIES: u32 = 4402; +pub const NET_DVR_GET_FACE_THERMOMETRY_SCHEDULE: u32 = 4403; +pub const NET_DVR_SET_FACE_THERMOMETRY_SCHEDULE: u32 = 4404; +pub const NET_DVR_GET_FACE_THERMOMETRY_TRIGGER: u32 = 4405; +pub const NET_DVR_GET_PERSONQUEUE_TRIGGER: u32 = 4406; +pub const NET_DVR_SET_PERSONQUEUE_TRIGGER: u32 = 4407; +pub const NET_DVR_GET_PERSONQUEUE_SCHEDULE_CAPABILITIES: u32 = 4408; +pub const NET_DVR_GET_PERSONQUEUE_SCHEDULE: u32 = 4409; +pub const NET_DVR_SET_PERSONQUEUE_SCHEDULE: u32 = 4410; +pub const NET_DVR_SET_START_VIDEOAUDIO: u32 = 4411; +pub const NET_DVR_GET_FACESNAPCFG: u32 = 5001; +pub const NET_DVR_SET_FACESNAPCFG: u32 = 5002; +pub const NET_DVR_GET_DEVACCESS_CFG: u32 = 5005; +pub const NET_DVR_SET_DEVACCESS_CFG: u32 = 5006; +pub const NET_DVR_GET_SAVE_PATH_CFG: u32 = 5007; +pub const NET_DVR_SET_SAVE_PATH_CFG: u32 = 5008; +pub const NET_VCA_GET_RULECFG_V41: u32 = 5011; +pub const NET_VCA_SET_RULECFG_V41: u32 = 5012; +pub const NET_DVR_GET_AID_RULECFG_V41: u32 = 5013; +pub const NET_DVR_SET_AID_RULECFG_V41: u32 = 5014; +pub const NET_DVR_GET_TPS_RULECFG_V41: u32 = 5015; +pub const NET_DVR_SET_TPS_RULECFG_V41: u32 = 5016; +pub const NET_VCA_GET_FACEDETECT_RULECFG_V41: u32 = 5017; +pub const NET_VCA_SET_FACEDETECT_RULECFG_V41: u32 = 5018; +pub const NET_DVR_GET_PDC_RULECFG_V41: u32 = 5019; +pub const NET_DVR_SET_PDC_RULECFG_V41: u32 = 5020; +pub const NET_DVR_GET_TRIAL_VERSION_CFG: u32 = 5021; +pub const NET_DVR_GET_VCA_CTRLINFO_CFG: u32 = 5022; +pub const NET_DVR_SET_VCA_CTRLINFO_CFG: u32 = 5023; +pub const NET_DVR_SYN_CHANNEL_NAME: u32 = 5024; +pub const NET_DVR_GET_RESET_COUNTER: u32 = 5025; +pub const NET_DVR_SET_RESET_COUNTER: u32 = 5026; +pub const NET_DVR_GET_OBJECT_COLOR: u32 = 5027; +pub const NET_DVR_SET_OBJECT_COLOR: u32 = 5028; +pub const NET_DVR_GET_AUX_AREA: u32 = 5029; +pub const NET_DVR_SET_AUX_AREA: u32 = 5030; +pub const NET_DVR_GET_CHAN_WORKMODE: u32 = 5031; +pub const NET_DVR_SET_CHAN_WORKMODE: u32 = 5032; +pub const NET_DVR_GET_SLAVE_CHANNEL: u32 = 5033; +pub const NET_DVR_SET_SLAVE_CHANNEL: u32 = 5034; +pub const NET_DVR_GET_VQD_EVENT_RULE: u32 = 5035; +pub const NET_DVR_SET_VQD_EVENT_RULE: u32 = 5036; +pub const NET_DVR_GET_BASELINE_SCENE: u32 = 5037; +pub const NET_DVR_SET_BASELINE_SCENE: u32 = 5038; +pub const NET_DVR_CONTROL_BASELINE_SCENE: u32 = 5039; +pub const NET_DVR_SET_VCA_DETION_CFG: u32 = 5040; +pub const NET_DVR_GET_VCA_DETION_CFG: u32 = 5041; +pub const NET_DVR_GET_STREAM_ATTACHINFO_CFG: u32 = 5042; +pub const NET_DVR_SET_STREAM_ATTACHINFO_CFG: u32 = 5043; +pub const NET_DVR_GET_BV_CALIB_TYPE: u32 = 5044; +pub const NET_DVR_CONTROL_BV_SAMPLE_CALIB: u32 = 5045; +pub const NET_DVR_GET_BV_SAMPLE_CALIB_CFG: u32 = 5046; +pub const NET_DVR_GET_RULECFG_V42: u32 = 5049; +pub const NET_DVR_SET_RULECFG_V42: u32 = 5050; +pub const NET_DVR_SET_VCA_DETION_CFG_V40: u32 = 5051; +pub const NET_DVR_GET_VCA_DETION_CFG_V40: u32 = 5052; +pub const NET_DVR_SET_FLASH_CFG: u32 = 5110; +pub const NET_DVR_GET_T1TEST_CFG: u32 = 5053; +pub const NET_DVR_SET_T1TEST_CFG: u32 = 5054; +pub const NET_ITS_GET_OVERLAP_CFG_V50: u32 = 5055; +pub const NET_ITS_SET_OVERLAP_CFG_V50: u32 = 5056; +pub const NET_DVR_GET_PARKLAMP_STATE: u32 = 5057; +pub const NET_DVR_GET_CLOUDSTORAGE_CFG: u32 = 5058; +pub const NET_DVR_SET_CLOUDSTORAGE_CFG: u32 = 5059; +pub const NET_ITS_GET_BASE_INFO: u32 = 5060; +pub const NET_DVR_GET_SENSOR_INFO: u32 = 5061; +pub const NET_DVR_SET_SENSOR_SWITCH: u32 = 5062; +pub const NET_ITS_GET_IMGMERGE_CFG: u32 = 5063; +pub const NET_ITS_SET_IMGMERGE_CFG: u32 = 5064; +pub const NET_ITS_GET_UPLOAD_CFG: u32 = 5065; +pub const NET_ITS_SET_UPLOAD_CFG: u32 = 5066; +pub const NET_DVR_GET_SENSOR_PORT_CAPABILITIES: u32 = 5067; +pub const NET_ITS_GET_WORKSTATE: u32 = 5069; +pub const NET_ITS_GET_IPC_CHAN_CFG: u32 = 5070; +pub const NET_ITS_SET_IPC_CHAN_CFG: u32 = 5071; +pub const NET_ITS_GET_OVERLAP_CFG: u32 = 5072; +pub const NET_ITS_SET_OVERLAP_CFG: u32 = 5073; +pub const NET_DVR_GET_TRIGGEREX_CFG: u32 = 5074; +pub const NET_DVR_SET_TRIGGEREX_CFG: u32 = 5075; +pub const NET_ITS_GET_ROAD_INFO: u32 = 5076; +pub const NET_ITS_REMOTE_DEVICE_CONTROL: u32 = 5077; +pub const NET_ITS_GET_GATEIPC_CHAN_CFG: u32 = 5078; +pub const NET_ITS_SET_GATEIPC_CHAN_CFG: u32 = 5079; +pub const NET_ITS_TRANSCHAN_START: u32 = 5080; +pub const NET_ITS_GET_ECTWORKSTATE: u32 = 5081; +pub const NET_ITS_GET_ECT_CHAN_INFO: u32 = 5082; +pub const NET_DVR_GET_HEATMAP_RESULT: u32 = 5083; +pub const NET_DVR_SET_ITS_EXDEVCFG: u32 = 5084; +pub const NET_DVR_GET_ITS_EXDEVCFG: u32 = 5085; +pub const NET_DVR_GET_ITS_EXDEVSTATUS: u32 = 5086; +pub const NET_DVR_SET_ITS_ENDEVCMD: u32 = 5087; +pub const NET_DVR_SET_ENISSUED_DATADEL: u32 = 5088; +pub const NET_DVR_GET_PDC_RESULT: u32 = 5089; +pub const NET_ITS_GET_LAMP_CTRLCFG: u32 = 5090; +pub const NET_ITS_SET_LAMP_CTRLCFG: u32 = 5091; +pub const NET_ITS_GET_PARKSPACE_ATTRIBUTE_CFG: u32 = 5092; +pub const NET_ITS_SET_PARKSPACE_ATTRIBUTE_CFG: u32 = 5093; +pub const NET_ITS_SET_LAMP_EXTERNAL_CFG: u32 = 5095; +pub const NET_ITS_SET_COMPEL_CAPTURE: u32 = 5096; +pub const NET_DVR_SET_TIMESIGN_CFG: u32 = 5097; +pub const NET_DVR_GET_TIMESIGN_CFG: u32 = 5098; +pub const NET_DVR_GET_SIGNALLAMP_STATUS: u32 = 5099; +pub const NET_DVR_GET_MONITOR_PLAN_VQD: u32 = 5100; +pub const NET_DVR_GET_MONITORID_VQD: u32 = 5101; +pub const NET_DVR_SET_MONITOR_INFO: u32 = 5102; +pub const NET_DVR_DEL_MONITOR_PLAN_VQD: u32 = 5103; +pub const NET_DVR_GET_MONITOR_VQD_STATUS: u32 = 5104; +pub const NET_DVR_GET_RECORD_INFO: u32 = 5105; +pub const NET_DVR_GET_MONITOR_VQDCFG: u32 = 5106; +pub const NET_DVR_SET_MONITOR_VQDCFG: u32 = 5107; +pub const NET_DVR_SET_MONITOR_PLAN_VQDCFG: u32 = 5108; +pub const NET_DVR_SCENE_CHANGE_UPDATE: u32 = 5109; +pub const NET_DVR_GET_CALIBRATE_POINT: u32 = 5153; +pub const NET_DVR_GET_SCENE_CFG: u32 = 5201; +pub const NET_DVR_SET_SCENE_CFG: u32 = 5202; +pub const NET_DVR_GET_SCENE_REFERENCE_REGION: u32 = 5203; +pub const NET_DVR_SET_SCENE_REFERENCE_REGION: u32 = 5204; +pub const NET_DVR_GET_SCENE_CALIBRATION: u32 = 5205; +pub const NET_DVR_SET_SCENE_CALIBRATION: u32 = 5206; +pub const NET_DVR_GET_SCENE_MASK_REGION: u32 = 5207; +pub const NET_DVR_SET_SCENE_MASK_REGION: u32 = 5208; +pub const NET_DVR_GET_SCENE_LANECFG: u32 = 5209; +pub const NET_DVR_SET_SCENE_LANECFG: u32 = 5210; +pub const NET_DVR_GET_SCENE_AID_RULECFG: u32 = 5211; +pub const NET_DVR_SET_SCENE_AID_RULECFG: u32 = 5212; +pub const NET_DVR_GET_SCENE_TPS_RULECFG: u32 = 5213; +pub const NET_DVR_SET_SCENE_TPS_RULECFG: u32 = 5214; +pub const NET_DVR_GET_SCENE_TIME_CFG: u32 = 5215; +pub const NET_DVR_SET_SCENE_TIME_CFG: u32 = 5216; +pub const NET_DVR_GET_FORENSICS_MODE: u32 = 5217; +pub const NET_DVR_SET_FORENSICS_MODE: u32 = 5218; +pub const NET_DVR_FORCESTOP_FORENSICS_CTRL: u32 = 5219; +pub const NET_DVR_GET_ALARM_PROCESS_CFG: u32 = 5220; +pub const NET_DVR_SET_ALARM_PROCESS_CFG: u32 = 5221; +pub const NET_DVR_GET_BLOCKLIST_ALARM_INFO: u32 = 5222; +pub const NET_DVR_GET_STORAGE_RESOURCE_CFG: u32 = 5225; +pub const NET_DVR_SET_STORAGE_RESOURCE_CFG: u32 = 5226; +pub const NET_DVR_DEL_BLOCKLIST_ALARM_RECORD: u32 = 5227; +pub const NET_DVR_SET_BLOCKLIST_GROUP_INFO: u32 = 5229; +pub const NET_DVR_DEL_BLOCKLIST_GROUP_INFO: u32 = 5230; +pub const NET_DVR_GET_BLOCKLIST_GROUP_INFO: u32 = 5231; +pub const NET_DVR_SET_BLOCKLIST_GROUP_RECORD_CFG: u32 = 5232; +pub const NET_DVR_GET_BLOCKLIST_GROUP_RECORD_CFG: u32 = 5234; +pub const NET_DVR_DEL_BLOCKLIST_GROUP_RECORD_CFG: u32 = 5235; +pub const NET_DVR_GET_AREA_MONITOR_CFG: u32 = 5236; +pub const NET_DVR_SET_AREA_MONITOR_CFG: u32 = 5237; +pub const NET_DVR_DEL_AREA_MONITOR_CFG: u32 = 5238; +pub const NET_DVR_RETRIEVAL_SNAP_RECORD: u32 = 5240; +pub const NET_DVR_GET_ALARMLIST: u32 = 5241; +pub const NET_DVR_DETECT_IMAGE: u32 = 5242; +pub const NET_DVR_GET_SNAP_RECORD: u32 = 5243; +pub const NET_DVR_DEL_SNAP_RECORD: u32 = 5244; +pub const NET_DVR_GET_FACE_RECORD: u32 = 5245; +pub const NET_DVR_SET_FACE_RECORD: u32 = 5246; +pub const NET_DVR_DEL_FACE_RECORD: u32 = 5247; +pub const NET_DVR_GET_FACE_DATABASE: u32 = 5248; +pub const NET_DVR_SET_FACE_DATABASE: u32 = 5249; +pub const NET_DVR_DEL_FACE_DATABASE: u32 = 5250; +pub const NET_DVR_RETRIEVAL_FACE_DATABASE: u32 = 5251; +pub const NET_DVR_SET_BLOCKLIST_REL_DEV_CFG: u32 = 5252; +pub const NET_DVR_DEL_BLOCKLIST_REL_DEV: u32 = 5253; +pub const NET_DVR_GET_DISK_RAID_INFO: u32 = 6001; +pub const NET_DVR_SET_DISK_RAID_INFO: u32 = 6002; +pub const NET_DVR_GET_DVR_SYNCHRONOUS_IPC: u32 = 6005; +pub const NET_DVR_SET_DVR_SYNCHRONOUS_IPC: u32 = 6006; +pub const NET_DVR_SET_DVR_IPC_PASSWD: u32 = 6008; +pub const NET_DVR_GET_DEVICE_NET_USING_INFO: u32 = 6009; +pub const NET_DVR_SET_DVR_IPC_NET: u32 = 6012; +pub const NET_DVR_GET_RECORD_CHANNEL_INFO: u32 = 6013; +pub const NET_DVR_SET_RECORD_CHANNEL_INFO: u32 = 6014; +pub const NET_DVR_MOUNT_DISK: u32 = 6015; +pub const NET_DVR_UNMOUNT_DISK: u32 = 6016; +pub const NET_DVR_GET_STREAM_SRC_INFO: u32 = 6017; +pub const NET_DVR_SET_STREAM_SRC_INFO: u32 = 6018; +pub const NET_DVR_GET_STREAM_RECORD_INFO: u32 = 6019; +pub const NET_DVR_SET_STREAM_RECORD_INFO: u32 = 6020; +pub const NET_DVR_GET_STREAM_RECORD_STATUS: u32 = 6021; +pub const NET_DVR_SET_STREAM_RECORD_STATUS: u32 = 6022; +pub const NET_DVR_GET_STREAM_INFO: u32 = 6023; +pub const NET_DVR_GET_STREAM_SRC_INFO_V40: u32 = 6024; +pub const NET_DVR_SET_STREAM_SRC_INFO_V40: u32 = 6025; +pub const NET_DVR_GET_RELOCATE_INFO: u32 = 6026; +pub const NET_DVR_START_GOP_INFO_PASSBACK: u32 = 6032; +pub const NET_DVR_GET_CHANS_RECORD_STATUS_CFG: u32 = 6035; +pub const NET_DVR_SET_CHANS_RECORD_STATUS_CFG: u32 = 6036; +pub const NET_DVR_GET_IP_ALARM_GROUP_NUM: u32 = 6100; +pub const NET_DVR_GET_IP_ALARM_IN: u32 = 6101; +pub const NET_DVR_GET_IP_ALARM_OUT: u32 = 6102; +pub const NET_DVR_GET_FTPCFG_SECOND: u32 = 6103; +pub const NET_DVR_SET_FTPCFG_SECOND: u32 = 6104; +pub const NET_DVR_GET_DEFAULT_VIDEO_EFFECT: u32 = 6105; +pub const NET_DVR_SET_VIDEO_EFFECT: u32 = 6106; +pub const NET_DVR_DEL_INVALID_DISK: u32 = 6107; +pub const NET_DVR_GET_DRAWFRAME_DISK_QUOTA_CFG: u32 = 6109; +pub const NET_DVR_SET_DRAWFRAME_DISK_QUOTA_CFG: u32 = 6110; +pub const NET_DVR_GET_NAT_CFG: u32 = 6111; +pub const NET_DVR_SET_NAT_CFG: u32 = 6112; +pub const NET_DVR_GET_AES_KEY: u32 = 6113; +pub const NET_DVR_GET_POE_CFG: u32 = 6114; +pub const NET_DVR_SET_POE_CFG: u32 = 6115; +pub const NET_DVR_GET_CUSTOM_PRO_CFG: u32 = 6116; +pub const NET_DVR_SET_CUSTOM_PRO_CFG: u32 = 6117; +pub const NET_DVR_GET_STREAM_CABAC: u32 = 6118; +pub const NET_DVR_SET_STREAM_CABAC: u32 = 6119; +pub const NET_DVR_GET_ESATA_MINISAS_USAGE_CFG: u32 = 6120; +pub const NET_DVR_SET_ESATA_MINISAS_USAGE_CFG: u32 = 6121; +pub const NET_DVR_GET_HDCFG_V40: u32 = 6122; +pub const NET_DVR_SET_HDCFG_V40: u32 = 6123; +pub const NET_DVR_GET_POE_CHANNEL_ADD_MODE: u32 = 6124; +pub const NET_DVR_SET_POE_CHANNEL_ADD_MODE: u32 = 6125; +pub const NET_DVR_GET_DIGITAL_CHANNEL_STATE: u32 = 6126; +pub const NET_DVR_GET_BONJOUR_CFG: u32 = 6127; +pub const NET_DVR_SET_BONJOUR_CFG: u32 = 6128; +pub const NET_DVR_GET_SOCKS_CFG: u32 = 6130; +pub const NET_DVR_SET_SOCKS_CFG: u32 = 6131; +pub const NET_DVR_GET_QOS_CFG: u32 = 6132; +pub const NET_DVR_SET_QOS_CFG: u32 = 6133; +pub const NET_DVR_GET_HTTPS_CFG: u32 = 6134; +pub const NET_DVR_SET_HTTPS_CFG: u32 = 6135; +pub const NET_DVR_GET_WD1_CFG: u32 = 6136; +pub const NET_DVR_SET_WD1_CFG: u32 = 6137; +pub const NET_DVR_CREATE_CERT: u32 = 6138; +pub const NET_DVR_DELETE_CERT: u32 = 6139; +pub const NET_DVR_GET_RECORD_LOCK_PERCENTAGE: u32 = 6140; +pub const NET_DVR_SET_RECORD_LOCK_PERCENTAGE: u32 = 6141; +pub const NET_DVR_CMD_TRIGGER_PERIOD_RECORD: u32 = 6144; +pub const NET_DVR_UPLOAD_CERT: u32 = 6145; +pub const NET_DVR_DOWNLOAD_CERT: u32 = 6146; +pub const NET_DVR_GET_CERT: u32 = 6147; +pub const NET_DVR_GET_POS_FILTER_CFG: u32 = 6148; +pub const NET_DVR_SET_POS_FILTER_CFG: u32 = 6149; +pub const NET_DVR_GET_CONNECT_POS_CFG: u32 = 6150; +pub const NET_DVR_SET_CONNECT_POS_CFG: u32 = 6151; +pub const NET_DVR_GET_CHAN_FILTER_CFG: u32 = 6152; +pub const NET_DVR_SET_CHAN_FILTER_CFG: u32 = 6153; +pub const NET_DVR_GET_FTPCFG_V40: u32 = 6162; +pub const NET_DVR_SET_FTPCFG_V40: u32 = 6163; +pub const NET_DVR_GET_MONTHLY_RECORD_DISTRIBUTION: u32 = 6164; +pub const NET_DVR_GET_ACCESS_DEVICE_CHANNEL_INFO: u32 = 6165; +pub const NET_DVR_GET_PREVIEW_SWITCH_CFG: u32 = 6166; +pub const NET_DVR_SET_PREVIEW_SWITCH_CFG: u32 = 6167; +pub const NET_DVR_GET_N_PLUS_ONE_WORK_MODE: u32 = 6168; +pub const NET_DVR_SET_N_PLUS_ONE_WORK_MODE: u32 = 6169; +pub const NET_DVR_GET_HD_STATUS: u32 = 6170; +pub const NET_DVR_SET_HD_STATUS: u32 = 6171; +pub const NET_DVR_IMPORT_IPC_CFG_FILE: u32 = 6172; +pub const NET_DVR_EXPORT_IPC_CFG_FILE: u32 = 6173; +pub const NET_DVR_UPGRADE_IPC: u32 = 6174; +pub const NET_DVR_GET_RAID_BACKGROUND_TASK_SPEED: u32 = 6175; +pub const NET_DVR_SET_RAID_BACKGROUND_TASK_SPEED: u32 = 6176; +pub const NET_DVR_GET_EXCEPTIONCFG_V40: u32 = 6177; +pub const NET_DVR_SET_EXCEPTIONCFG_V40: u32 = 6178; +pub const NET_DVR_GET_PICCFG_V40: u32 = 6179; +pub const NET_DVR_SET_PICCFG_V40: u32 = 6180; +pub const NET_DVR_GET_ALARMINCFG_V40: u32 = 6181; +pub const NET_DVR_SET_ALARMINCFG_V40: u32 = 6182; +pub const NET_DVR_GET_IPALARMINCFG_V40: u32 = 6183; +pub const NET_DVR_GET_IPALARMOUTCFG_V40: u32 = 6185; +pub const NET_DVR_GET_USERCFG_V40: u32 = 6187; +pub const NET_DVR_SET_USERCFG_V40: u32 = 6188; +pub const NET_DVR_GET_WORK_STATUS: u32 = 6189; +pub const NET_DVR_GET_JPEG_CAPTURE_CFG_V40: u32 = 6190; +pub const NET_DVR_SET_JPEG_CAPTURE_CFG_V40: u32 = 6191; +pub const NET_DVR_GET_HDGROUP_CFG_V40: u32 = 6192; +pub const NET_DVR_SET_HDGROUP_CFG_V40: u32 = 6193; +pub const NET_DVR_GET_SMD_HOLIDAY_HANDLE: u32 = 6194; +pub const NET_DVR_SET_SMD_HOLIDAY_HANDLE: u32 = 6195; +pub const NET_DVR_GET_PIC_MODEL_CFG: u32 = 6196; +pub const NET_DVR_SET_PIC_MODEL_CFG: u32 = 6197; +pub const NET_DVR_START_LOCAL_MOUSE_EVENT: u32 = 6198; +pub const NET_DVR_START_SIMULARE_MOUSE_EVENT: u32 = 6199; +pub const NET_DVR_GET_WORK_STATUS_V50: u32 = 6200; +pub const NET_DVR_GET_ACCESS_CAMERA_INFO: u32 = 6201; +pub const NET_DVR_SET_ACCESS_CAMERA_INFO: u32 = 6202; +pub const NET_DVR_PULL_DISK: u32 = 6203; +pub const NET_DVR_SCAN_RAID: u32 = 6204; +pub const NET_DVR_GET_USER_RIGHT_CFG: u32 = 6210; +pub const NET_DVR_SET_USER_RIGHT_CFG: u32 = 6211; +pub const NET_DVR_ONE_KEY_CONFIG: u32 = 6212; +pub const NET_DVR_RESTART_SERVICE: u32 = 6213; +pub const NET_DVR_GET_MAX_MACHINE_NUM_CFG: u32 = 6214; +pub const NET_DVR_SET_MAX_MACHINE_NUM_CFG: u32 = 6215; +pub const NET_DVR_ADD_DEVICE: u32 = 6216; +pub const NET_DVR_DEL_DEVICE: u32 = 6217; +pub const NET_DVR_GET_DATA_CALLBACK_CFG: u32 = 6218; +pub const NET_DVR_SET_DATA_CALLBACK_CFG: u32 = 6219; +pub const NET_DVR_CLONE_LUN: u32 = 6220; +pub const NET_DVR_EXPAND_LUN: u32 = 6221; +pub const NET_DVR_GET_N_PLUS_ONE_DEVICE_INFO: u32 = 6222; +pub const NET_DVR_MODIFY_DVR_NET_DISK: u32 = 6223; +pub const NET_DVR_CREATE_NAS: u32 = 6225; +pub const NET_DVR_DELETE_NAS: u32 = 6226; +pub const NET_DVR_OPEN_ISCSI: u32 = 6227; +pub const NET_DVR_CLOSE_ISCSI: u32 = 6228; +pub const NET_DVR_GET_FC: u32 = 6229; +pub const NET_DVR_OPEN_FC: u32 = 6230; +pub const NET_DVR_CLOSE_FC: u32 = 6231; +pub const NET_DVR_ONE_KEY_CONFIG_SAN: u32 = 6232; +pub const NET_DVR_RECORD_CHECK: u32 = 6233; +pub const NET_DVR_ADD_RECORD_PASSBACK_TASK_MANUAL: u32 = 6234; +pub const NET_DVR_GET_ALL_RECORD_PASSBACK_TASK_MANUAL: u32 = 6235; +pub const NET_DVR_RECORD_PASSBACK_TASK_MANUAL_CTRL: u32 = 6236; +pub const NET_DVR_DEL_RECORD_PASSBACK_TASK_MANUAL: u32 = 6237; +pub const NET_DVR_GET_RECORD_PASSBACK_PLAN_CFG: u32 = 6238; +pub const NET_DVR_SET_RECORD_PASSBACK_PLAN_CFG: u32 = 6239; +pub const NET_DVR_GET_DEV_STORAGE_CFG: u32 = 6240; +pub const NET_DVR_GET_ONLINE_USER_CFG: u32 = 6241; +pub const NET_DVR_GET_RECORD_SEGMENT_CFG: u32 = 6242; +pub const NET_DVR_GET_REC_PASSBACK_TASK_EXECUTABLE: u32 = 6243; +pub const NET_DVR_GET_STREAM_MEDIA_CFG: u32 = 6244; +pub const NET_DVR_SET_STREAM_MEDIA_CFG: u32 = 6245; +pub const NET_DVR_GET_USERCFG_V50: u32 = 6246; +pub const NET_DVR_SET_USERCFG_V50: u32 = 6247; +pub const NET_DVR_GET_RECORD_PASSBACK_BASIC_CFG_CAP: u32 = 6248; +pub const NET_DVR_GET_RECORD_PASSBACK_BASIC_CFG: u32 = 6249; +pub const NET_DVR_SET_RECORD_PASSBACK_BASIC_CFG: u32 = 6250; +pub const NET_DVR_ONE_KEY_CONFIG_V50: u32 = 6251; +pub const NET_DVR_GET_RACM_CAP: u32 = 6252; +pub const NET_DVR_GET_THUMBNAILS: u32 = 6253; +pub const NET_DVR_ADD_RECORD_PASSBACK_TASK_MANUAL_V50: u32 = 6254; +pub const NET_DVR_GET_RECORD_PASSBACK_HISTORY_PLAN_CFG_CAP: u32 = 6255; +pub const NET_DVR_GET_RECORD_PASSBACK_HISTORY_PLAN_CFG: u32 = 6256; +pub const NET_DVR_SET_RECORD_PASSBACK_HISTORY_PLAN_CFG: u32 = 6257; +pub const NET_DVR_ONE_KEY_CONFIG_V51: u32 = 6258; +pub const NET_DVR_GET_RECORD_PACK: u32 = 6301; +pub const NET_DVR_SET_RECORD_PACK: u32 = 6302; +pub const NET_DVR_GET_CLOUD_STORAGE_CFG: u32 = 6303; +pub const NET_DVR_SET_CLOUD_STORAGE_CFG: u32 = 6304; +pub const NET_DVR_GET_GOP_INFO: u32 = 6305; +pub const NET_DVR_GET_PHY_DISK_INFO: u32 = 6306; +pub const NET_DVR_GET_RECORDING_AUTO_TRACK_CFG: u32 = 6307; +pub const NET_DVR_SET_RECORDING_AUTO_TRACK_CFG: u32 = 6308; +pub const NET_DVR_GET_RECORDING_PUBLISH_CFG: u32 = 6309; +pub const NET_DVR_SET_RECORDING_PUBLISH_CFG: u32 = 6310; +pub const NET_DVR_RECORDING_ONEKEY_CONTROL: u32 = 6311; +pub const NET_DVR_GET_RECORDING_END_TIME: u32 = 6312; +pub const NET_DVR_RECORDING_PUBLISH: u32 = 6313; +pub const NET_DVR_GET_CURRICULUM_CFG: u32 = 6314; +pub const NET_DVR_SET_CURRICULUM_CFG: u32 = 6315; +pub const NET_DVR_GET_COURSE_INDEX_CFG: u32 = 6316; +pub const NET_DVR_SET_COURSE_INDEX_CFG: u32 = 6317; +pub const NET_DVR_GET_PPT_CHANNEL: u32 = 6318; +pub const NET_DVR_GET_PPT_DETECT_CFG: u32 = 6319; +pub const NET_DVR_SET_PPT_DETECT_CFG: u32 = 6320; +pub const NET_DVR_GET_RECORDINGHOST_CFG: u32 = 6321; +pub const NET_DVR_SET_RECORDINGHOST_CFG: u32 = 6322; +pub const NET_DVR_GET_BACKUP_RECORD_CFG: u32 = 6323; +pub const NET_DVR_SET_BACKUP_RECORD_CFG: u32 = 6324; +pub const NET_DVR_GET_AUDIO_ACTIVATION_CFG: u32 = 6326; +pub const NET_DVR_SET_AUDIO_ACTIVATION_CFG: u32 = 6327; +pub const NET_DVR_GET_DECODERCFG_V40: u32 = 6328; +pub const NET_DVR_SET_DECODERCFG_V40: u32 = 6329; +pub const NET_DVR_INFRARED_OUTPUT_CONTROL: u32 = 6330; +pub const NET_DVR_GET_INFRARED_CMD_NAME_CFG: u32 = 6331; +pub const NET_DVR_SET_INFRARED_CMD_NAME_CFG: u32 = 6332; +pub const NET_DVR_START_INFRARED_LEARN: u32 = 6333; +pub const NET_DVR_GET_TRIAL_SYSTEM_CFG: u32 = 6334; +pub const NET_DVR_SET_CASE_INFO: u32 = 6335; +pub const NET_DVR_GET_TRIAL_MICROPHONE_STATUS: u32 = 6336; +pub const NET_DVR_SET_TRIAL_MICROPHONE_STATUS: u32 = 6337; +pub const NET_DVR_GET_TRIAL_HOST_STATUS: u32 = 6338; +pub const NET_DVR_GET_LAMP_OUT: u32 = 6339; +pub const NET_DVR_SET_LAMP_OUT: u32 = 6340; +pub const NET_DVR_LAMP_REMOTE_CONTROL: u32 = 6341; +pub const NET_DVR_REMOTE_CONTROL_PLAY: u32 = 6342; +pub const NET_DVR_GET_LOCAL_INPUT_CFG: u32 = 6343; +pub const NET_DVR_SET_LOCAL_INPUT_CFG: u32 = 6344; +pub const NET_DVR_GET_CASE_INFO: u32 = 6345; +pub const NET_DVR_INQUEST_GET_CDW_STATUS: u32 = 6350; +pub const NET_DVR_GET_MIX_AUDIOIN_CFG: u32 = 6351; +pub const NET_DVR_SET_MIX_AUDIOIN_CFG: u32 = 6352; +pub const NET_DVR_GET_MIX_AUDIOOUT_CFG: u32 = 6353; +pub const NET_DVR_SET_MIX_AUDIOOUT_CFG: u32 = 6354; +pub const NET_DVR_GET_AUDIOIN_VOLUME_CFG: u32 = 6355; +pub const NET_DVR_SET_AUDIOIN_VOLUME_CFG: u32 = 6356; +pub const NET_DVR_GET_AREA_MASK_CFG: u32 = 6357; +pub const NET_DVR_SET_AREA_MASK_CFG: u32 = 6358; +pub const NET_DVR_GET_AUDIO_DIACRITICAL_CFG: u32 = 6359; +pub const NET_DVR_SET_AUDIO_DIACRITICAL_CFG: u32 = 6360; +pub const NET_DVR_GET_WIFI_DHCP_ADDR_CFG: u32 = 6361; +pub const NET_DVR_SET_WIFI_DHCP_ADDR_CFG: u32 = 6362; +pub const NET_DVR_GET_WIFI_CLIENT_LIST_INFO: u32 = 6363; +pub const NET_DVR_REMOTECONTROL_POWER_ON: u32 = 6364; +pub const NET_DVR_GET_MULTISTREAM_RELATION_CHAN_CFG: u32 = 6365; +pub const NET_DVR_SET_MULTISTREAM_RELATION_CHAN_CFG: u32 = 6366; +pub const NET_DVR_GET_VIDEOOUT_RESOLUTION_CFG: u32 = 6367; +pub const NET_DVR_SET_VIDEOOUT_RESOLUTION_CFG: u32 = 6368; +pub const NET_DVR_GET_AUDIOOUT_VOLUME_CFG: u32 = 6369; +pub const NET_DVR_SET_AUDIOOUT_VOLUME_CFG: u32 = 6370; +pub const NET_DVR_INQUEST_PAUSE_CDW: u32 = 6371; +pub const NET_DVR_INQUEST_RESUME_CDW: u32 = 6372; +pub const NET_DVR_GET_INPUT_CHAN_CFG: u32 = 6373; +pub const NET_DVR_SET_INPUT_CHAN_CFG: u32 = 6374; +pub const NET_DVR_GET_INQUEST_MIX_AUDIOIN_CFG: u32 = 6375; +pub const NET_DVR_SET_INQUEST_MIX_AUDIOIN_CFG: u32 = 6376; +pub const NET_DVR_CASE_INFO_CTRL: u32 = 6377; +pub const NET_DVR_GET_INQUEST_USER_RIGHT: u32 = 6378; +pub const NET_DVR_SET_INQUEST_USER_RIGHT: u32 = 6379; +pub const NET_DVR_GET_INQUEST_CASE_INFO: u32 = 6380; +pub const NET_DVR_SET_INQUEST_CASE_INFO: u32 = 6381; +pub const NET_DVR_GET_FILM_MODE_CFG: u32 = 6387; +pub const NET_DVR_SET_FILM_MODE_CFG: u32 = 6388; +pub const NET_DVR_GET_FILM_MODE_CFG_CAP: u32 = 6389; +pub const NET_DVR_GET_DIRECTED_STRATEGY_CFG: u32 = 6390; +pub const NET_DVR_SET_DIRECTED_STRATEGY_CFG: u32 = 6391; +pub const NET_DVR_GET_DIRECTED_STRATEGY_CFG_CAP: u32 = 6392; +pub const NET_DVR_GET_FRAME_CFG: u32 = 6393; +pub const NET_DVR_SET_FRAME_CFG: u32 = 6394; +pub const NET_DVR_GET_FRAME_CFG_CAP: u32 = 6395; +pub const NET_DVR_GET_AUDIO_EFFECTIVE_CFG: u32 = 6396; +pub const NET_DVR_SET_AUDIO_EFFECTIVE_CFG: u32 = 6397; +pub const NET_DVR_GET_AUDIO_EFFECTIVE_CFG_CAP: u32 = 6398; +pub const NET_DVR_GET_RECORD_VIDEO_CFG: u32 = 6399; +pub const NET_DVR_SET_RECORD_VIDEO_CFG: u32 = 6400; +pub const NET_DVR_GET_OUTPUT_CFG: u32 = 6401; +pub const NET_DVR_SET_OUTPUT_CFG: u32 = 6402; +pub const NET_DVR_CODER_DISPLAY_START: u32 = 6403; +pub const NET_DVR_CODER_DISPLAY_STOP: u32 = 6404; +pub const NET_DVR_GET_WINDOW_STATUS: u32 = 6405; +pub const NET_DVR_GET_VQD_LOOP_DIAGNOSE_CFG: u32 = 6406; +pub const NET_DVR_SET_VQD_LOOP_DIAGNOSE_CFG: u32 = 6407; +pub const NET_DVR_GET_VQD_DIAGNOSE_INFO: u32 = 6408; +pub const NET_DVR_RECORDING_PUBLISH_FILE: u32 = 6421; +pub const NET_DVR_GET_RECORDING_PUBLISH_FILE_CAP: u32 = 6422; +pub const NET_DVR_GET_PUBLISH_PROGRESS: u32 = 6423; +pub const NET_DVR_GET_RECORD_VIDEO_CFG_CAP: u32 = 6424; +pub const NET_DVR_GET_RTMP_CFG: u32 = 6425; +pub const NET_DVR_SET_RTMP_CFG: u32 = 6426; +pub const NET_DVR_GET_RTMP_CFG_CAP: u32 = 6427; +pub const NET_DVR_DEL_BACKGROUND_PIC: u32 = 6428; +pub const NET_DVR_GET_BACKGROUND_PIC_CFG: u32 = 6429; +pub const NET_DVR_GET_BACKGROUND_PIC_INFO: u32 = 6430; +pub const NET_DVR_SET_BACKGROUND_PIC_INFO: u32 = 6431; +pub const NET_DVR_GET_BACKGROUND_PIC_INFO_CAP: u32 = 6432; +pub const NET_DVR_GET_RECORD_HOST_CAP: u32 = 6433; +pub const NET_DVR_GET_COURSE_LIST: u32 = 6434; +pub const NET_DVR_GET_RECORD_STATUS: u32 = 6435; +pub const NET_DVR_MANUAL_CURRICULUM_CONTROL: u32 = 6436; +pub const NET_DVR_GET_IMAGE_DIFF_DETECTION_CFG: u32 = 6437; +pub const NET_DVR_SET_IMAGE_DIFF_DETECTION_CFG: u32 = 6438; +pub const NET_DVR_GET_IMAGE_DIFF_DETECTION_CFG_CAP: u32 = 6439; +pub const NET_DVR_GET_RECORDING_PUBLISH_FILE_INFO: u32 = 6440; +pub const NET_DVR_SET_RECORDING_PUBLISH_FILE_INFO: u32 = 6441; +pub const NET_DVR_GET_RECORDING_PUBLISH_FILE_INFO_CAP: u32 = 6442; +pub const NET_DVR_MANUAL_CURRICULUM_CONTROL_CAP: u32 = 6443; +pub const NET_DVR_GET_STATISTIC_DATA_LIST: u32 = 6444; +pub const NET_DVR_GET_DEVICE_LAN_ENCODE: u32 = 6501; +pub const NET_DVR_GET_GBT28181_SERVICE_CFG: u32 = 6503; +pub const NET_DVR_SET_GBT28181_SERVICE_CFG: u32 = 6504; +pub const NET_DVR_GET_GBT28181_SERVICE_CAPABILITIES: u32 = 6505; +pub const NET_DVR_GET_CLOUD_URL: u32 = 6506; +pub const NET_DVR_GET_CLOUD_URL_CAP: u32 = 6507; +pub const NET_DVR_GET_CLOUD_CFG: u32 = 6508; +pub const NET_DVR_SET_CLOUD_CFG: u32 = 6509; +pub const NET_DVR_GET_CLOUD_CFG_CAP: u32 = 6510; +pub const NET_DVR_GET_CLOUD_UPLOADSTRATEGY: u32 = 6511; +pub const NET_DVR_SET_CLOUD_UPLOADSTRATEGY: u32 = 6512; +pub const NET_DVR_GET_CLOUDSTORAGE_UPLOADSTRATEGY_CAP: u32 = 6513; +pub const NET_DVR_GET_VIDEO_IMAGE_DB_CFG: u32 = 6601; +pub const NET_DVR_SET_VIDEO_IMAGE_DB_CFG: u32 = 6602; +pub const NET_DVR_GET_VIDEO_IMAGE_DB_CFG_CAP: u32 = 6603; +pub const NET_DVR_GET_FILE_INFO_BY_ID: u32 = 6604; +pub const NET_DVR_QUERY_FILE_INFO_CAP: u32 = 6605; +pub const NET_DVR_DEL_FILE_FROM_DB: u32 = 6606; +pub const NET_DVR_GET_VIDEO_IMAGE_DB_CAP: u32 = 6607; +pub const NET_DVR_GET_FIGURE: u32 = 6610; +pub const NET_DVR_SYNC_IPC_PASSWD: u32 = 6621; +pub const NET_DVR_GET_VEHICLE_BLOCKLIST_SCHEDULE: u32 = 6622; +pub const NET_DVR_SET_VEHICLE_BLOCKLIST_SCHEDULE: u32 = 6623; +pub const NET_DVR_GET_VEHICLE_ALLOWLIST_SCHEDULE: u32 = 6624; +pub const NET_DVR_SET_VEHICLE_ALLOWLIST_SCHEDULE: u32 = 6625; +pub const NET_DVR_GET_VEHICLE_BLOCKLIST_EVENT_TRIGGER: u32 = 6626; +pub const NET_DVR_SET_VEHICLE_BLOCKLIST_EVENT_TRIGGER: u32 = 6627; +pub const NET_DVR_GET_VEHICLE_ALLOWLIST_EVENT_TRIGGER: u32 = 6628; +pub const NET_DVR_SET_VEHICLE_ALLOWLIST_EVENT_TRIGGER: u32 = 6629; +pub const NET_DVR_GET_TRAFFIC_CAP: u32 = 6630; +pub const NET_DVR_GET_VEHICLE_ALLLIST_EVENT_TRIGGER: u32 = 6631; +pub const NET_DVR_SET_VEHICLE_ALLLIST_EVENT_TRIGGER: u32 = 6632; +pub const NET_DVR_GET_VEHICLE_OTHERLIST_EVENT_TRIGGER: u32 = 6633; +pub const NET_DVR_SET_VEHICLE_OTHERLIST_EVENT_TRIGGER: u32 = 6634; +pub const NET_DVR_GET_STORAGEDETECTION_EVENT_TRIGGER: u32 = 6635; +pub const NET_DVR_SET_STORAGEDETECTION_EVENT_TRIGGER: u32 = 6636; +pub const NET_DVR_GET_STORAGEDETECTION_SCHEDULE_CAPABILITIES: u32 = 6637; +pub const NET_DVR_GET_STORAGEDETECTION_SCHEDULE: u32 = 6638; +pub const NET_DVR_SET_STORAGEDETECTION_SCHEDULE: u32 = 6639; +pub const NET_DVR_GET_STORAGEDETECTION_STATE: u32 = 6640; +pub const NET_DVR_GET_STORAGEDETECTION_RWLOCK: u32 = 6646; +pub const NET_DVR_GET_STORAGEDETECTION_RWLOCK_CAPABILITIES: u32 = 6647; +pub const NET_DVR_SET_STORAGEDETECTION_RWLOCK: u32 = 6648; +pub const NET_DVR_GET_PTZTRACKSTATUS: u32 = 6649; +pub const NET_DVR_SET_STORAGEDETECTION_UNLOCK: u32 = 6653; +pub const NET_DVR_GET_STORAGEDETECTION_UNLOCK_CAPABILITIES: u32 = 6654; +pub const NET_DVR_SET_SHIPSDETECTION_CFG: u32 = 6655; +pub const NET_DVR_GET_SHIPSDETECTION_CFG: u32 = 6656; +pub const NET_DVR_GET_SHIPSDETECTION_CAPABILITIES: u32 = 6657; +pub const NET_DVR_GET_SHIPSDETECTION_COUNT: u32 = 6658; +pub const NET_DVR_SHIPSCOUNT_DELETE_CTRL: u32 = 6659; +pub const NET_DVR_GET_BAREDATAOVERLAY_CAPABILITIES: u32 = 6660; +pub const NET_DVR_SET_BAREDATAOVERLAY_CFG: u32 = 6661; +pub const NET_DVR_GET_BAREDATAOVERLAY_CFG: u32 = 6662; +pub const NET_DVR_GET_SHIPSDETECTION_SCHEDULE: u32 = 6663; +pub const NET_DVR_SET_SHIPSDETECTION_SCHEDULE: u32 = 6664; +pub const NET_DVR_GET_SHIPSDETECTION_EVENT_TRIGGER: u32 = 6665; +pub const NET_DVR_SET_SHIPSDETECTION_EVENT_TRIGGER: u32 = 6666; +pub const NET_DVR_GET_SHIPSDETECTION_SCHEDULE_CAPABILITIES: u32 = 6667; +pub const NET_DVR_FIRE_FOCUSZOOM_CTRL: u32 = 6670; +pub const NET_DVR_GET_FIREDETECTION_SCHEDULE_CAPABILITIES: u32 = 6671; +pub const NET_DVR_GET_FIREDETECTION_SCHEDULE: u32 = 6672; +pub const NET_DVR_SET_FIREDETECTION_SCHEDULE: u32 = 6673; +pub const NET_DVR_GET_MANUALRANGING_CAPABILITIES: u32 = 6675; +pub const NET_DVR_SET_MANUALRANGING: u32 = 6677; +pub const NET_DVR_GET_MANUALDEICING_CAPABILITIES: u32 = 6678; +pub const NET_DVR_SET_MANUALDEICING: u32 = 6679; +pub const NET_DVR_GET_MANUALDEICING: u32 = 6680; +pub const NET_DVR_GET_THERMALPOWER_CAPABILITIES: u32 = 6689; +pub const NET_DVR_GET_THERMALPOWER: u32 = 6690; +pub const NET_DVR_SET_THERMALPOWER: u32 = 6691; +pub const NET_DVR_GET_PTZABSOLUTEEX_CAPABILITIES: u32 = 6695; +pub const NET_DVR_GET_PTZABSOLUTEEX: u32 = 6696; +pub const NET_DVR_SET_PTZABSOLUTEEX: u32 = 6697; +pub const NET_DVR_GET_CRUISE_CAPABILITIES: u32 = 6698; +pub const NET_DVR_GET_CRUISE_INFO: u32 = 6699; +pub const NET_DVR_GET_TEMP_HUMI_CAPABILITIES: u32 = 6700; +pub const NET_DVR_GET_TEMP_HUMI_INFO: u32 = 6701; +pub const NET_DVR_GET_MANUALTHERM_INFO: u32 = 6706; +pub const NET_DVR_GET_MANUALTHERM_CAPABILITIES: u32 = 6707; +pub const NET_DVR_SET_MANUALTHERM: u32 = 6708; +pub const NET_DVR_GET_ACCESSORY_CARD_INFO_CAPABILITIES: u32 = 6709; +pub const NET_DVR_GET_ACCESSORY_CARD_INFO: u32 = 6710; +pub const NET_DVR_GET_THERMINTELL_CAPABILITIES: u32 = 6711; +pub const NET_DVR_GET_THERMINTELL: u32 = 6712; +pub const NET_DVR_SET_THERMINTELL: u32 = 6713; +pub const NET_GET_CRUISEPOINT_V50: u32 = 6714; +pub const NET_DVR_GET_MANUALTHERM_BASIC_CAPABILITIES: u32 = 6715; +pub const NET_DVR_SET_MANUALTHERM_BASICPARAM: u32 = 6716; +pub const NET_DVR_GET_MANUALTHERM_BASICPARAM: u32 = 6717; +pub const NET_DVR_GET_FIRESHIELDMASK_CAPABILITIES: u32 = 6718; +pub const NET_DVR_GET_HIDDEN_INFORMATION_CAPABILITIES: u32 = 6720; +pub const NET_DVR_GET_HIDDEN_INFORMATION: u32 = 6721; +pub const NET_DVR_SET_HIDDEN_INFORMATION: u32 = 6722; +pub const NET_DVR_SET_FIRESHIELDMASK_CFG: u32 = 6723; +pub const NET_DVR_GET_FIRESHIELDMASK_CFG: u32 = 6724; +pub const NET_DVR_GET_SMOKESHIELDMASK_CAPABILITIES: u32 = 6725; +pub const NET_DVR_SET_SMOKESHIELDMASK_CFG: u32 = 6726; +pub const NET_DVR_GET_SMOKESHIELDMASK_CFG: u32 = 6727; +pub const NET_DVR_GET_AREASCAN_CAPABILITIES: u32 = 6728; +pub const NET_DVR_GET_AREASCAN_CFG: u32 = 6730; +pub const NET_DVR_DEL_AREASCAN_CFG: u32 = 6731; +pub const NET_DVR_AREASCAN_INIT_CTRL: u32 = 6732; +pub const NET_DVR_AREASCAN_CONFIRM_CTRL: u32 = 6733; +pub const NET_DVR_AREASCAN_STOP_CTRL: u32 = 6734; +pub const NET_DVR_SAVE_SCANZOOM_CTRL: u32 = 6735; +pub const NET_DVR_GET_SCANZOOM_CTRL: u32 = 6736; +pub const NET_DVR_DEL_FIRESHIELDMASK_CTRL: u32 = 6737; +pub const NET_DVR_DEL_SMOKESHIELDMASK_CTRL: u32 = 6738; +pub const NET_DVR_GET_DENSEFOG_EVENT_TRIGGER: u32 = 6740; +pub const NET_DVR_SET_DENSEFOG_EVENT_TRIGGER: u32 = 6741; +pub const NET_DVR_SET_DENSEFOGDETECTION_CFG: u32 = 6742; +pub const NET_DVR_GET_DENSEFOGDETECTION_CFG: u32 = 6743; +pub const NET_DVR_GET_DENSEFOGDETECTION_CAPABILITIES: u32 = 6744; +pub const NET_DVR_GET_THERMOMETRY_SCHEDULE_CAPABILITIES: u32 = 6750; +pub const NET_DVR_GET_THERMOMETRY_SCHEDULE: u32 = 6751; +pub const NET_DVR_SET_THERMOMETRY_SCHEDULE: u32 = 6752; +pub const NET_DVR_GET_TEMPERTURE_SCHEDULE_CAPABILITIES: u32 = 6753; +pub const NET_DVR_GET_TEMPERTURE_SCHEDULE: u32 = 6754; +pub const NET_DVR_SET_TEMPERTURE_SCHEDULE: u32 = 6755; +pub const NET_DVR_GET_SEARCH_LOG_CAPABILITIES: u32 = 6756; +pub const NET_DVR_GET_VEHICLEFLOW: u32 = 6758; +pub const NET_DVR_GET_IPADDR_FILTERCFG_V50: u32 = 6759; +pub const NET_DVR_SET_IPADDR_FILTERCFG_V50: u32 = 6760; +pub const NET_DVR_GET_TEMPHUMSENSOR_CAPABILITIES: u32 = 6761; +pub const NET_DVR_GET_TEMPHUMSENSOR: u32 = 6762; +pub const NET_DVR_SET_TEMPHUMSENSOR: u32 = 6763; +pub const NET_DVR_GET_THERMOMETRY_MODE_CAPABILITIES: u32 = 6764; +pub const NET_DVR_GET_THERMOMETRY_MODE: u32 = 6765; +pub const NET_DVR_SET_THERMOMETRY_MODE: u32 = 6766; +pub const NET_DVR_GET_THERMAL_PIP_CAPABILITIES: u32 = 6767; +pub const NET_DVR_GET_THERMAL_PIP: u32 = 6768; +pub const NET_DVR_SET_THERMAL_PIP: u32 = 6769; +pub const NET_DVR_GET_THERMAL_INTELRULEDISPLAY_CAPABILITIES: u32 = 6770; +pub const NET_DVR_GET_THERMAL_INTELRULE_DISPLAY: u32 = 6771; +pub const NET_DVR_SET_THERMAL_INTELRULE_DISPLAY: u32 = 6772; +pub const NET_DVR_GET_THERMAL_ALGVERSION: u32 = 6773; +pub const NET_DVR_GET_CURRENT_LOCK_CAPABILITIES: u32 = 6774; +pub const NET_DVR_GET_CURRENT_LOCK: u32 = 6775; +pub const NET_DVR_SET_CURRENT_LOCK: u32 = 6776; +pub const NET_DVR_DEL_MANUALTHERM_RULE: u32 = 6778; +pub const NET_DVR_GET_UPGRADE_INFO: u32 = 6779; +pub const NET_DVR_SWITCH_TRANSFER: u32 = 7000; +pub const NET_DVR_GET_MB_POWERCTRLPARA: u32 = 8000; +pub const NET_DVR_SET_MB_POWERCTRLPARA: u32 = 8001; +pub const NET_DVR_GET_AUTOBACKUPPARA: u32 = 8002; +pub const NET_DVR_SET_AUTOBACKUPPARA: u32 = 8003; +pub const NET_DVR_GET_MB_GPSPARA: u32 = 8004; +pub const NET_DVR_SET_MB_GPSPARA: u32 = 8005; +pub const NET_DVR_GET_MB_SENSORINPARA: u32 = 8006; +pub const NET_DVR_SET_MB_SENSORINPARA: u32 = 8007; +pub const NET_DVR_GET_GSENSORPARA: u32 = 8008; +pub const NET_DVR_SET_GSENSORPARA: u32 = 8009; +pub const NET_DVR_GET_MB_DOWNLOADSVRPARA: u32 = 8010; +pub const NET_DVR_SET_MB_DOWNLOADSVRPARA: u32 = 8011; +pub const NET_DVR_GET_PLATERECOG_PARA: u32 = 8012; +pub const NET_DVR_SET_PLATERECOG_PARA: u32 = 8013; +pub const NET_DVR_GET_ENFORCESYS_PARA: u32 = 8014; +pub const NET_DVR_SET_ENFORCESYS_PARA: u32 = 8015; +pub const NET_DVR_GET_GPS_DATA: u32 = 8016; +pub const NET_DVR_GET_ANALOG_ALARMINCFG: u32 = 8017; +pub const NET_DVR_SET_ANALOG_ALARMINCFG: u32 = 8018; +pub const NET_DVR_GET_SYSTEM_CAPABILITIES: u32 = 8100; +pub const NET_DVR_GET_EAGLEEYE_CAPABILITIES: u32 = 8101; +pub const NET_DVR_GET_SLAVECAMERA_CALIB_V51: u32 = 8102; +pub const NET_DVR_SET_SLAVECAMERA_CALIB_V51: u32 = 8103; +pub const NET_DVR_SET_GOTOSCENE: u32 = 8105; +pub const NET_DVR_GET_PTZ_NOTIFICATION: u32 = 8201; +pub const NET_DVR_SET_PTZ_NOTIFICATION: u32 = 8202; +pub const NET_DVR_MATRIX_WALL_SET: u32 = 9001; +pub const NET_DVR_MATRIX_WALL_GET: u32 = 9002; +pub const NET_DVR_WALLWIN_GET: u32 = 9003; +pub const NET_DVR_WALLWIN_SET: u32 = 9004; +pub const NET_DVR_WALLWINPARAM_SET: u32 = 9005; +pub const NET_DVR_WALLWINPARAM_GET: u32 = 9006; +pub const NET_DVR_WALLSCENEPARAM_GET: u32 = 9007; +pub const NET_DVR_WALLSCENEPARAM_SET: u32 = 9008; +pub const NET_DVR_MATRIX_GETWINSTATUS: u32 = 9009; +pub const NET_DVR_GET_WINASSOCIATEDDEVINFO: u32 = 9010; +pub const NET_DVR_WALLOUTPUT_GET: u32 = 9011; +pub const NET_DVR_WALLOUTPUT_SET: u32 = 9012; +pub const NET_DVR_GET_UNITEDMATRIXSYSTEM: u32 = 9013; +pub const NET_DVR_GET_WALL_CFG: u32 = 9014; +pub const NET_DVR_SET_WALL_CFG: u32 = 9015; +pub const NET_DVR_CLOSE_ALL_WND: u32 = 9016; +pub const NET_DVR_SWITCH_WIN_TOP: u32 = 9017; +pub const NET_DVR_SWITCH_WIN_BOTTOM: u32 = 9018; +pub const NET_DVR_CLOSE_ALL_WND_V41: u32 = 9019; +pub const NET_DVR_GET_WALL_WINDOW_V41: u32 = 9020; +pub const NET_DVR_SET_WALL_WINDOW_V41: u32 = 9021; +pub const NET_DVR_GET_CURRENT_SCENE_V41: u32 = 9022; +pub const NET_DVR_GET_WALL_SCENE_PARAM_V41: u32 = 9023; +pub const NET_DVR_SET_WALL_SCENE_PARAM_V41: u32 = 9024; +pub const NET_DVR_GET_MATRIX_LOGO_CFG: u32 = 9025; +pub const NET_DVR_SET_MATRIX_LOGO_CFG: u32 = 9026; +pub const NET_DVR_GET_WIN_LOGO_CFG: u32 = 9027; +pub const NET_DVR_SET_WIN_LOGO_CFG: u32 = 9028; +pub const NET_DVR_DELETE_LOGO: u32 = 9029; +pub const NET_DVR_SET_DISPLAY_EFFECT_CFG: u32 = 9030; +pub const NET_DVR_GET_DISPLAY_EFFECT_CFG: u32 = 9031; +pub const NET_DVR_DEC_PLAY_REMOTE_FILE: u32 = 9032; +pub const NET_DVR_DEC_PLAY_REMOTE_FILE_V50: u32 = 9314; +pub const NET_DVR_GET_WIN_ZOOM_STATUS: u32 = 9033; +pub const NET_DVR_GET_ALL_MATRIX_LOGOCFG: u32 = 9034; +pub const NET_DVR_SIMULATE_REMOTE_CONTROL: u32 = 9035; +pub const NET_DVR_SET_SCREEN_SIGNAL_CFG: u32 = 9036; +pub const NET_DVR_GET_SCREEN_SIGNAL_CFG: u32 = 9037; +pub const NET_DVR_SET_SCREEN_SPLICE_CFG: u32 = 9038; +pub const NET_DVR_GET_SCREEN_SPLICE_CFG: u32 = 9039; +pub const NET_DVR_GET_SCREEN_FAN_WORK_MODE: u32 = 9040; +pub const NET_DVR_SET_SCREEN_FAN_WORK_MODE: u32 = 9041; +pub const NET_DVR_SHOW_SCREEN_WORK_STATUS: u32 = 9044; +pub const NET_DVR_GET_VGA_CFG: u32 = 9045; +pub const NET_DVR_SET_VGA_CFG: u32 = 9046; +pub const NET_DVR_GET_SCREEN_MENU_CFG: u32 = 9048; +pub const NET_DVR_SET_SCREEN_MENU_CFG: u32 = 9049; +pub const NET_DVR_SET_SCREEN_DISPLAY_CFG: u32 = 9050; +pub const NET_DVR_GET_SCREEN_DISPLAY_CFG: u32 = 9051; +pub const NET_DVR_SET_FUSION_CFG: u32 = 9052; +pub const NET_DVR_GET_FUSION_CFG: u32 = 9053; +pub const NET_DVR_SET_PIP_CFG: u32 = 9060; +pub const NET_DVR_GET_PIP_CFG: u32 = 9061; +pub const NET_DVR_SET_DEFOG_LCD: u32 = 9073; +pub const NET_DVR_GET_DEFOG_LCD: u32 = 9074; +pub const NET_DVR_SHOW_IP: u32 = 9075; +pub const NET_DVR_SCREEN_MAINTENANCE_WALL: u32 = 9076; +pub const NET_DVR_SET_SCREEN_POS: u32 = 9077; +pub const NET_DVR_GET_SCREEN_POS: u32 = 9078; +pub const NET_DVR_SCREEN_INDEX_SET: u32 = 9079; +pub const NET_DVR_SCREEN_INDEX_GET: u32 = 9080; +pub const NET_DVR_SCREEN_SPLICE_SET: u32 = 9081; +pub const NET_DVR_SCREEN_SPLICE_GET: u32 = 9082; +pub const NET_DVR_SET_SCREEN_PARAM: u32 = 9083; +pub const NET_DVR_GET_SCREEN_PARAM: u32 = 9084; +pub const NET_DVR_SET_SWITCH_CFG: u32 = 9085; +pub const NET_DVR_GET_SWITCH_CFG: u32 = 9086; +pub const NET_DVR_SET_POWERON_DELAY_CFG: u32 = 9087; +pub const NET_DVR_GET_POWERON_DELAY_CFG: u32 = 9088; +pub const NET_DVR_SET_SCREEN_POSITION: u32 = 9089; +pub const NET_DVR_GET_SCREEN_POSITION: u32 = 9090; +pub const NET_DVR_SCREEN_SCENE_CONTROL: u32 = 9091; +pub const NET_DVR_GET_CURRENT_SCREEN_SCENE: u32 = 9092; +pub const NET_DVR_GET_SCREEN_SCENE_PARAM: u32 = 9093; +pub const NET_DVR_SET_SCREEN_SCENE_PARAM: u32 = 9094; +pub const NET_DVR_GET_EXTERNAL_MATRIX_RELATION: u32 = 9095; +pub const NET_DVR_GET_LCD_AUDIO_CFG: u32 = 9096; +pub const NET_DVR_SET_LCD_AUDIO_CFG: u32 = 9097; +pub const NET_DVR_GET_LCD_WORK_STATE: u32 = 9098; +pub const NET_DVR_GET_BOOT_LOGO_CFG: u32 = 9099; +pub const NET_DVR_SET_BOOT_LOGO_CFG: u32 = 9100; +pub const NET_DVR_GET_STREAM_DST_COMPRESSIONINFO: u32 = 9101; +pub const NET_DVR_SET_STREAM_DST_COMPRESSIONINFO: u32 = 9102; +pub const NET_DVR_GET_STREAM_TRANS_STATUS: u32 = 9103; +pub const NET_DVR_GET_DEVICE_TRANS_STATUS: u32 = 9104; +pub const NET_DVR_GET_ALLSTREAM_SRC_INFO: u32 = 9105; +pub const NET_DVR_GET_BIG_SCREEN_AUDIO: u32 = 9106; +pub const NET_DVR_SET_BIG_SCREEN_AUDIO: u32 = 9107; +pub const NET_DVR_GET_DEV_WORK_MODE: u32 = 9108; +pub const NET_DVR_SET_DEV_WORK_MODE: u32 = 9109; +pub const NET_DVR_APPLY_TRANS_CHAN: u32 = 9110; +pub const NET_DVR_GET_DISPCHAN_CFG: u32 = 9111; +pub const NET_DVR_SET_DISPCHAN_CFG: u32 = 9112; +pub const NET_DVR_GET_DEC_CHAN_STATUS: u32 = 9113; +pub const NET_DVR_GET_DISP_CHAN_STATUS: u32 = 9114; +pub const NET_DVR_GET_ALARMIN_STATUS: u32 = 9115; +pub const NET_DVR_GET_ALARMOUT_STATUS: u32 = 9116; +pub const NET_DVR_GET_AUDIO_CHAN_STATUS: u32 = 9117; +pub const NET_DVR_GET_VIDEO_AUDIOIN_CFG: u32 = 9118; +pub const NET_DVR_SET_VIDEO_AUDIOIN_CFG: u32 = 9119; +pub const NET_DVR_SET_BASEMAP_CFG: u32 = 9120; +pub const NET_DVR_GET_BASEMAP_CFG: u32 = 9121; +pub const NET_DVR_GET_VIRTUAL_SCREEN_CFG: u32 = 9122; +pub const NET_DVR_SET_VIRTUAL_SCREEN_CFG: u32 = 9123; +pub const NET_DVR_GET_BASEMAP_WIN_CFG: u32 = 9124; +pub const NET_DVR_SET_BASEMAP_WIN_CFG: u32 = 9125; +pub const NET_DVR_DELETE_PICTURE: u32 = 9126; +pub const NET_DVR_GET_BASEMAP_PIC_INFO: u32 = 9127; +pub const NET_DVR_SET_BASEMAP_WIN_CFG_V40: u32 = 9128; +pub const NET_DVR_GET_BASEMAP_WIN_CFG_V40: u32 = 9129; +pub const NET_DVR_GET_DEC_VCA_CFG: u32 = 9130; +pub const NET_DVR_SET_DEC_VCA_CFG: u32 = 9131; +pub const NET_DVR_SET_VS_INPUT_CHAN_INIT_ALL: u32 = 9132; +pub const NET_DVR_GET_VS_INPUT_CHAN_INIT_ALL: u32 = 9133; +pub const NET_DVR_GET_VS_INPUT_CHAN_INIT: u32 = 9134; +pub const NET_DVR_GET_VS_INPUT_CHAN_CFG: u32 = 9135; +pub const NET_DVR_GET_TERMINAL_CONFERENCE_STATUS: u32 = 9136; +pub const NET_DVR_GET_TERMINAL_INPUT_CFG_CAP: u32 = 9137; +pub const NET_DVR_GET_TERMINAL_INPUT_CFG: u32 = 9138; +pub const NET_DVR_SET_TERMINAL_INPUT_CFG: u32 = 9139; +pub const NET_DVR_GET_CONFERENCE_REGION_CAP: u32 = 9140; +pub const NET_DVR_GET_CONFERENCE_REGION: u32 = 9141; +pub const NET_DVR_SET_CONFERENCE_REGION: u32 = 9142; +pub const NET_DVR_GET_TERMINAL_CALL_CFG_CAP: u32 = 9143; +pub const NET_DVR_GET_TERMINAL_CALL_CFG: u32 = 9144; +pub const NET_DVR_SET_TERMINAL_CALL_CFG: u32 = 9145; +pub const NET_DVR_GET_TERMINAL_CTRL_CAP: u32 = 9146; +pub const NET_DVR_TERMINAL_CTRL: u32 = 9147; +pub const NET_DVR_GET_CALL_QUERY_CAP: u32 = 9148; +pub const NET_DVR_GET_CALLINFO_BY_COND: u32 = 9149; +pub const NET_DVR_SET_FUSION_SCALE: u32 = 9150; +pub const NET_DVR_GET_FUSION_SCALE: u32 = 9151; +pub const NET_DVR_GET_VCS_CAP: u32 = 9152; +pub const NET_DVR_GET_TERMINAL_GK_CFG_CAP: u32 = 9153; +pub const NET_DVR_GET_TERMINAL_GK_CFG: u32 = 9154; +pub const NET_DVR_SET_TERMINAL_GK_CFG: u32 = 9155; +pub const NET_DVR_GET_MCU_CONFERENCESEARCH_CAP: u32 = 9156; +pub const NET_DVR_SET_VS_INPUT_CHAN_CFG: u32 = 9157; +pub const NET_DVR_GET_VS_NETSRC_CFG: u32 = 9158; +pub const NET_DVR_SET_VS_NETSRC_CFG: u32 = 9159; +pub const NET_DVR_GET_LLDP_CFG: u32 = 9160; +pub const NET_DVR_SET_LLDP_CFG: u32 = 9161; +pub const NET_DVR_GET_LLDP_CAP: u32 = 9162; +pub const NET_DVR_GET_FIBER_CONVERT_BASIC_INFO: u32 = 9163; +pub const NET_DVR_GET_FIBER_CONVERT_WORK_STATE: u32 = 9164; +pub const NET_DVR_GET_FIBER_CONVERT_TOPOLOGY: u32 = 9165; +pub const NET_DVR_GET_FC_PORT_REMARKS: u32 = 9166; +pub const NET_DVR_SET_FC_PORT_REMARKS: u32 = 9167; +pub const NET_DVR_GET_PORT_REMARKS_CAP: u32 = 9168; +pub const NET_DVR_GET_MCU_CONFERENCECONTROL_CAP: u32 = 9169; +pub const NET_DVR_GET_MCU_TERMINALCONTROL_CAP: u32 = 9170; +pub const NET_DVR_GET_MCU_TERIMINALGROUP_CAP: u32 = 9171; +pub const NET_DVR_GET_MCU_TERMINAL_CAP: u32 = 9174; +pub const NET_DVR_GET_MCU_CONFERENCE_CAP: u32 = 9175; +pub const NET_DVR_GET_MCU_GK_CFG_CAP: u32 = 9176; +pub const NET_DVR_GET_MCU_GK_SERVER_CAP: u32 = 9177; +pub const NET_DVR_GET_EDID_CFG_FILE_INFO: u32 = 9178; +pub const NET_DVR_GET_EDID_CFG_FILE_INFO_LIST: u32 = 9179; +pub const NET_DVR_SET_EDID_CFG_FILE_INFO: u32 = 9180; +pub const NET_DVR_DEL_EDID_CFG_FILE_INFO: u32 = 9181; +pub const NET_DVR_GET_EDID_CFG_FILE_INFO_CAP: u32 = 9182; +pub const NET_DVR_GET_SUBWND_DECODE_OSD: u32 = 9183; +pub const NET_DVR_GET_SUBWND_DECODE_OSD_ALL: u32 = 9184; +pub const NET_DVR_SET_SUBWND_DECODE_OSD: u32 = 9185; +pub const NET_DVR_GET_SUBWND_DECODE_OSD_CAP: u32 = 9186; +pub const NET_DVR_GET_DECODE_CHANNEL_OSD: u32 = 9187; +pub const NET_DVR_SET_DECODE_CHANNEL_OSD: u32 = 9188; +pub const NET_DVR_GET_OUTPUT_PIC_INFO: u32 = 9200; +pub const NET_DVR_SET_OUTPUT_PIC_INFO: u32 = 9201; +pub const NET_DVR_GET_OUTPUT_PIC_WIN_CFG: u32 = 9202; +pub const NET_DVR_SET_OUTPUT_PIC_WIN_CFG: u32 = 9203; +pub const NET_DVR_GET_OUTPUT_ALL_PIC_WIN_CFG: u32 = 9204; +pub const NET_DVR_DELETE_OUPUT_PIC: u32 = 9205; +pub const NET_DVR_GET_OUTPUT_OSD_CFG: u32 = 9206; +pub const NET_DVR_SET_OUTPUT_OSD_CFG: u32 = 9207; +pub const NET_DVR_GET_OUTPUT_ALL_OSD_CFG: u32 = 9208; +pub const NET_DVR_GET_CHAN_RELATION: u32 = 9209; +pub const NET_DVR_SET_CHAN_RELATION: u32 = 9210; +pub const NET_DVR_GET_ALL_CHAN_RELATION: u32 = 9211; +pub const NET_DVR_GET_NS_RING_CFG: u32 = 9212; +pub const NET_DVR_SET_NS_RING_CFG: u32 = 9213; +pub const NET_DVR_GET_NS_RING_STATUS: u32 = 9214; +pub const NET_DVR_GET_OPTICAL_PORT_INFO: u32 = 9220; +pub const NET_DVR_SET_OPTICAL_PORT_INFO: u32 = 9221; +pub const NET_DVR_GET_OPTICAL_CHAN_RELATE_CFG: u32 = 9222; +pub const NET_DVR_SET_OPTICAL_CHAN_RELATE_CFG: u32 = 9223; +pub const NET_DVR_GET_WIN_ROAM_SWITCH_CFG: u32 = 9224; +pub const NET_DVR_SET_WIN_ROAM_SWITCH_CFG: u32 = 9225; +pub const NET_DVR_START_SCREEN_CRTL: u32 = 9226; +pub const NET_DVR_GET_SCREEN_FLIE_LIST: u32 = 9227; +pub const NET_DVR_GET_SCREEN_FILEINFO: u32 = 9228; +pub const NET_DVR_SET_SCREEN_FILEINFO: u32 = 9229; +pub const NET_DVR_GET_LED_OUTPUT_CFG: u32 = 9230; +pub const NET_DVR_SET_LED_OUTPUT_CFG: u32 = 9231; +pub const NET_DVR_GET_LED_OUTPUT_PORT_CFG: u32 = 9232; +pub const NET_DVR_SET_LED_OUTPUT_PORT_CFG: u32 = 9233; +pub const NET_DVR_GET_LED_DISPLAY_AREA_CFG: u32 = 9234; +pub const NET_DVR_SET_LED_DISPLAY_AREA_CFG: u32 = 9235; +pub const NET_DVR_GET_LED_PORT_CFG: u32 = 9236; +pub const NET_DVR_SET_LED_PORT_CFG: u32 = 9237; +pub const NET_DVR_GET_LED_DISPLAY_CFG: u32 = 9238; +pub const NET_DVR_SET_LED_DISPLAY_CFG: u32 = 9239; +pub const NET_DVR_GET_ALL_LED_PORT_CFG: u32 = 9240; +pub const NET_DVR_SAVE_LED_CONFIGURATION: u32 = 9241; +pub const NET_DVR_GET_LED_TEST_SIGNAL_CFG: u32 = 9242; +pub const NET_DVR_SET_LED_TEST_SIGNAL_CFG: u32 = 9243; +pub const NET_DVR_GET_LED_NOSIGNAL_CFG: u32 = 9244; +pub const NET_DVR_SET_LED_NOSIGNAL_CFG: u32 = 9245; +pub const NET_DVR_GET_LED_INPUT_CFG: u32 = 9246; +pub const NET_DVR_SET_LED_INPUT_CFG: u32 = 9247; +pub const NET_DVR_GET_LED_RECV_GAMMA_CFG: u32 = 9248; +pub const NET_DVR_SET_LED_RECV_GAMMA_CFG: u32 = 9249; +pub const NET_DVR_GET_LED_RECV_CFG: u32 = 9250; +pub const NET_DVR_SET_LED_RECV_CFG: u32 = 9251; +pub const NET_DVR_GET_LED_RECV_ADVANCED_CFG: u32 = 9252; +pub const NET_DVR_SET_LED_RECV_ADVANCED_CFG: u32 = 9253; +pub const NET_DVR_GET_LED_SCREEN_DISPLAY_CFG: u32 = 9254; +pub const NET_DVR_SET_LED_SCREEN_DISPLAY_CFG: u32 = 9255; +pub const NET_DVR_GET_INSERTPLAY_PROGRESS: u32 = 9273; +pub const NET_DVR_GET_SCREEN_CONFIG: u32 = 9260; +pub const NET_DVR_SET_SCREEN_CONFIG: u32 = 9261; +pub const NET_DVR_GET_SCREEN_CONFIG_CAP: u32 = 9262; +pub const NET_DVR_GET_SCHEDULE_PUBLISH_PROGRESS: u32 = 9271; +pub const NET_DVR_GET_PUBLISH_UPGRADE_PROGRESS: u32 = 9272; +pub const NET_DVR_GET_INPUT_BOARD_CFG: u32 = 9281; +pub const NET_DVR_GET_INPUT_BOARD_CFG_LIST: u32 = 9282; +pub const NET_DVR_SET_INPUT_BOARD_CFG: u32 = 9283; +pub const NET_DVR_GET_INPUT_SOURCE_TEXT_CAP: u32 = 9284; +pub const NET_DVR_GET_INPUT_SOURCE_TEXT_CFG: u32 = 9285; +pub const NET_DVR_GET_INPUT_SOURCE_TEXT_CFG_LSIT: u32 = 9286; +pub const NET_DVR_SET_INPUT_SOURCE_TEXT_CFG: u32 = 9287; +pub const NET_DVR_SET_INPUT_SOURCE_TEXT_CFG_LIST: u32 = 9288; +pub const NET_DVR_GET_INPUT_SOURCE_RESOLUTION_CAP: u32 = 9289; +pub const NET_DVR_GET_INPUT_SOURCE_RESOLUTION_CFG: u32 = 9290; +pub const NET_DVR_GET_INPUT_SOURCE_RESOLUTION_CFG_LIST: u32 = 9291; +pub const NET_DVR_SET_INPUT_SOURCE_RESOLUTION_CFG: u32 = 9292; +pub const NET_DVR_SET_INPUT_SOURCE_RESOLUTION_CFG_LIST: u32 = 9293; +pub const NET_DVR_GET_LED_AREA_INFO_LIST: u32 = 9295; +pub const NET_DVR_GET_DISPINPUT_CFG: u32 = 9296; +pub const NET_DVR_GET_DISPINPUT_CFG_LIST: u32 = 9297; +pub const NET_DVR_SET_DISPINPUT_CFG: u32 = 9298; +pub const NET_DVR_GET_DISPINPUT_CFG_CAP: u32 = 9299; +pub const NET_DVR_GET_CURRENT_VALID_PORT: u32 = 9300; +pub const NET_DVR_SET_ONLINE_UPGRADE: u32 = 9301; +pub const NET_DVR_GET_ONLINEUPGRADE_PROGRESS: u32 = 9302; +pub const NET_DVR_GET_FIRMWARECODE: u32 = 9303; +pub const NET_DVR_GET_ONLINEUPGRADE_SERVER: u32 = 9304; +pub const NET_DVR_GET_ONLINEUPGRADE_VERSION: u32 = 9305; +pub const NET_DVR_GET_RECOMMEN_VERSION: u32 = 9306; +pub const NET_DVR_GET_ONLINEUPGRADE_ABILITY: u32 = 9309; +pub const NET_DVR_GET_FIBER_CONVERT_BASIC_INFO_V50: u32 = 9310; +pub const NET_DVR_GET_FIBER_CONVERT_WORK_STATE_V50: u32 = 9311; +pub const NET_SDK_LED_SCREEN_CHECK: u32 = 9312; +pub const NET_SDK_GENERATE_OUTPUT_CONTROL: u32 = 9315; +pub const NET_SDK_GET_MATRIX_STATUS_V51: u32 = 9313; +pub const NET_DVR_GET_ALARM_LINKAGE_CFG: u32 = 9316; +pub const NET_DVR_SET_ALARM_LINKAGE_CFG: u32 = 9317; +pub const NET_DVR_GET_RS485_WORK_MODE: u32 = 10001; +pub const NET_DVR_SET_RS485_WORK_MODE: u32 = 10002; +pub const NET_DVR_GET_SPLITTER_TRANS_CHAN_CFG: u32 = 10003; +pub const NET_DVR_SET_SPLITTER_TRANS_CHAN_CFG: u32 = 10004; +pub const NET_DVR_GET_RS485_PROTOCOL_VERSION: u32 = 10301; +pub const NET_DVR_ALARMHOST_REGISTER_DETECTOR: u32 = 10302; +pub const NET_DVR_GET_SIP_CFG: u32 = 11001; +pub const NET_DVR_SET_SIP_CFG: u32 = 11002; +pub const NET_DVR_GET_IP_VIEW_DEVCFG: u32 = 11003; +pub const NET_DVR_SET_IP_VIEW_DEVCFG: u32 = 11004; +pub const NET_DVR_GET_IP_VIEW_AUDIO_CFG: u32 = 11005; +pub const NET_DVR_SET_IP_VIEW_AUDIO_CFG: u32 = 11006; +pub const NET_DVR_GET_IP_VIEW_CALL_CFG: u32 = 11007; +pub const NET_DVR_SET_IP_VIEW_CALL_CFG: u32 = 11008; +pub const NET_DVR_GET_AUDIO_LIMIT_ALARM_CFG: u32 = 11009; +pub const NET_DVR_SET_AUDIO_LIMIT_ALARM_CFG: u32 = 11010; +pub const NET_DVR_GET_BUTTON_DOWN_ALARM_CFG: u32 = 11011; +pub const NET_DVR_SET_BUTTON_DOWN_ALARM_CFG: u32 = 11012; +pub const NET_DVR_GET_ISCSI_CFG: u32 = 11070; +pub const NET_DVR_SET_ISCSI_CFG: u32 = 11071; +pub const NET_DVR_GET_SECURITYMODE: u32 = 12004; +pub const NET_DVR_GET_TEMP_HUMI: u32 = 12005; +pub const NET_DVR_SET_ALARMSOUNDMODE: u32 = 12006; +pub const NET_DVR_GET_ALARMSOUNDMODE: u32 = 12007; +pub const NET_DVR_SET_IPDEVICE_ACTIVATED: u32 = 13000; +pub const NET_DVR_GET_DIGITAL_CHAN_SECURITY_STATUS: u32 = 13001; +pub const NET_DVR_GET_ACTIVATE_IPC_ABILITY: u32 = 13003; +pub const NET_DVR_GET_VIDEO_INTERCOM_DEVICEID_CFG: u32 = 16001; +pub const NET_DVR_SET_VIDEO_INTERCOM_DEVICEID_CFG: u32 = 16002; +pub const NET_DVR_SET_PRIVILEGE_PASSWORD: u32 = 16003; +pub const NET_DVR_GET_OPERATION_TIME_CFG: u32 = 16004; +pub const NET_DVR_SET_OPERATION_TIME_CFG: u32 = 16005; +pub const NET_DVR_GET_VIDEO_INTERCOM_RELATEDEV_CFG: u32 = 16006; +pub const NET_DVR_SET_VIDEO_INTERCOM_RELATEDEV_CFG: u32 = 16007; +pub const NET_DVR_REMOTECONTROL_NOTICE_DATA: u32 = 16008; +pub const NET_DVR_REMOTECONTROL_GATEWAY: u32 = 16009; +pub const NET_DVR_REMOTECONTROL_OPERATION_AUTH: u32 = 16010; +pub const NET_DVR_GET_VIDEO_INTERCOM_IOIN_CFG: u32 = 16016; +pub const NET_DVR_SET_VIDEO_INTERCOM_IOIN_CFG: u32 = 16017; +pub const NET_DVR_GET_VIDEO_INTERCOM_IOOUT_CFG: u32 = 16018; +pub const NET_DVR_SET_VIDEO_INTERCOM_IOOUT_CFG: u32 = 16019; +pub const NET_DVR_GET_ELEVATORCONTROL_CFG: u32 = 16020; +pub const NET_DVR_SET_ELEVATORCONTROL_CFG: u32 = 16021; +pub const NET_DVR_GET_VIDEOINTERCOM_STREAM: u32 = 16022; +pub const NET_DVR_SET_VIDEOINTERCOM_STREAM: u32 = 16023; +pub const NET_DVR_GET_WDR_CFG: u32 = 16024; +pub const NET_DVR_SET_WDR_CFG: u32 = 16025; +pub const NET_DVR_GET_VIS_DEVINFO: u32 = 16026; +pub const NET_DVR_GET_VIS_REGISTER_INFO: u32 = 16027; +pub const NET_DVR_GET_ELEVATORCONTROL_CFG_V40: u32 = 16028; +pub const NET_DVR_SET_ELEVATORCONTROL_CFG_V40: u32 = 16029; +pub const NET_DVR_GET_CALL_ROOM_CFG: u32 = 16030; +pub const NET_DVR_SET_CALL_ROOM_CFG: u32 = 16031; +pub const NET_DVR_VIDEO_CALL_SIGNAL_PROCESS: u32 = 16032; +pub const NET_DVR_GET_CALLER_INFO: u32 = 16033; +pub const NET_DVR_GET_CALL_STATUS: u32 = 16034; +pub const NET_DVR_GET_SERVER_DEVICE_INFO: u32 = 16035; +pub const NET_DVR_SET_CALL_SIGNAL: u32 = 16036; +pub const NET_DVR_GET_VIDEO_INTERCOM_ALARM_CFG: u32 = 16037; +pub const NET_DVR_SET_VIDEO_INTERCOM_ALARM_CFG: u32 = 16038; +pub const NET_DVR_GET_RING_LIST: u32 = 16039; +pub const NET_DVR_GET_ROOM_CUSTOM_CFG: u32 = 16040; +pub const NET_DVR_SET_ROOM_CUSTOM_CFG: u32 = 16041; +pub const NET_DVR_GET_ELEVATORCONTROL_CFG_V50: u32 = 16042; +pub const NET_DVR_SET_ELEVATORCONTROL_CFG_V50: u32 = 16043; +pub const NET_DVR_GET_SIP_CFG_V50: u32 = 16044; +pub const NET_DVR_SET_SIP_CFG_V50: u32 = 16045; +pub const NET_DVR_GET_NOTICE_VIDEO_DATA: u32 = 16050; +pub const NET_DVR_DEBUGINFO_START: u32 = 18000; +pub const NET_DVR_AUTO_TEST_START: u32 = 18001; +pub const NET_DVR_GET_SELFCHECK_RESULT: u32 = 20000; +pub const NET_DVR_SET_TEST_COMMAND: u32 = 20001; +pub const NET_DVR_SET_TEST_DEVMODULE: u32 = 20002; +pub const NET_DVR_GET_TEST_DEVMODULE: u32 = 20003; +pub const NET_DVR_SET_AUTOFOCUS_TEST: u32 = 20004; +pub const NET_DVR_CHECK_USER_STATUS: u32 = 20005; +pub const NET_DVR_GET_TEST_COMMAND: u32 = 20010; +pub const NET_DVR_GET_DIAL_SWITCH_CFG: u32 = 20200; +pub const NET_DVR_SET_AGING_TRICK_SCAN: u32 = 20201; +pub const NET_DVR_GET_ECCENTRIC_CORRECT_STATE: u32 = 20202; +pub const NET_DVR_GET_THERMOMETRYRULE_TEMPERATURE_INFO: u32 = 23001; +pub const NET_DVR_T1_TEST_CMD: u32 = 131073; +pub const NET_DVR_GET_MEMU_OUTPUT_MODE: u32 = 155649; +pub const NET_DVR_SET_MEMU_OUTPUT_MODE: u32 = 155650; +pub const NET_DVR_GET_DEV_LOGIN_RET_INFO: u32 = 16777200; +pub const NET_DVR_GET_TEST_VERSION_HEAD: u32 = 268435441; +pub const NET_DVR_SET_TEST_VERSION_HEAD: u32 = 268435442; +pub const NET_DVR_GET_TEST_VERSION_HEAD_V1: u32 = 268435443; +pub const NET_DVR_SET_TEST_VERSION_HEAD_V1: u32 = 268435444; +pub const NET_DVR_GET_TEST_VERSION_HEAD_V2: u32 = 268435445; +pub const NET_DVR_SET_TEST_VERSION_HEAD_V2: u32 = 268435446; +pub const NET_DVR_GET_TEST_VERSION_HEAD_ONLY_0: u32 = 268435447; +pub const NET_DVR_SET_TEST_VERSION_HEAD_ONLY_0: u32 = 268435448; +pub const MAX_LOCAL_ADDR_LEN: u32 = 96; +pub const MAX_COUNTRY_NAME_LEN: u32 = 4; +pub const MAJOR_ALARM: u32 = 1; +pub const MINOR_ALARM_IN: u32 = 1; +pub const MINOR_ALARM_OUT: u32 = 2; +pub const MINOR_MOTDET_START: u32 = 3; +pub const MINOR_MOTDET_STOP: u32 = 4; +pub const MINOR_HIDE_ALARM_START: u32 = 5; +pub const MINOR_HIDE_ALARM_STOP: u32 = 6; +pub const MINOR_VCA_ALARM_START: u32 = 7; +pub const MINOR_VCA_ALARM_STOP: u32 = 8; +pub const MINOR_ITS_ALARM_START: u32 = 9; +pub const MINOR_ITS_ALARM_STOP: u32 = 10; +pub const MINOR_NETALARM_START: u32 = 11; +pub const MINOR_NETALARM_STOP: u32 = 12; +pub const MINOR_NETALARM_RESUME: u32 = 13; +pub const MINOR_WIRELESS_ALARM_START: u32 = 14; +pub const MINOR_WIRELESS_ALARM_STOP: u32 = 15; +pub const MINOR_PIR_ALARM_START: u32 = 16; +pub const MINOR_PIR_ALARM_STOP: u32 = 17; +pub const MINOR_CALLHELP_ALARM_START: u32 = 18; +pub const MINOR_CALLHELP_ALARM_STOP: u32 = 19; +pub const MINOR_IPCHANNEL_ALARMIN_START: u32 = 20; +pub const MINOR_IPCHANNEL_ALARMIN_STOP: u32 = 21; +pub const MINOR_DETECTFACE_ALARM_START: u32 = 22; +pub const MINOR_DETECTFACE_ALARM_STOP: u32 = 23; +pub const MINOR_VQD_ALARM_START: u32 = 24; +pub const MINOR_VQD_ALARM_STOP: u32 = 25; +pub const MINOR_VCA_SECNECHANGE_DETECTION: u32 = 26; +pub const MINOR_SMART_REGION_EXITING_BEGIN: u32 = 27; +pub const MINOR_SMART_REGION_EXITING_END: u32 = 28; +pub const MINOR_SMART_LOITERING_BEGIN: u32 = 29; +pub const MINOR_SMART_LOITERING_END: u32 = 30; +pub const MINOR_VCA_ALARM_LINE_DETECTION_BEGIN: u32 = 32; +pub const MINOR_VCA_ALARM_LINE_DETECTION_END: u32 = 33; +pub const MINOR_VCA_ALARM_INTRUDE_BEGIN: u32 = 34; +pub const MINOR_VCA_ALARM_INTRUDE_END: u32 = 35; +pub const MINOR_VCA_ALARM_AUDIOINPUT: u32 = 36; +pub const MINOR_VCA_ALARM_AUDIOABNORMAL: u32 = 37; +pub const MINOR_VCA_DEFOCUS_DETECTION_BEGIN: u32 = 38; +pub const MINOR_VCA_DEFOCUS_DETECTION_END: u32 = 39; +pub const MINOR_EXT_ALARM: u32 = 40; +pub const MINOR_VCA_FACE_ALARM_BEGIN: u32 = 41; +pub const MINOR_SMART_REGION_ENTRANCE_BEGIN: u32 = 42; +pub const MINOR_SMART_REGION_ENTRANCE_END: u32 = 43; +pub const MINOR_SMART_PEOPLE_GATHERING_BEGIN: u32 = 44; +pub const MINOR_SMART_PEOPLE_GATHERING_END: u32 = 45; +pub const MINOR_SMART_FAST_MOVING_BEGIN: u32 = 46; +pub const MINOR_SMART_FAST_MOVING_END: u32 = 47; +pub const MINOR_VCA_FACE_ALARM_END: u32 = 48; +pub const MINOR_VCA_SCENE_CHANGE_ALARM_BEGIN: u32 = 49; +pub const MINOR_VCA_SCENE_CHANGE_ALARM_END: u32 = 50; +pub const MINOR_VCA_ALARM_AUDIOINPUT_BEGIN: u32 = 51; +pub const MINOR_VCA_ALARM_AUDIOINPUT_END: u32 = 52; +pub const MINOR_VCA_ALARM_AUDIOABNORMAL_BEGIN: u32 = 53; +pub const MINOR_VCA_ALARM_AUDIOABNORMAL_END: u32 = 54; +pub const MINOR_VCA_LECTURE_DETECTION_BEGIN: u32 = 55; +pub const MINOR_VCA_LECTURE_DETECTION_END: u32 = 56; +pub const MINOR_VCA_ALARM_AUDIOSTEEPDROP: u32 = 57; +pub const MINOR_VCA_ANSWER_DETECTION_BEGIN: u32 = 58; +pub const MINOR_VCA_ANSWER_DETECTION_END: u32 = 59; +pub const MINOR_SMART_PARKING_BEGIN: u32 = 60; +pub const MINOR_SMART_PARKING_END: u32 = 61; +pub const MINOR_SMART_UNATTENDED_BAGGAGE_BEGIN: u32 = 62; +pub const MINOR_SMART_UNATTENDED_BAGGAGE_END: u32 = 63; +pub const MINOR_SMART_OBJECT_REMOVAL_BEGIN: u32 = 64; +pub const MINOR_SMART_OBJECT_REMOVAL_END: u32 = 65; +pub const MINOR_SMART_VEHICLE_ALARM_START: u32 = 70; +pub const MINOR_SMART_VEHICLE_ALARM_STOP: u32 = 71; +pub const MINOR_THERMAL_FIREDETECTION: u32 = 72; +pub const MINOR_THERMAL_FIREDETECTION_END: u32 = 73; +pub const MINOR_SMART_VANDALPROOF_BEGIN: u32 = 80; +pub const MINOR_SMART_VANDALPROOF_END: u32 = 81; +pub const MINOR_FACESNAP_MATCH_ALARM_START: u32 = 85; +pub const MINOR_FACESNAP_MATCH_ALARM_STOP: u32 = 86; +pub const MINOR_ALLOWLIST_FACESNAP_MATCH_ALARM_START: u32 = 87; +pub const MINOR_ALLOWLIST_FACESNAP_MATCH_ALARM_STOP: u32 = 88; +pub const MINOR_THERMAL_SHIPSDETECTION: u32 = 90; +pub const MINOR_THERMAL_THERMOMETRY_EARLYWARNING_BEGIN: u32 = 91; +pub const MINOR_THERMAL_THERMOMETRY_EARLYWARNING_END: u32 = 92; +pub const MINOR_THERMAL_THERMOMETRY_ALARM_BEGIN: u32 = 93; +pub const MINOR_THERMAL_THERMOMETRY_ALARM_END: u32 = 94; +pub const MINOR_THERMAL_THERMOMETRY_DIFF_ALARM_BEGIN: u32 = 95; +pub const MINOR_THERMAL_THERMOMETRY_DIFF_ALARM_END: u32 = 96; +pub const MINOR_FACE_THERMOMETRY_ALARM: u32 = 99; +pub const MINOR_SMART_DENSEFOGDETECTION_BEGIN: u32 = 110; +pub const MINOR_SMART_DENSEFOGDETECTION_END: u32 = 111; +pub const MINOR_RUNNING_ALARM: u32 = 112; +pub const MINOR_RETENTION_ALARM: u32 = 113; +pub const MINOR_SAFETY_HELMET_ALARM_START: u32 = 114; +pub const MINOR_SAFETY_HELMET_ALARM_STOP: u32 = 115; +pub const MINOR_HFPD_ALARM_START: u32 = 116; +pub const MINOR_HFPD_ALARM_STOP: u32 = 117; +pub const MINOR_MIXED_TARGET_ALARM_START: u32 = 118; +pub const MINOR_MIXED_TARGET_ALARM_STOP: u32 = 119; +pub const MINOR_VCA_PLAY_CELLPHONE_ALARM_BEGIN: u32 = 120; +pub const MINOR_VCA_PLAY_CELLPHONE_ALARM_END: u32 = 121; +pub const MINOR_VCA_GET_UP_ALARM_BEGIN: u32 = 128; +pub const MINOR_VCA_GET_UP_ALARM_END: u32 = 129; +pub const MINOR_VCA_ADV_REACH_HEIGHT_ALARM_BEGIN: u32 = 130; +pub const MINOR_VCA_ADV_REACH_HEIGHT_ALARM_END: u32 = 131; +pub const MINOR_VCA_TOILET_TARRY_ALARM_BEGIN: u32 = 132; +pub const MINOR_VCA_TOILET_TARRY_ALARM_END: u32 = 133; +pub const MINOR_HUMAN_RECOGNITION_ALARM_BEGIN: u32 = 134; +pub const MINOR_HUMAN_RECOGNITION_ALARM_END: u32 = 135; +pub const MINOR_STUDENTS_STOODUP_ALARM_BEGIN: u32 = 136; +pub const MINOR_STUDENTS_STOODUP_ALARM_END: u32 = 137; +pub const MINOR_FRAMES_PEOPLE_COUNTING_ALARM: u32 = 138; +pub const MINOR_FACE_SNAP_ALARM_BEGIN: u32 = 139; +pub const MINOR_FACE_SNAP_ALARM_END: u32 = 140; +pub const MINOR_TEACHER_BEHAVIOR_DETECT_ALARM_BEGIN: u32 = 141; +pub const MINOR_TEACHER_BEHAVIOR_DETECT_ALARM_END: u32 = 142; +pub const MINOR_PERIMETER_CAPTURE_ALARM_BEGIN: u32 = 143; +pub const MINOR_PERIMETER_CAPTURE_ALARM_END: u32 = 144; +pub const MINOR_UNREGISTERED_STREET_VENDOR_ALARM: u32 = 145; +pub const MINOR_PERSON_QUEUE_TIME_ALARM_BEGIN: u32 = 146; +pub const MINOR_PERSON_QUEUE_TIME_ALARM_END: u32 = 147; +pub const MINOR_PERSON_QUEUE_COUNTING_ALARM_BEGIN: u32 = 148; +pub const MINOR_PERSON_QUEUE_COUNTING_ALARM_END: u32 = 149; +pub const MINOR_FACE_SNAP_MATCH_FAILURE_ALARM_START: u32 = 150; +pub const MINOR_FACE_SNAP_MATCH_FAILURE_ALARM_END: u32 = 151; +pub const MINOR_ACCESS_CONTROLLER_EVENT: u32 = 256; +pub const MINOR_VIDEO_INTERCOM_EVENT: u32 = 257; +pub const MINOR_GJD_EVENT: u32 = 258; +pub const MINOR_LUMINITE_EVENT: u32 = 259; +pub const MINOR_OPTEX_EVENT: u32 = 260; +pub const MINOR_CAMERA_DETECTOR_EVENT: u32 = 261; +pub const MINOR_SECURITY_CONTROL_PANEL_EVENT: u32 = 262; +pub const MINOR_VCA_SPACE_CHANGE_START: u32 = 268; +pub const MINOR_VCA_SPACE_CHANGE_STOP: u32 = 269; +pub const MINOR_MANUAL_ALARM: u32 = 270; +pub const MINOR_DETECTOR_ALARM: u32 = 271; +pub const MINOR_LINKAGE_ALARM: u32 = 272; +pub const MINOR_VCA_SITUATION_ANALYSIS_START: u32 = 273; +pub const MINOR_VCA_SITUATION_ANALYSIS_STOP: u32 = 274; +pub const MINOR_FIRE_ALARM: u32 = 275; +pub const MINOR_SUPERVISE_ALARM: u32 = 276; +pub const MINOR_SHIELD_ALARM: u32 = 277; +pub const MINOR_ABNORMAL_ALARM: u32 = 278; +pub const MINOR_RESIDUAL_CURRENT_ALARM: u32 = 279; +pub const MINOR_TEMPERATURE_ALARM: u32 = 280; +pub const MINOR_ARC_ALARM: u32 = 281; +pub const MINOR_VCA_YARD_TARRY_ALARM_BEGIN: u32 = 282; +pub const MINOR_VCA_YARD_TARRY_ALARM_END: u32 = 283; +pub const MINOR_VCA_KEY_PERSON_GET_UP_ALARM_BEGIN: u32 = 284; +pub const MINOR_VCA_KEY_PERSON_GET_UP_ALARM_END: u32 = 285; +pub const MINOR_VCA_SIT_QUIETLY_ALARM_BEGIN: u32 = 286; +pub const MINOR_VCA_SIT_QUIETLY_ALARM_END: u32 = 287; +pub const MINOR_VCA_STAND_UP_ALARM_BEGIN: u32 = 288; +pub const MINOR_VCA_STAND_UP_ALARM_END: u32 = 289; +pub const MINOR_VCA_REACH_HIGHT_ALARM_BEGIN: u32 = 290; +pub const MINOR_VCA_REACH_HIGHT_ALARM_END: u32 = 291; +pub const MINOR_LFPD_ALARM_START: u32 = 292; +pub const MINOR_LFPD_ALARM_STOP: u32 = 293; +pub const MINOR_DREDGERDETECTION_ALARM: u32 = 294; +pub const MINOR_STUDENT_BEHAVIOR_ALARM_BEGIN: u32 = 295; +pub const MINOR_STUDENT_BEHAVIOR_ALARM_END: u32 = 296; +pub const MINOR_VCA_ALARM_VEHICLEMONITOR: u32 = 297; +pub const MINOR_WASTEGASDETECTION_ALARM: u32 = 304; +pub const MINOR_GREYSCALE_ALARM: u32 = 305; +pub const MINOR_VIBRATION_DETECTION_ALARM_BEGIN: u32 = 306; +pub const MINOR_VIBRATION_DETECTION_ALARM_END: u32 = 307; +pub const MINOR_SMOKE_DETECT_ALARM_BEGIN: u32 = 308; +pub const MINOR_SMOKE_DETECT_ALARM_END: u32 = 309; +pub const MINOR_METHANE_CONCENTRATION_ALARM: u32 = 310; +pub const MINOR_METHANE_LIGHTINTENSITY_ALARM: u32 = 311; +pub const MINOR_SMOG_BEGIN: u32 = 312; +pub const MINOR_SMOG_END: u32 = 313; +pub const MINOR_VOCS_ALARM: u32 = 320; +pub const MINOR_ALARMIN_SHORT_CIRCUIT: u32 = 1024; +pub const MINOR_ALARMIN_BROKEN_CIRCUIT: u32 = 1025; +pub const MINOR_ALARMIN_EXCEPTION: u32 = 1026; +pub const MINOR_ALARMIN_RESUME: u32 = 1027; +pub const MINOR_HOST_DESMANTLE_ALARM: u32 = 1028; +pub const MINOR_HOST_DESMANTLE_RESUME: u32 = 1029; +pub const MINOR_CARD_READER_DESMANTLE_ALARM: u32 = 1030; +pub const MINOR_CARD_READER_DESMANTLE_RESUME: u32 = 1031; +pub const MINOR_CASE_SENSOR_ALARM: u32 = 1032; +pub const MINOR_CASE_SENSOR_RESUME: u32 = 1033; +pub const MINOR_STRESS_ALARM: u32 = 1034; +pub const MINOR_OFFLINE_ECENT_NEARLY_FULL: u32 = 1035; +pub const MINOR_CARD_MAX_AUTHENTICATE_FAIL: u32 = 1036; +pub const MINOR_SD_CARD_FULL: u32 = 1037; +pub const MINOR_LINKAGE_CAPTURE_PIC: u32 = 1038; +pub const MINOR_SECURITY_MODULE_DESMANTLE_ALARM: u32 = 1039; +pub const MINOR_SECURITY_MODULE_DESMANTLE_RESUME: u32 = 1040; +pub const MINOR_POS_START_ALARM: u32 = 1041; +pub const MINOR_POS_END_ALARM: u32 = 1042; +pub const MINOR_FACE_IMAGE_QUALITY_LOW: u32 = 1043; +pub const MINOR_FINGE_RPRINT_QUALITY_LOW: u32 = 1044; +pub const MINOR_FIRE_IMPORT_SHORT_CIRCUIT: u32 = 1045; +pub const MINOR_FIRE_IMPORT_BROKEN_CIRCUIT: u32 = 1046; +pub const MINOR_FIRE_IMPORT_RESUME: u32 = 1047; +pub const MINOR_FIRE_BUTTON_TRIGGER: u32 = 1048; +pub const MINOR_FIRE_BUTTON_RESUME: u32 = 1049; +pub const MINOR_MAINTENANCE_BUTTON_TRIGGER: u32 = 1050; +pub const MINOR_MAINTENANCE_BUTTON_RESUME: u32 = 1051; +pub const MINOR_EMERGENCY_BUTTON_TRIGGER: u32 = 1052; +pub const MINOR_EMERGENCY_BUTTON_RESUME: u32 = 1053; +pub const MINOR_DISTRACT_CONTROLLER_ALARM: u32 = 1054; +pub const MINOR_DISTRACT_CONTROLLER_RESUME: u32 = 1055; +pub const MINOR_PERSON_DENSITY_DETECTION_START: u32 = 1056; +pub const MINOR_PERSON_DENSITY_DETECTION_END: u32 = 1057; +pub const MINOR_CHANNEL_CONTROLLER_DESMANTLE_ALARM: u32 = 1058; +pub const MINOR_CHANNEL_CONTROLLER_DESMANTLE_RESUME: u32 = 1059; +pub const MINOR_CHANNEL_CONTROLLER_FIRE_IMPORT_ALARM: u32 = 1060; +pub const MINOR_CHANNEL_CONTROLLER_FIRE_IMPORT_RESUME: u32 = 1061; +pub const MINOR_HEART_RATE_ABNORMAL_BEGIN: u32 = 1062; +pub const MINOR_HEART_RATE_ABNORMAL_END: u32 = 1063; +pub const MINOR_BLOOD_OXYGEN_ABNORMAL_BEGIN: u32 = 1064; +pub const MINOR_BLOOD_OXYGEN_ABNORMAL_END: u32 = 1065; +pub const MINOR_SYSTOLIC_BLOOD_PRESSURE_ABNORMAL_BEGIN: u32 = 1066; +pub const MINOR_SYSTOLIC_BLOOD_PRESSURE_ABNORMAL_END: u32 = 1067; +pub const MINOR_DIASTOLIC_BLOOD_PRESSURE_ABNORMAL_BEGIN: u32 = 1068; +pub const MINOR_DIASTOLIC_BLOOD_PRESSURE_ABNORMAL_END: u32 = 1069; +pub const MINOR_VCA_LEAVE_POSITION_START: u32 = 1070; +pub const MINOR_VCA_LEAVE_POSITION_STOP: u32 = 1071; +pub const MINOR_VCA_STOOODUP_START: u32 = 1072; +pub const MINOR_VCA_STOOODUP_STOP: u32 = 1073; +pub const MINOR_VCA_PEOPLENUM_CHANGE_START: u32 = 1076; +pub const MINOR_VCA_PEOPLENUM_CHANGE_STOP: u32 = 1077; +pub const MINOR_VCA_RUNNING_START: u32 = 1080; +pub const MINOR_VCA_RUNNING_STOP: u32 = 1081; +pub const MINOR_VCA_VIOLENT_MOTION_START: u32 = 1082; +pub const MINOR_VCA_VIOLENT_MOTION_STOP: u32 = 1083; +pub const MINOR_VCA_FAIL_DOWN_START: u32 = 1084; +pub const MINOR_VCA_FAIL_DOWN_STOP: u32 = 1085; +pub const MINOR_VCA_RETENTION_START: u32 = 1086; +pub const MINOR_VCA_RETENTION_STOP: u32 = 1087; +pub const MINOR_PRINTER_OUT_OF_PAPER: u32 = 1088; +pub const MINOR_LEGAL_EVENT_NEARLY_FULL: u32 = 1090; +pub const MINOR_FIRE_IMPORT_ALARM: u32 = 1091; +pub const MINOR_TRANSACTION_RECORD_NEARLY_FULL: u32 = 1092; +pub const MINOR_ALARM_CUSTOM1: u32 = 2304; +pub const MINOR_ALARM_CUSTOM2: u32 = 2305; +pub const MINOR_ALARM_CUSTOM3: u32 = 2306; +pub const MINOR_ALARM_CUSTOM4: u32 = 2307; +pub const MINOR_ALARM_CUSTOM5: u32 = 2308; +pub const MINOR_ALARM_CUSTOM6: u32 = 2309; +pub const MINOR_ALARM_CUSTOM7: u32 = 2310; +pub const MINOR_ALARM_CUSTOM8: u32 = 2311; +pub const MINOR_ALARM_CUSTOM9: u32 = 2312; +pub const MINOR_ALARM_CUSTOM10: u32 = 2313; +pub const MINOR_ALARM_CUSTOM11: u32 = 2314; +pub const MINOR_ALARM_CUSTOM12: u32 = 2315; +pub const MINOR_ALARM_CUSTOM13: u32 = 2316; +pub const MINOR_ALARM_CUSTOM14: u32 = 2317; +pub const MINOR_ALARM_CUSTOM15: u32 = 2318; +pub const MINOR_ALARM_CUSTOM16: u32 = 2319; +pub const MINOR_ALARM_CUSTOM17: u32 = 2320; +pub const MINOR_ALARM_CUSTOM18: u32 = 2321; +pub const MINOR_ALARM_CUSTOM19: u32 = 2322; +pub const MINOR_ALARM_CUSTOM20: u32 = 2323; +pub const MINOR_ALARM_CUSTOM21: u32 = 2324; +pub const MINOR_ALARM_CUSTOM22: u32 = 2325; +pub const MINOR_ALARM_CUSTOM23: u32 = 2326; +pub const MINOR_ALARM_CUSTOM24: u32 = 2327; +pub const MINOR_ALARM_CUSTOM25: u32 = 2328; +pub const MINOR_ALARM_CUSTOM26: u32 = 2329; +pub const MINOR_ALARM_CUSTOM27: u32 = 2330; +pub const MINOR_ALARM_CUSTOM28: u32 = 2331; +pub const MINOR_ALARM_CUSTOM29: u32 = 2332; +pub const MINOR_ALARM_CUSTOM30: u32 = 2333; +pub const MINOR_ALARM_CUSTOM31: u32 = 2334; +pub const MINOR_ALARM_CUSTOM32: u32 = 2335; +pub const MINOR_ALARM_CUSTOM33: u32 = 2336; +pub const MINOR_ALARM_CUSTOM34: u32 = 2337; +pub const MINOR_ALARM_CUSTOM35: u32 = 2338; +pub const MINOR_ALARM_CUSTOM36: u32 = 2339; +pub const MINOR_ALARM_CUSTOM37: u32 = 2340; +pub const MINOR_ALARM_CUSTOM38: u32 = 2341; +pub const MINOR_ALARM_CUSTOM39: u32 = 2342; +pub const MINOR_ALARM_CUSTOM40: u32 = 2343; +pub const MINOR_ALARM_CUSTOM41: u32 = 2344; +pub const MINOR_ALARM_CUSTOM42: u32 = 2345; +pub const MINOR_ALARM_CUSTOM43: u32 = 2346; +pub const MINOR_ALARM_CUSTOM44: u32 = 2347; +pub const MINOR_ALARM_CUSTOM45: u32 = 2348; +pub const MINOR_ALARM_CUSTOM46: u32 = 2349; +pub const MINOR_ALARM_CUSTOM47: u32 = 2350; +pub const MINOR_ALARM_CUSTOM48: u32 = 2351; +pub const MINOR_ALARM_CUSTOM49: u32 = 2352; +pub const MINOR_ALARM_CUSTOM50: u32 = 2353; +pub const MINOR_ALARM_CUSTOM51: u32 = 2354; +pub const MINOR_ALARM_CUSTOM52: u32 = 2355; +pub const MINOR_ALARM_CUSTOM53: u32 = 2356; +pub const MINOR_ALARM_CUSTOM54: u32 = 2357; +pub const MINOR_ALARM_CUSTOM55: u32 = 2358; +pub const MINOR_ALARM_CUSTOM56: u32 = 2359; +pub const MINOR_ALARM_CUSTOM57: u32 = 2360; +pub const MINOR_ALARM_CUSTOM58: u32 = 2361; +pub const MINOR_ALARM_CUSTOM59: u32 = 2362; +pub const MINOR_ALARM_CUSTOM60: u32 = 2363; +pub const MINOR_ALARM_CUSTOM61: u32 = 2364; +pub const MINOR_ALARM_CUSTOM62: u32 = 2365; +pub const MINOR_ALARM_CUSTOM63: u32 = 2366; +pub const MINOR_ALARM_CUSTOM64: u32 = 2367; +pub const MINOR_LOCK_HIJIACK_FINGER_ALARM: u32 = 2384; +pub const MINOR_LOCK_HIJIACK_PASSWORD_ALARM: u32 = 2385; +pub const MINOR_LOCK_PRY_DOOR_ALARM: u32 = 2386; +pub const MINOR_LOCK_LOCKED_ALARM: u32 = 2387; +pub const MINOR_LOCK_BATTERLOW_ALARM: u32 = 2388; +pub const MINOR_LOCK_BLOCKLIST_DOOR_ALARM: u32 = 2389; +pub const MINOR_LOCK_OFFLINE_ALARM: u32 = 2390; +pub const MINOR_LOCK_UNCLOSED_ALARM: u32 = 2391; +pub const MINOR_LOCK_NO_HOME_ALARM: u32 = 2392; +pub const MINOR_LOCK_MAGNETOMETER_ALARM: u32 = 2393; +pub const MINOR_LOCK_IR_DETECTOR_ALARM: u32 = 2394; +pub const MINOR_LOCK_FP_LOCKED_ALARM: u32 = 2395; +pub const MINOR_LOCK_PASSWORD_LOCKED_ALARM: u32 = 2396; +pub const MINOR_LOCK_HIJIACK_ALARM: u32 = 2397; +pub const MINOR_ALARMHOST_SHORT_CIRCUIT: u32 = 4097; +pub const MINOR_ALARMHOST_BROKEN_CIRCUIT: u32 = 4098; +pub const MINOR_ALARMHOST_ALARM_RESET: u32 = 4099; +pub const MINOR_ALARMHOST_ALARM_NORMAL: u32 = 4100; +pub const MINOR_ALARMHOST_PASSWORD_ERROR: u32 = 4101; +pub const MINOR_ALARMHOST_ID_CARD_ILLEGALLY: u32 = 4102; +pub const MINOR_ALARMHOST_KEYPAD_REMOVE: u32 = 4103; +pub const MINOR_ALARMHOST_KEYPAD_REMOVE_RESTORE: u32 = 4104; +pub const MINOR_ALARMHOST_BELOW_ALARM_LIMIT1: u32 = 4113; +pub const MINOR_ALARMHOST_BELOW_ALARM_LIMIT2: u32 = 4114; +pub const MINOR_ALARMHOST_BELOW_ALARM_LIMIT3: u32 = 4115; +pub const MINOR_ALARMHOST_BELOW_ALARM_LIMIT4: u32 = 4116; +pub const MINOR_ALARMHOST_ABOVE_ALARM_LIMIT1: u32 = 4117; +pub const MINOR_ALARMHOST_ABOVE_ALARM_LIMIT2: u32 = 4118; +pub const MINOR_ALARMHOST_ABOVE_ALARM_LIMIT3: u32 = 4119; +pub const MINOR_ALARMHOST_ABOVE_ALARM_LIMIT4: u32 = 4120; +pub const MINOR_ALARMHOST_VIRTUAL_DEFENCE_BANDIT: u32 = 4129; +pub const MINOR_ALARMHOST_VIRTUAL_DEFENCE_FIRE: u32 = 4130; +pub const MINOR_ALARMHOST_VIRTUAL_DEFENCE_URGENT: u32 = 4131; +pub const MINOR_UPS_ALARM: u32 = 4136; +pub const MINOR_ELECTRICITY_METER_ALARM: u32 = 4137; +pub const MINOR_SWITCH_POWER_ALARM: u32 = 4144; +pub const MINOR_GAS_DETECT_SYS_ALARM: u32 = 4145; +pub const MINOR_TRANSFORMER_TEMPRATURE_ALARM: u32 = 4146; +pub const MINOR_TEMP_HUMI_ALARM: u32 = 4147; +pub const MINOR_UPS_ALARM_RESTORE: u32 = 4148; +pub const MINOR_ELECTRICITY_METER_ALARM_RESTORE: u32 = 4149; +pub const MINOR_SWITCH_POWER_ALARM_RESTORE: u32 = 4150; +pub const MINOR_GAS_DETECT_SYS_ALARM_RESTORE: u32 = 4151; +pub const MINOR_TRANSFORMER_TEMPRATURE_ALARM_RESTORE: u32 = 4152; +pub const MINOR_TEMP_HUMI_ALARM_RESTORE: u32 = 4153; +pub const MINOR_WATER_LEVEL_SENSOR_ALARM: u32 = 4160; +pub const MINOR_WATER_LEVEL_SENSOR_ALARM_RESTORE: u32 = 4161; +pub const MINOR_DUST_NOISE_ALARM: u32 = 4162; +pub const MINOR_DUST_NOISE_ALARM_RESTORE: u32 = 4163; +pub const MINOR_ENVIRONMENTAL_LOGGER_ALARM: u32 = 4164; +pub const MINOR_ENVIRONMENTAL_LOGGER_ALARM_RESTORE: u32 = 4165; +pub const MINOR_TRIGGER_TAMPER: u32 = 4166; +pub const MINOR_TRIGGER_TAMPER_RESTORE: u32 = 4167; +pub const MINOR_EMERGENCY_CALL_HELP_ALARM: u32 = 4168; +pub const MINOR_EMERGENCY_CALL_HELP_ALARM_RESTORE: u32 = 4169; +pub const MINOR_CONSULTING_ALARM: u32 = 4176; +pub const MINOR_CONSULTING_ALARM_RESTORE: u32 = 4177; +pub const MINOR_ALARMHOST_ZONE_MODULE_REMOVE: u32 = 4178; +pub const MINOR_ALARMHOST_ZONE_MODULE_RESET: u32 = 4179; +pub const MINOR_ALARMHOST_ALARM_WIND_SPEED_ALARM: u32 = 4180; +pub const MINOR_ALARMHOST_ALARM_WIND_SPEED_ALARM_RESTORE: u32 = 4181; +pub const MINOR_ALARMHOST_ALARM_GENERATE_OUTPUT_ALARM: u32 = 4182; +pub const MINOR_ALARMHOST_ALARM_GENERATE_OUTPUT_RESTORE: u32 = 4183; +pub const MINOR_ALARMHOST_ALARM_SOAK_ALARM: u32 = 4184; +pub const MINOR_ALARMHOST_ALARM_SOAK_ALARM_RESTORE: u32 = 4185; +pub const MINOR_ALARMHOST_ALARM_SOLAR_POWER_ALARM: u32 = 4192; +pub const MINOR_ALARMHOST_ALARM_SOLAR_POWER_ALARM_RESTORE: u32 = 4193; +pub const MINOR_ALARMHOST_ALARM_SF6_ALARM: u32 = 4194; +pub const MINOR_ALARMHOST_ALARM_SF6_ALARM_RESTORE: u32 = 4195; +pub const MINOR_ALARMHOST_ALARM_WEIGHT_ALARM: u32 = 4196; +pub const MINOR_ALARMHOST_ALARM_WEIGHT_ALARM_RESTORE: u32 = 4197; +pub const MINOR_ALARMHOST_ALARM_WEATHER_ALARM: u32 = 4198; +pub const MINOR_ALARMHOST_ALARM_WEATHER_ALARM_RESTORE: u32 = 4199; +pub const MINOR_ALARMHOST_ALARM_FUEL_GAS_ALARM: u32 = 4200; +pub const MINOR_ALARMHOST_ALARM_FUEL_GAS_ALARM_RESTORE: u32 = 4201; +pub const MINOR_ALARMHOST_ALARM_FIRE_ALARM: u32 = 4208; +pub const MINOR_ALARMHOST_ALARM_FIRE_ALARM_RESTORE: u32 = 4209; +pub const MINOR_ALARMHOST_WIRELESS_OUTPUT_MODULE_REMOVE: u32 = 4210; +pub const MINOR_ALARMHOST_WIRELESS_OUTPUT_MODULE_RESET: u32 = 4211; +pub const MINOR_ALARMHOST_WIRELESS_REPEATER_MODULE_REMOVE: u32 = 4212; +pub const MINOR_ALARMHOST_WIRELESS_SIREN_MODULE_REMOVE: u32 = 4213; +pub const MINOR_ALARMHOST_WIRELESS_SIREN_MODULE_RESET: u32 = 4214; +pub const MINOR_RS485_DEV_ALARM: u32 = 4215; +pub const MINOR_RS485_DEV_RESTORE: u32 = 4216; +pub const MINOR_ALARMHOST_ALARM_HOST_ALARM: u32 = 4217; +pub const MINOR_ALARMHOST_ALARM_HOST_RESTORE: u32 = 4218; +pub const MINOR_AIR_CONDITION_DEV_ALARM: u32 = 4219; +pub const MINOR_AIR_CONDITION_DEV_RESTORE: u32 = 4220; +pub const MINOR_ALARMHOST_WIRELESS_REPEATER_MODULE_RESET: u32 = 4221; +pub const MINOR_ALARM_ELEVATOR_BREAKDOWN: u32 = 4222; +pub const MINOR_WATER_PRESSURE_SENSOR_ALARM: u32 = 4223; +pub const MINOR_FLOW_SENSOR_ALARM: u32 = 4224; +pub const MINOR_SENSOR_LINKAGE_ALARM: u32 = 4225; +pub const MINOR_SENSOR_LINKAGE_ALARM_RESTORE: u32 = 4226; +pub const MINOR_SHELF_ABNORMAL_ALARM: u32 = 4227; +pub const MINOR_SYSTEM_CHECK_ALARM: u32 = 4609; +pub const MAJOR_EXCEPTION: u32 = 2; +pub const MINOR_SUBSYSTEM_ERROR: u32 = 10; +pub const MINOR_RAID_ERROR: u32 = 32; +pub const MINOR_VI_LOST: u32 = 33; +pub const MINOR_ILLEGAL_ACCESS: u32 = 34; +pub const MINOR_HD_FULL: u32 = 35; +pub const MINOR_HD_ERROR: u32 = 36; +pub const MINOR_DCD_LOST: u32 = 37; +pub const MINOR_IP_CONFLICT: u32 = 38; +pub const MINOR_NET_BROKEN: u32 = 39; +pub const MINOR_REC_ERROR: u32 = 40; +pub const MINOR_IPC_NO_LINK: u32 = 41; +pub const MINOR_VI_EXCEPTION: u32 = 42; +pub const MINOR_IPC_IP_CONFLICT: u32 = 43; +pub const MINOR_SENCE_EXCEPTION: u32 = 44; +pub const MINOR_PIC_REC_ERROR: u32 = 45; +pub const MINOR_VI_MISMATCH: u32 = 46; +pub const MINOR_RESOLUTION_MISMATCH: u32 = 47; +pub const MINOR_FANABNORMAL: u32 = 49; +pub const MINOR_FANRESUME: u32 = 50; +pub const MINOR_SUBSYSTEM_ABNORMALREBOOT: u32 = 51; +pub const MINOR_MATRIX_STARTBUZZER: u32 = 52; +pub const MINOR_NET_ABNORMAL: u32 = 53; +pub const MINOR_MEM_ABNORMAL: u32 = 54; +pub const MINOR_FILE_ABNORMAL: u32 = 55; +pub const MINOR_PANEL_ABNORMAL: u32 = 56; +pub const MINOR_PANEL_RESUME: u32 = 57; +pub const MINOR_RS485_DEVICE_ABNORMAL: u32 = 58; +pub const MINOR_RS485_DEVICE_REVERT: u32 = 59; +pub const MINOR_SCREEN_SUBSYSTEM_ABNORMALREBOOT: u32 = 60; +pub const MINOR_SCREEN_SUBSYSTEM_ABNORMALINSERT: u32 = 61; +pub const MINOR_SCREEN_SUBSYSTEM_ABNORMALPULLOUT: u32 = 62; +pub const MINOR_SCREEN_ABNARMALTEMPERATURE: u32 = 63; +pub const MINOR_HIGH_TEMPERATURE_PROTECT: u32 = 64; +pub const MINOR_RECORD_OVERFLOW: u32 = 65; +pub const MINOR_DSP_ABNORMAL: u32 = 66; +pub const MINOR_ANR_RECORD_FAIED: u32 = 67; +pub const MINOR_SPARE_WORK_DEVICE_EXCEPT: u32 = 68; +pub const MINOR_START_IPC_MAS_FAILED: u32 = 69; +pub const MINOR_IPCM_CRASH: u32 = 70; +pub const MINOR_POE_POWER_EXCEPTION: u32 = 71; +pub const MINOR_UPLOAD_DATA_CS_EXCEPTION: u32 = 72; +pub const MINOR_DIAL_EXCEPTION: u32 = 73; +pub const MINOR_DEV_EXCEPTION_OFFLINE: u32 = 80; +pub const MINOR_UPGRADEFAIL: u32 = 81; +pub const MINOR_AI_LOST: u32 = 82; +pub const MINOR_SYNC_IPC_PASSWD: u32 = 83; +pub const MINOR_EZVIZ_OFFLINE: u32 = 84; +pub const MINOR_VQD_ABNORMAL: u32 = 85; +pub const MINOR_ACCESSORIES_PLATE: u32 = 87; +pub const MINOR_KMS_EXPAMSION_DISK_LOST: u32 = 88; +pub const MINOR_ABNORMAL_PORT: u32 = 89; +pub const MINOR_CAMERA_ANGLE_ANOMALY: u32 = 96; +pub const MINOR_DATA_DISK_ERROE: u32 = 97; +pub const MINOR_INTELLIGENT_SYSTEM_RUNNING_ERROR: u32 = 98; +pub const MINOR_FACESNAP_RESOLUTION_OVERFLOW: u32 = 99; +pub const MINOR_SMD_RESOLUTION_OVERFLOW: u32 = 100; +pub const MINOR_AUDIO_LOSS_EXCEPTION: u32 = 101; +pub const MINOR_SAFETY_HELMET_EXCEPTION: u32 = 102; +pub const MINOR_VCA_PIC_LENGTH_OVERFLOW: u32 = 103; +pub const MINOR_FACE_MODEL_EXCEPTION: u32 = 104; +pub const MINOR_SSD_EXCEPTION: u32 = 105; +pub const MINOR_CLUSTER_DEVICE_OFFLINE: u32 = 112; +pub const MINOR_CLUSTER_CONFIG_FAILED: u32 = 113; +pub const MINOR_CLUSTER_DISASTER_TOLERANCE_EXCEPT: u32 = 114; +pub const MINOR_CLUSTER_STORFULL_EXCEPTION: u32 = 115; +pub const MINOR_CLUSTER_VERSION_EXCEPTION: u32 = 116; +pub const MINOR_CLUSTER_OFFLINENODE_EXCEPTION: u32 = 117; +pub const MINOR_CLUSTER_RECORDCYCLE_EXCEPTION: u32 = 118; +pub const MINOR_CLUSTER_IPCTRANSFER_EXCEPTION: u32 = 119; +pub const MINOR_CLUSTER_IPCONFLICT_EXCEPTION: u32 = 120; +pub const MINOR_GET_SUB_STREAM_FAILURE: u32 = 121; +pub const MINOR_HDD_SHM_DETECT_EXCEPTION: u32 = 122; +pub const MINOR_DEVICE_FORTIFY_FAILURE: u32 = 123; +pub const MINOR_EVENT_UPLOAD_EXCEPTION: u32 = 124; +pub const MINOR_LORA_EXCEPTION: u32 = 125; +pub const MINOR_AK_OR_SK_IS_EMPTY: u32 = 126; +pub const MINOR_HIGH_HD_TEMPERATURE: u32 = 128; +pub const MINOR_LOW_HD_TEMPERATURE: u32 = 129; +pub const MINOR_HD_IMPACT: u32 = 130; +pub const MINOR_HD_BAD_BLOCK: u32 = 131; +pub const MINOR_SEVERE_HD_FAILURE: u32 = 132; +pub const MINOR_RELEASE_FAILED: u32 = 133; +pub const MINOR_PORT_CONFLICT: u32 = 134; +pub const MINOR_MODULE_STARTUP_FAILED: u32 = 135; +pub const MINIOR_VCA_RUNNING_EXCEPTION: u32 = 136; +pub const MINOR_DEV_POWER_ON: u32 = 1024; +pub const MINOR_DEV_POWER_OFF: u32 = 1025; +pub const MINOR_WATCH_DOG_RESET: u32 = 1026; +pub const MINOR_LOW_BATTERY: u32 = 1027; +pub const MINOR_BATTERY_RESUME: u32 = 1028; +pub const MINOR_AC_OFF: u32 = 1029; +pub const MINOR_AC_RESUME: u32 = 1030; +pub const MINOR_NET_RESUME: u32 = 1031; +pub const MINOR_FLASH_ABNORMAL: u32 = 1032; +pub const MINOR_CARD_READER_OFFLINE: u32 = 1033; +pub const MINOR_CARD_READER_RESUME: u32 = 1034; +pub const MINOR_INDICATOR_LIGHT_OFF: u32 = 1035; +pub const MINOR_INDICATOR_LIGHT_RESUME: u32 = 1036; +pub const MINOR_CHANNEL_CONTROLLER_OFF: u32 = 1037; +pub const MINOR_CHANNEL_CONTROLLER_RESUME: u32 = 1038; +pub const MINOR_SECURITY_MODULE_OFF: u32 = 1039; +pub const MINOR_SECURITY_MODULE_RESUME: u32 = 1040; +pub const MINOR_BATTERY_ELECTRIC_LOW: u32 = 1041; +pub const MINOR_BATTERY_ELECTRIC_RESUME: u32 = 1042; +pub const MINOR_LOCAL_CONTROL_NET_BROKEN: u32 = 1043; +pub const MINOR_LOCAL_CONTROL_NET_RSUME: u32 = 1044; +pub const MINOR_MASTER_RS485_LOOPNODE_BROKEN: u32 = 1045; +pub const MINOR_MASTER_RS485_LOOPNODE_RESUME: u32 = 1046; +pub const MINOR_LOCAL_CONTROL_OFFLINE: u32 = 1047; +pub const MINOR_LOCAL_CONTROL_RESUME: u32 = 1048; +pub const MINOR_LOCAL_DOWNSIDE_RS485_LOOPNODE_BROKEN: u32 = 1049; +pub const MINOR_LOCAL_DOWNSIDE_RS485_LOOPNODE_RESUME: u32 = 1050; +pub const MINOR_DISTRACT_CONTROLLER_ONLINE: u32 = 1051; +pub const MINOR_DISTRACT_CONTROLLER_OFFLINE: u32 = 1052; +pub const MINOR_ID_CARD_READER_NOT_CONNECT: u32 = 1053; +pub const MINOR_ID_CARD_READER_RESUME: u32 = 1054; +pub const MINOR_FINGER_PRINT_MODULE_NOT_CONNECT: u32 = 1055; +pub const MINOR_FINGER_PRINT_MODULE_RESUME: u32 = 1056; +pub const MINOR_CAMERA_NOT_CONNECT: u32 = 1057; +pub const MINOR_CAMERA_RESUME: u32 = 1058; +pub const MINOR_COM_NOT_CONNECT: u32 = 1059; +pub const MINOR_COM_RESUME: u32 = 1060; +pub const MINOR_DEVICE_NOT_AUTHORIZE: u32 = 1061; +pub const MINOR_PEOPLE_AND_ID_CARD_DEVICE_ONLINE: u32 = 1062; +pub const MINOR_PEOPLE_AND_ID_CARD_DEVICE_OFFLINE: u32 = 1063; +pub const MINOR_LOCAL_LOGIN_LOCK: u32 = 1064; +pub const MINOR_LOCAL_LOGIN_UNLOCK: u32 = 1065; +pub const MINOR_SUBMARINEBACK_COMM_BREAK: u32 = 1066; +pub const MINOR_SUBMARINEBACK_COMM_RESUME: u32 = 1067; +pub const MINOR_MOTOR_SENSOR_EXCEPTION: u32 = 1068; +pub const MINOR_CAN_BUS_EXCEPTION: u32 = 1069; +pub const MINOR_CAN_BUS_RESUME: u32 = 1070; +pub const MINOR_GATE_TEMPERATURE_OVERRUN: u32 = 1071; +pub const MINOR_IR_EMITTER_EXCEPTION: u32 = 1072; +pub const MINOR_IR_EMITTER_RESUME: u32 = 1073; +pub const MINOR_LAMP_BOARD_COMM_EXCEPTION: u32 = 1074; +pub const MINOR_LAMP_BOARD_COMM_RESUME: u32 = 1075; +pub const MINOR_IR_ADAPTOR_COMM_EXCEPTION: u32 = 1076; +pub const MINOR_IR_ADAPTOR_COMM_RESUME: u32 = 1077; +pub const MINOR_PRINTER_ONLINE: u32 = 1078; +pub const MINOR_PRINTER_OFFLINE: u32 = 1079; +pub const MINOR_4G_MOUDLE_ONLINE: u32 = 1080; +pub const MINOR_4G_MOUDLE_OFFLINE: u32 = 1081; +pub const MINOR_DSP_START_FAILED: u32 = 1082; +pub const MINOR_SMART_REGULATION_NOT_ALLOWED: u32 = 1083; +pub const MINOR_AUXILIARY_BOARD_OFFLINE: u32 = 1084; +pub const MINOR_AUXILIARY_BOARD_RESUME: u32 = 1085; +pub const MINOR_IDCARD_SECURITY_MOUDLE_EXCEPTION: u32 = 1086; +pub const MINOR_IDCARD_SECURITY_MOUDLE_RESUME: u32 = 1087; +pub const MINOR_FP_PERIPHERAL_EXCEPTION: u32 = 1088; +pub const MINOR_FP_PERIPHERAL_RESUME: u32 = 1089; +pub const MINOR_REPLAY_ATTACK: u32 = 1090; +pub const MINOR_TLS_ABNORMAL: u32 = 1091; +pub const MINOR_SMART_PLATE_OFFLINE: u32 = 1092; +pub const MINOR_SMART_PLATE_ONLINE: u32 = 1093; +pub const MINOR_REFUND_LOCKED: u32 = 1094; +pub const MINOR_CODER_ONLINE: u32 = 1095; +pub const MINOR_CODER_OFFLINE: u32 = 1096; +pub const MINOR_KEYBOARD_OFFLINE: u32 = 1097; +pub const MINOR_KEYBOARD_ONLINE: u32 = 1098; +pub const MINOR_5G_MOUDLE_ONLINE: u32 = 1099; +pub const MINOR_5G_MOUDLE_OFFLINE: u32 = 1100; +pub const MINOR_EXTEND_MODULE_ONLINE: u32 = 1101; +pub const MINOR_EXTEND_MODULE_OFFLINE: u32 = 1102; +pub const MINOR_INTERLOCK_SERVER_DISCONNECTED: u32 = 1103; +pub const MINOR_INTERLOCK_SERVER_CONNECTED: u32 = 1104; +pub const MINOR_QRCODE_READER_OFFLINE: u32 = 1105; +pub const MINOR_QRCODE_READER_ONLINE: u32 = 1106; +pub const MINOR_HEALTH_INFO_ABNORMAL_LOCK: u32 = 1107; +pub const MINOR_HEALTH_INFO_ABNORMAL_UNLOCK: u32 = 1108; +pub const MINOR_EXCEPTION_CUSTOM1: u32 = 2304; +pub const MINOR_EXCEPTION_CUSTOM2: u32 = 2305; +pub const MINOR_EXCEPTION_CUSTOM3: u32 = 2306; +pub const MINOR_EXCEPTION_CUSTOM4: u32 = 2307; +pub const MINOR_EXCEPTION_CUSTOM5: u32 = 2308; +pub const MINOR_EXCEPTION_CUSTOM6: u32 = 2309; +pub const MINOR_EXCEPTION_CUSTOM7: u32 = 2310; +pub const MINOR_EXCEPTION_CUSTOM8: u32 = 2311; +pub const MINOR_EXCEPTION_CUSTOM9: u32 = 2312; +pub const MINOR_EXCEPTION_CUSTOM10: u32 = 2313; +pub const MINOR_EXCEPTION_CUSTOM11: u32 = 2314; +pub const MINOR_EXCEPTION_CUSTOM12: u32 = 2315; +pub const MINOR_EXCEPTION_CUSTOM13: u32 = 2316; +pub const MINOR_EXCEPTION_CUSTOM14: u32 = 2317; +pub const MINOR_EXCEPTION_CUSTOM15: u32 = 2318; +pub const MINOR_EXCEPTION_CUSTOM16: u32 = 2319; +pub const MINOR_EXCEPTION_CUSTOM17: u32 = 2320; +pub const MINOR_EXCEPTION_CUSTOM18: u32 = 2321; +pub const MINOR_EXCEPTION_CUSTOM19: u32 = 2322; +pub const MINOR_EXCEPTION_CUSTOM20: u32 = 2323; +pub const MINOR_EXCEPTION_CUSTOM21: u32 = 2324; +pub const MINOR_EXCEPTION_CUSTOM22: u32 = 2325; +pub const MINOR_EXCEPTION_CUSTOM23: u32 = 2326; +pub const MINOR_EXCEPTION_CUSTOM24: u32 = 2327; +pub const MINOR_EXCEPTION_CUSTOM25: u32 = 2328; +pub const MINOR_EXCEPTION_CUSTOM26: u32 = 2329; +pub const MINOR_EXCEPTION_CUSTOM27: u32 = 2330; +pub const MINOR_EXCEPTION_CUSTOM28: u32 = 2331; +pub const MINOR_EXCEPTION_CUSTOM29: u32 = 2332; +pub const MINOR_EXCEPTION_CUSTOM30: u32 = 2333; +pub const MINOR_EXCEPTION_CUSTOM31: u32 = 2334; +pub const MINOR_EXCEPTION_CUSTOM32: u32 = 2335; +pub const MINOR_EXCEPTION_CUSTOM33: u32 = 2336; +pub const MINOR_EXCEPTION_CUSTOM34: u32 = 2337; +pub const MINOR_EXCEPTION_CUSTOM35: u32 = 2338; +pub const MINOR_EXCEPTION_CUSTOM36: u32 = 2339; +pub const MINOR_EXCEPTION_CUSTOM37: u32 = 2340; +pub const MINOR_EXCEPTION_CUSTOM38: u32 = 2341; +pub const MINOR_EXCEPTION_CUSTOM39: u32 = 2342; +pub const MINOR_EXCEPTION_CUSTOM40: u32 = 2343; +pub const MINOR_EXCEPTION_CUSTOM41: u32 = 2344; +pub const MINOR_EXCEPTION_CUSTOM42: u32 = 2345; +pub const MINOR_EXCEPTION_CUSTOM43: u32 = 2346; +pub const MINOR_EXCEPTION_CUSTOM44: u32 = 2347; +pub const MINOR_EXCEPTION_CUSTOM45: u32 = 2348; +pub const MINOR_EXCEPTION_CUSTOM46: u32 = 2349; +pub const MINOR_EXCEPTION_CUSTOM47: u32 = 2350; +pub const MINOR_EXCEPTION_CUSTOM48: u32 = 2351; +pub const MINOR_EXCEPTION_CUSTOM49: u32 = 2352; +pub const MINOR_EXCEPTION_CUSTOM50: u32 = 2353; +pub const MINOR_EXCEPTION_CUSTOM51: u32 = 2354; +pub const MINOR_EXCEPTION_CUSTOM52: u32 = 2355; +pub const MINOR_EXCEPTION_CUSTOM53: u32 = 2356; +pub const MINOR_EXCEPTION_CUSTOM54: u32 = 2357; +pub const MINOR_EXCEPTION_CUSTOM55: u32 = 2358; +pub const MINOR_EXCEPTION_CUSTOM56: u32 = 2359; +pub const MINOR_EXCEPTION_CUSTOM57: u32 = 2360; +pub const MINOR_EXCEPTION_CUSTOM58: u32 = 2361; +pub const MINOR_EXCEPTION_CUSTOM59: u32 = 2362; +pub const MINOR_EXCEPTION_CUSTOM60: u32 = 2363; +pub const MINOR_EXCEPTION_CUSTOM61: u32 = 2364; +pub const MINOR_EXCEPTION_CUSTOM62: u32 = 2365; +pub const MINOR_EXCEPTION_CUSTOM63: u32 = 2366; +pub const MINOR_EXCEPTION_CUSTOM64: u32 = 2367; +pub const MINOR_SWITCH_WIRED_NETWORK: u32 = 2384; +pub const MINOR_SWITCH_WIRELESS_NETWORK: u32 = 2385; +pub const MINOR_LOCK_ONLINE_RESUME: u32 = 2386; +pub const MINOR_ALARMHOST_WDT_RESET: u32 = 4099; +pub const MINOR_ALARMHOST_RTC_EXCEPTION: u32 = 4103; +pub const MINOR_ALARMHOST_TEL_LINE_CONNECT_FAILURE: u32 = 4106; +pub const MINOR_ALARMHOST_TEL_LINE_CONNECT_RESTORE: u32 = 4107; +pub const MINOR_ALARMHOST_EXPANDER_BUS_LOSS: u32 = 4108; +pub const MINOR_ALARMHOST_EXPANDER_BUS_RESTORE: u32 = 4109; +pub const MINOR_ALARMHOST_KEYPAD_BUS_LOSS: u32 = 4110; +pub const MINOR_ALARMHOST_KEYPAD_BUS_RESTORE: u32 = 4111; +pub const MINOR_ALARMHOST_SENSOR_FAILURE: u32 = 4112; +pub const MINOR_ALARMHOST_SENSOR_RESTORE: u32 = 4113; +pub const MINOR_ALARMHOST_RS485_CONNECT_FAILURE: u32 = 4114; +pub const MINOR_ALARMHOST_RS485_CONNECT_RESTORE: u32 = 4115; +pub const MINOR_ALARMHOST_WIRED_NETWORK_ABNORMAL: u32 = 4117; +pub const MINOR_ALARMHOST_WIRED_NETWORK_RESTORE: u32 = 4118; +pub const MINOR_ALARMHOST_GPRS_ABNORMAL: u32 = 4119; +pub const MINOR_ALARMHOST_GPRS_RESTORE: u32 = 4120; +pub const MINOR_ALARMHOST_3G_ABNORMAL: u32 = 4121; +pub const MINOR_ALARMHOST_3G_RESTORE: u32 = 4122; +pub const MINOR_ALARMHOST_SIM_CARD_ABNORMAL: u32 = 4123; +pub const MINOR_ALARMHOST_SIM_CARD_RESTORE: u32 = 4124; +pub const MINOR_FORMAT_HDD_ERROR: u32 = 4134; +pub const MINOR_USB_ERROR: u32 = 4135; +pub const MINOR_USB_RESTORE: u32 = 4136; +pub const MINOR_PRINT_ERROR: u32 = 4137; +pub const MINOR_PRINT_RESTORE: u32 = 4144; +pub const MINOR_ALARMHOST_SUBSYSTEM_COMMUNICATION_ERROR: u32 = 4145; +pub const MINOR_MCU_RESTART: u32 = 4149; +pub const MINOR_GPRS_MODULE_FAULT: u32 = 4150; +pub const MINOR_TELEPHONE_MODULE_FAULT: u32 = 4151; +pub const MINOR_WIFI_ABNORMAL: u32 = 4152; +pub const MINOR_WIFI_RESTORE: u32 = 4153; +pub const MINOR_RF_ABNORMAL: u32 = 4154; +pub const MINOR_RF_RESTORE: u32 = 4155; +pub const MINOR_DETECTOR_ONLINE: u32 = 4156; +pub const MINOR_DETECTOR_OFFLINE: u32 = 4157; +pub const MINOR_DETECTOR_BATTERY_NORMAL: u32 = 4158; +pub const MINOR_DETECTOR_BATTERY_LOW: u32 = 4159; +pub const MINOR_DATA_TRAFFIC_OVERFLOW: u32 = 4160; +pub const MINOR_ALARMHOST_ZONE_MODULE_LOSS: u32 = 4161; +pub const MINOR_ALARMHOST_ZONE_MODULE_RESTORE: u32 = 4162; +pub const MINOR_WIRELESS_OUTPUT_LOSS: u32 = 4163; +pub const MINOR_WIRELESS_OUTPUT_RESTORE: u32 = 4164; +pub const MINOR_WIRELESS_REPEATER_LOSS: u32 = 4165; +pub const MINOR_WIRELESS_REPEATER_RESTORE: u32 = 4166; +pub const MINOR_ALARMHOST_TRIGGER_MODULE_LOSS: u32 = 4167; +pub const MINOR_ALARMHOST_TRIGGER_MODULE_RESTORE: u32 = 4168; +pub const MINOR_ALARMHOST_WIRELESS_SIREN_LOSS: u32 = 4169; +pub const MINOR_ALARMHOST_WIRELESS_SIREN_RESTORE: u32 = 4170; +pub const MINOR_TX1_SUB_SYSTEM_EXCEPTION: u32 = 4176; +pub const MINOR_TX1_REBOOT_EXCEPTION: u32 = 4177; +pub const MINOR_TX1_SUB_SYSTEM_LOSS: u32 = 4178; +pub const MINOR_TX1_SUB_SYSTEM_RESTORE: u32 = 4179; +pub const MINOR_WIRELESS_SPEED_EXCEPTION: u32 = 4180; +pub const MINOR_SUB_BOARD_HEARTBEAT_EXCEPTION: u32 = 4181; +pub const MINOR_HOTSTANDBY__EXCEPTION: u32 = 4182; +pub const MINOR_PRODUCTIONDATA_EXCEPTION: u32 = 4183; +pub const MINOR_LED_SYSTEM_EXCEPTION: u32 = 4609; +pub const MINOR_FLASH_NOTENOUGH_EXCEPTION: u32 = 4610; +pub const MINOR_LOG_EXCEPTION: u32 = 4865; +pub const MINOR_SUBSYSTEM_IP_CONFLICT: u32 = 16384; +pub const MINOR_SUBSYSTEM_NET_BROKEN: u32 = 16385; +pub const MINOR_FAN_ABNORMAL: u32 = 16386; +pub const MINOR_BACKPANEL_TEMPERATURE_ABNORMAL: u32 = 16387; +pub const MINOR_SDCARD_ABNORMAL: u32 = 16388; +pub const MINOR_SDCARD_DAMAGE: u32 = 16389; +pub const MINOR_POC_ABNORMAL: u32 = 16390; +pub const MINOR_MAIN_POWER_FAULT: u32 = 16391; +pub const MINOR_BACK_UP_POWER_FAULT: u32 = 16392; +pub const MINOR_TAMPER_FAULT: u32 = 16393; +pub const MINOR_RS232_FAULT: u32 = 16394; +pub const MINOR_RS485_FAULT: u32 = 16395; +pub const MINOR_LAN_STATUS_FAULT: u32 = 16396; +pub const MINOR_LAN_LINK1_FAULT: u32 = 16397; +pub const MINOR_LAN_LINK2_FAULT: u32 = 16398; +pub const MINOR_SIM_CARD_STATUS_FAULT: u32 = 16399; +pub const MINOR_4G_LINK1_FAULT: u32 = 16400; +pub const MINOR_4G_LINK2_FAULT: u32 = 16401; +pub const MINOR_OTHER_FAULT: u32 = 16402; +pub const MINOR_FIRE_CONTROL_CONNECT_FAULT: u32 = 16403; +pub const MINOR_SENSOR_SHORT_CIRCUIT: u32 = 16404; +pub const MINOR_SENSOR_OPEN_CIRCUIT: u32 = 16405; +pub const MINOR_SENSOR_MIS_CONNECT: u32 = 16406; +pub const MINOR_SENSOR_FAULT_RESTORE: u32 = 16407; +pub const MINOR_DEVICE_FAULT: u32 = 16408; +pub const MINOR_OVERVOLTAGE: u32 = 16409; +pub const MINOR_UNDERVOLTAGE: u32 = 16410; +pub const MINOR_PANLOCKING: u32 = 16411; +pub const MINOR_TILTLOCKING: u32 = 16412; +pub const MINOR_SUBBOARD_TEMPERATURE_ABNORMAL: u32 = 16413; +pub const MINOR_EZVIZ_UPGRADE_EXCEPTION: u32 = 16414; +pub const MINOR_EZVIZ_OPERATION_ABNORMAL: u32 = 16416; +pub const MINOR_IFRAME_IS_TOO_LARGE: u32 = 16432; +pub const MAJOR_OPERATION: u32 = 3; +pub const MINOR_VCA_MOTIONEXCEPTION: u32 = 41; +pub const MINOR_START_DVR: u32 = 65; +pub const MINOR_STOP_DVR: u32 = 66; +pub const MINOR_STOP_ABNORMAL: u32 = 67; +pub const MINOR_REBOOT_DVR: u32 = 68; +pub const MINOR_LOCAL_LOGIN: u32 = 80; +pub const MINOR_LOCAL_LOGOUT: u32 = 81; +pub const MINOR_LOCAL_CFG_PARM: u32 = 82; +pub const MINOR_LOCAL_PLAYBYFILE: u32 = 83; +pub const MINOR_LOCAL_PLAYBYTIME: u32 = 84; +pub const MINOR_LOCAL_START_REC: u32 = 85; +pub const MINOR_LOCAL_STOP_REC: u32 = 86; +pub const MINOR_LOCAL_PTZCTRL: u32 = 87; +pub const MINOR_LOCAL_PREVIEW: u32 = 88; +pub const MINOR_LOCAL_MODIFY_TIME: u32 = 89; +pub const MINOR_LOCAL_UPGRADE: u32 = 90; +pub const MINOR_LOCAL_RECFILE_OUTPUT: u32 = 91; +pub const MINOR_LOCAL_FORMAT_HDD: u32 = 92; +pub const MINOR_LOCAL_CFGFILE_OUTPUT: u32 = 93; +pub const MINOR_LOCAL_CFGFILE_INPUT: u32 = 94; +pub const MINOR_LOCAL_COPYFILE: u32 = 95; +pub const MINOR_LOCAL_LOCKFILE: u32 = 96; +pub const MINOR_LOCAL_UNLOCKFILE: u32 = 97; +pub const MINOR_LOCAL_DVR_ALARM: u32 = 98; +pub const MINOR_IPC_ADD: u32 = 99; +pub const MINOR_IPC_DEL: u32 = 100; +pub const MINOR_IPC_SET: u32 = 101; +pub const MINOR_LOCAL_START_BACKUP: u32 = 102; +pub const MINOR_LOCAL_STOP_BACKUP: u32 = 103; +pub const MINOR_LOCAL_COPYFILE_START_TIME: u32 = 104; +pub const MINOR_LOCAL_COPYFILE_END_TIME: u32 = 105; +pub const MINOR_LOCAL_ADD_NAS: u32 = 106; +pub const MINOR_LOCAL_DEL_NAS: u32 = 107; +pub const MINOR_LOCAL_SET_NAS: u32 = 108; +pub const MINOR_LOCAL_RESET_PASSWD: u32 = 109; +pub const MINOR_REMOTE_LOGIN: u32 = 112; +pub const MINOR_REMOTE_LOGOUT: u32 = 113; +pub const MINOR_REMOTE_START_REC: u32 = 114; +pub const MINOR_REMOTE_STOP_REC: u32 = 115; +pub const MINOR_START_TRANS_CHAN: u32 = 116; +pub const MINOR_STOP_TRANS_CHAN: u32 = 117; +pub const MINOR_REMOTE_GET_PARM: u32 = 118; +pub const MINOR_REMOTE_CFG_PARM: u32 = 119; +pub const MINOR_REMOTE_GET_STATUS: u32 = 120; +pub const MINOR_REMOTE_ARM: u32 = 121; +pub const MINOR_REMOTE_DISARM: u32 = 122; +pub const MINOR_REMOTE_REBOOT: u32 = 123; +pub const MINOR_START_VT: u32 = 124; +pub const MINOR_STOP_VT: u32 = 125; +pub const MINOR_REMOTE_UPGRADE: u32 = 126; +pub const MINOR_REMOTE_PLAYBYFILE: u32 = 127; +pub const MINOR_REMOTE_PLAYBYTIME: u32 = 128; +pub const MINOR_REMOTE_PTZCTRL: u32 = 129; +pub const MINOR_REMOTE_FORMAT_HDD: u32 = 130; +pub const MINOR_REMOTE_STOP: u32 = 131; +pub const MINOR_REMOTE_LOCKFILE: u32 = 132; +pub const MINOR_REMOTE_UNLOCKFILE: u32 = 133; +pub const MINOR_REMOTE_CFGFILE_OUTPUT: u32 = 134; +pub const MINOR_REMOTE_CFGFILE_INTPUT: u32 = 135; +pub const MINOR_REMOTE_RECFILE_OUTPUT: u32 = 136; +pub const MINOR_REMOTE_DVR_ALARM: u32 = 137; +pub const MINOR_REMOTE_IPC_ADD: u32 = 138; +pub const MINOR_REMOTE_IPC_DEL: u32 = 139; +pub const MINOR_REMOTE_IPC_SET: u32 = 140; +pub const MINOR_REBOOT_VCA_LIB: u32 = 141; +pub const MINOR_REMOTE_ADD_NAS: u32 = 142; +pub const MINOR_REMOTE_DEL_NAS: u32 = 143; +pub const MINOR_REMOTE_SET_NAS: u32 = 144; +pub const MINOR_LOCAL_OPERATE_LOCK: u32 = 157; +pub const MINOR_LOCAL_OPERATE_UNLOCK: u32 = 158; +pub const MINOR_REMOTE_DELETE_HDISK: u32 = 154; +pub const MINOR_REMOTE_LOAD_HDISK: u32 = 155; +pub const MINOR_REMOTE_UNLOAD_HDISK: u32 = 156; +pub const MINOR_SCHEDULE_ANGLECALIBRATION: u32 = 313; +pub const MINOR_OTHER_OPERATE: u32 = 512; +pub const MINOR_LOCAL_START_REC_CDRW: u32 = 145; +pub const MINOR_LOCAL_STOP_REC_CDRW: u32 = 146; +pub const MINOR_REMOTE_START_REC_CDRW: u32 = 147; +pub const MINOR_REMOTE_STOP_REC_CDRW: u32 = 148; +pub const MINOR_LOCAL_PIC_OUTPUT: u32 = 149; +pub const MINOR_REMOTE_PIC_OUTPUT: u32 = 150; +pub const MINOR_LOCAL_INQUEST_RESUME: u32 = 151; +pub const MINOR_REMOTE_INQUEST_RESUME: u32 = 152; +pub const MINOR_LOCAL_ADD_FILE: u32 = 153; +pub const MINOR_LOCAL_DEL_FILE: u32 = 159; +pub const MINOR_REMOTE_INQUEST_ADD_FILE: u32 = 256; +pub const MINOR_SUBSYSTEMREBOOT: u32 = 160; +pub const MINOR_MATRIX_STARTTRANSFERVIDEO: u32 = 161; +pub const MINOR_MATRIX_STOPTRANSFERVIDEO: u32 = 162; +pub const MINOR_REMOTE_SET_ALLSUBSYSTEM: u32 = 163; +pub const MINOR_REMOTE_GET_ALLSUBSYSTEM: u32 = 164; +pub const MINOR_REMOTE_SET_PLANARRAY: u32 = 165; +pub const MINOR_REMOTE_GET_PLANARRAY: u32 = 166; +pub const MINOR_MATRIX_STARTTRANSFERAUDIO: u32 = 167; +pub const MINOR_MATRIX_STOPRANSFERAUDIO: u32 = 168; +pub const MINOR_LOGON_CODESPITTER: u32 = 169; +pub const MINOR_LOGOFF_CODESPITTER: u32 = 170; +pub const MINOR_START_DYNAMIC_DECODE: u32 = 176; +pub const MINOR_STOP_DYNAMIC_DECODE: u32 = 177; +pub const MINOR_GET_CYC_CFG: u32 = 178; +pub const MINOR_SET_CYC_CFG: u32 = 179; +pub const MINOR_START_CYC_DECODE: u32 = 180; +pub const MINOR_STOP_CYC_DECODE: u32 = 181; +pub const MINOR_GET_DECCHAN_STATUS: u32 = 182; +pub const MINOR_GET_DECCHAN_INFO: u32 = 183; +pub const MINOR_START_PASSIVE_DEC: u32 = 184; +pub const MINOR_STOP_PASSIVE_DEC: u32 = 185; +pub const MINOR_CTRL_PASSIVE_DEC: u32 = 186; +pub const MINOR_RECON_PASSIVE_DEC: u32 = 187; +pub const MINOR_GET_DEC_CHAN_SW: u32 = 188; +pub const MINOR_SET_DEC_CHAN_SW: u32 = 189; +pub const MINOR_CTRL_DEC_CHAN_SCALE: u32 = 190; +pub const MINOR_SET_REMOTE_REPLAY: u32 = 191; +pub const MINOR_GET_REMOTE_REPLAY: u32 = 192; +pub const MINOR_CTRL_REMOTE_REPLAY: u32 = 193; +pub const MINOR_SET_DISP_CFG: u32 = 194; +pub const MINOR_GET_DISP_CFG: u32 = 195; +pub const MINOR_SET_PLANTABLE: u32 = 196; +pub const MINOR_GET_PLANTABLE: u32 = 197; +pub const MINOR_START_PPPPOE: u32 = 198; +pub const MINOR_STOP_PPPPOE: u32 = 199; +pub const MINOR_UPLOAD_LOGO: u32 = 200; +pub const MINOR_LOCAL_PIN: u32 = 201; +pub const MINOR_LOCAL_DIAL: u32 = 202; +pub const MINOR_SMS_CONTROL: u32 = 203; +pub const MINOR_CALL_ONLINE: u32 = 204; +pub const MINOR_REMOTE_PIN: u32 = 205; +pub const MINOR_REMOTE_BYPASS: u32 = 208; +pub const MINOR_REMOTE_UNBYPASS: u32 = 209; +pub const MINOR_REMOTE_SET_ALARMIN_CFG: u32 = 210; +pub const MINOR_REMOTE_GET_ALARMIN_CFG: u32 = 211; +pub const MINOR_REMOTE_SET_ALARMOUT_CFG: u32 = 212; +pub const MINOR_REMOTE_GET_ALARMOUT_CFG: u32 = 213; +pub const MINOR_REMOTE_ALARMOUT_OPEN_MAN: u32 = 214; +pub const MINOR_REMOTE_ALARMOUT_CLOSE_MAN: u32 = 215; +pub const MINOR_REMOTE_ALARM_ENABLE_CFG: u32 = 216; +pub const MINOR_DBDATA_OUTPUT: u32 = 217; +pub const MINOR_DBDATA_INPUT: u32 = 218; +pub const MINOR_MU_SWITCH: u32 = 219; +pub const MINOR_MU_PTZ: u32 = 220; +pub const MINOR_DELETE_LOGO: u32 = 221; +pub const MINOR_REMOTE_INQUEST_DEL_FILE: u32 = 222; +pub const MINOR_LOCAL_CONF_REB_RAID: u32 = 257; +pub const MINOR_LOCAL_CONF_SPARE: u32 = 258; +pub const MINOR_LOCAL_ADD_RAID: u32 = 259; +pub const MINOR_LOCAL_DEL_RAID: u32 = 260; +pub const MINOR_LOCAL_MIG_RAID: u32 = 261; +pub const MINOR_LOCAL_REB_RAID: u32 = 262; +pub const MINOR_LOCAL_QUICK_CONF_RAID: u32 = 263; +pub const MINOR_LOCAL_ADD_VD: u32 = 264; +pub const MINOR_LOCAL_DEL_VD: u32 = 265; +pub const MINOR_LOCAL_RP_VD: u32 = 266; +pub const MINOR_LOCAL_FORMAT_EXPANDVD: u32 = 267; +pub const MINOR_LOCAL_RAID_UPGRADE: u32 = 268; +pub const MINOR_LOCAL_STOP_RAID: u32 = 269; +pub const MINOR_REMOTE_CONF_REB_RAID: u32 = 273; +pub const MINOR_REMOTE_CONF_SPARE: u32 = 274; +pub const MINOR_REMOTE_ADD_RAID: u32 = 275; +pub const MINOR_REMOTE_DEL_RAID: u32 = 276; +pub const MINOR_REMOTE_MIG_RAID: u32 = 277; +pub const MINOR_REMOTE_REB_RAID: u32 = 278; +pub const MINOR_REMOTE_QUICK_CONF_RAID: u32 = 279; +pub const MINOR_REMOTE_ADD_VD: u32 = 280; +pub const MINOR_REMOTE_DEL_VD: u32 = 281; +pub const MINOR_REMOTE_RP_VD: u32 = 282; +pub const MINOR_REMOTE_FORMAT_EXPANDVD: u32 = 283; +pub const MINOR_REMOTE_RAID_UPGRADE: u32 = 284; +pub const MINOR_REMOTE_STOP_RAID: u32 = 285; +pub const MINOR_LOCAL_START_PIC_REC: u32 = 289; +pub const MINOR_LOCAL_STOP_PIC_REC: u32 = 290; +pub const MINOR_LOCAL_SET_SNMP: u32 = 293; +pub const MINOR_LOCAL_TAG_OPT: u32 = 294; +pub const MINOR_REMOTE_START_PIC_REC: u32 = 305; +pub const MINOR_REMOTE_STOP_PIC_REC: u32 = 306; +pub const MINOR_REMOTE_SET_SNMP: u32 = 309; +pub const MINOR_REMOTE_TAG_OPT: u32 = 310; +pub const MINOR_REMOTE_LOGIN_LOCK: u32 = 311; +pub const MINOR_REMOTE_LOGIN_UNLOCK: u32 = 312; +pub const MINOR_LOCAL_VOUT_SWITCH: u32 = 320; +pub const MINOR_STREAM_CABAC: u32 = 321; +pub const MINOR_LOCAL_SPARE_OPT: u32 = 322; +pub const MINOR_REMOTE_SPARE_OPT: u32 = 323; +pub const MINOR_LOCAL_IPCCFGFILE_OUTPUT: u32 = 324; +pub const MINOR_LOCAL_IPCCFGFILE_INPUT: u32 = 325; +pub const MINOR_LOCAL_IPC_UPGRADE: u32 = 326; +pub const MINOR_REMOTE_IPCCFGFILE_OUTPUT: u32 = 327; +pub const MINOR_REMOTE_IPCCFGFILE_INPUT: u32 = 328; +pub const MINOR_REMOTE_IPC_UPGRADE: u32 = 329; +pub const MINOR_LOCAL_UNLOAD_HDISK: u32 = 336; +pub const MINOR_LOCAL_AUDIO_MIX: u32 = 337; +pub const MINOR_REMOTE_AUDIO_MIX: u32 = 338; +pub const MINOR_LOCAL_TRIAL_PAUSE: u32 = 339; +pub const MINOR_LOCAL_TRIAL_RESUME: u32 = 340; +pub const MINOR_REMOTE_TRIAL_PAUSE: u32 = 341; +pub const MINOR_REMOTE_TRIAL_RESUME: u32 = 342; +pub const MINOR_REMOTE_MODIFY_VERIFICATION_CODE: u32 = 343; +pub const MINOR_LOCAL_MAKECALL: u32 = 384; +pub const MINOR_LOCAL_REJECTCALL: u32 = 385; +pub const MINOR_LOCAL_ANSWERCALL: u32 = 386; +pub const MINOR_LOCAL_HANGUPCALL: u32 = 387; +pub const MINOR_REMOTE_MAKECALL: u32 = 392; +pub const MINOR_REMOTE_REJECTCALL: u32 = 393; +pub const MINOR_REMOTE_ANSWERCALL: u32 = 394; +pub const MINOR_REMOTE_HANGUPCALL: u32 = 395; +pub const MINOR_LOCAL_CHANNEL_ORDERED: u32 = 411; +pub const MINOR_SET_MULTI_MASTER: u32 = 513; +pub const MINOR_SET_MULTI_SLAVE: u32 = 514; +pub const MINOR_CANCEL_MULTI_MASTER: u32 = 515; +pub const MINOR_CANCEL_MULTI_SLAVE: u32 = 516; +pub const MINOR_DISPLAY_LOGO: u32 = 517; +pub const MINOR_HIDE_LOGO: u32 = 518; +pub const MINOR_SET_DEC_DELAY_LEVEL: u32 = 519; +pub const MINOR_SET_BIGSCREEN_DIPLAY_AREA: u32 = 520; +pub const MINOR_CUT_VIDEO_SOURCE: u32 = 521; +pub const MINOR_SET_BASEMAP_AREA: u32 = 528; +pub const MINOR_DOWNLOAD_BASEMAP: u32 = 529; +pub const MINOR_CUT_BASEMAP: u32 = 530; +pub const MINOR_CONTROL_ELEC_ENLARGE: u32 = 531; +pub const MINOR_SET_OUTPUT_RESOLUTION: u32 = 532; +pub const MINOR_SET_TRANCSPARENCY: u32 = 533; +pub const MINOR_SET_OSD: u32 = 534; +pub const MINOR_RESTORE_DEC_STATUS: u32 = 535; +pub const MINOR_SCREEN_OPEN_SCREEN: u32 = 536; +pub const MINOR_SCREEN_CLOSE_SCREEN: u32 = 537; +pub const MINOR_SCREEN_SWITCH_SIGNAL: u32 = 538; +pub const MINOR_SCREEN_MODIFY_NETWORK: u32 = 539; +pub const MINOR_SCREEN_MODIFY_LEDRES: u32 = 540; +pub const MINOR_SCREEN_SHOW_NORMAL: u32 = 541; +pub const MINOR_SCREEN_SHOW_TILE: u32 = 542; +pub const MINOR_SCREEN_DEC_NORMAL: u32 = 543; +pub const MINOR_SCREEN_DEC_LOWLATENCY: u32 = 544; +pub const MINOR_SCREEN_MODIFY_SELFRES: u32 = 545; +pub const MINOR_SCREEN_OUTPUT_POSITION: u32 = 546; +pub const MINOR_SCREEN_IMAGE_ENHANCE: u32 = 547; +pub const MINOR_SCREEN_JOIN_SIGNAL: u32 = 548; +pub const MINOR_SCREEN_SIGNAL_OSD: u32 = 549; +pub const MINOR_SCREEN_ASSOCIATED_INTERACTION: u32 = 550; +pub const MINOR_SCREEN_MODIFY_MATRIX: u32 = 551; +pub const MINOR_SCREEN_WND_TOP_KEEP: u32 = 552; +pub const MINOR_SCREEN_WND_OPEN_KEEP: u32 = 553; +pub const MINOR_SCREEN_WALL_MIRROR: u32 = 554; +pub const MINOR_SCREEN_UPLOAD_BASEMAP: u32 = 555; +pub const MINOR_SCREEN_SHOW_BASEMAP: u32 = 556; +pub const MINOR_SCREEN_HIDE_BASEMAP: u32 = 557; +pub const MINOR_SCREEN_MODIFY_SERIAL: u32 = 558; +pub const MINOR_SCREEN_SET_INPUT: u32 = 593; +pub const MINOR_SCREEN_SET_OUTPUT: u32 = 594; +pub const MINOR_SCREEN_SET_OSD: u32 = 595; +pub const MINOR_SCREEN_SET_LOGO: u32 = 596; +pub const MINOR_SCREEN_SET_LAYOUT: u32 = 597; +pub const MINOR_SCREEN_PICTUREPREVIEW: u32 = 598; +pub const MINOR_SCREEN_GET_OSD: u32 = 599; +pub const MINOR_SCREEN_GET_LAYOUT: u32 = 600; +pub const MINOR_SCREEN_LAYOUT_CTRL: u32 = 601; +pub const MINOR_GET_ALL_VALID_WND: u32 = 608; +pub const MINOR_GET_SIGNAL_WND: u32 = 609; +pub const MINOR_WINDOW_CTRL: u32 = 610; +pub const MINOR_GET_LAYOUT_LIST: u32 = 611; +pub const MINOR_LAYOUT_CTRL: u32 = 612; +pub const MINOR_SET_LAYOUT: u32 = 613; +pub const MINOR_GET_SIGNAL_LIST: u32 = 614; +pub const MINOR_GET_PLAN_LIST: u32 = 615; +pub const MINOR_SET_PLAN: u32 = 616; +pub const MINOR_CTRL_PLAN: u32 = 617; +pub const MINOR_CTRL_SCREEN: u32 = 624; +pub const MINOR_ADD_NETSIG: u32 = 625; +pub const MINOR_SET_NETSIG: u32 = 626; +pub const MINOR_SET_DECBDCFG: u32 = 627; +pub const MINOR_GET_DECBDCFG: u32 = 628; +pub const MINOR_GET_DEVICE_STATUS: u32 = 629; +pub const MINOR_UPLOAD_PICTURE: u32 = 630; +pub const MINOR_SET_USERPWD: u32 = 631; +pub const MINOR_ADD_LAYOUT: u32 = 632; +pub const MINOR_DEL_LAYOUT: u32 = 633; +pub const MINOR_DEL_NETSIG: u32 = 640; +pub const MINOR_ADD_PLAN: u32 = 641; +pub const MINOR_DEL_PLAN: u32 = 642; +pub const MINOR_GET_EXTERNAL_MATRIX_CFG: u32 = 643; +pub const MINOR_SET_EXTERNAL_MATRIX_CFG: u32 = 644; +pub const MINOR_GET_USER_CFG: u32 = 645; +pub const MINOR_SET_USER_CFG: u32 = 646; +pub const MINOR_GET_DISPLAY_PANEL_LINK_CFG: u32 = 647; +pub const MINOR_SET_DISPLAY_PANEL_LINK_CFG: u32 = 648; +pub const MINOR_GET_WALLSCENE_PARAM: u32 = 649; +pub const MINOR_SET_WALLSCENE_PARAM: u32 = 650; +pub const MINOR_GET_CURRENT_WALLSCENE: u32 = 651; +pub const MINOR_SWITCH_WALLSCENE: u32 = 652; +pub const MINOR_SIP_LOGIN: u32 = 653; +pub const MINOR_VOIP_START: u32 = 654; +pub const MINOR_VOIP_STOP: u32 = 655; +pub const MINOR_WIN_TOP: u32 = 656; +pub const MINOR_WIN_BOTTOM: u32 = 657; +pub const MINOR_SET_USER_ADD_CFG: u32 = 658; +pub const MINOR_SET_USER_MODF_CFG: u32 = 659; +pub const MINOR_SET_USER_DEL_CFG: u32 = 660; +pub const MINOR_LOCAL_LOAD_HDISK: u32 = 768; +pub const MINOR_LOCAL_DELETE_HDISK: u32 = 769; +pub const MINOR_LOCAL_MAIN_AUXILIARY_PORT_SWITCH: u32 = 770; +pub const MINOR_LOCAL_HARD_DISK_CHECK: u32 = 771; +pub const MINOR_LOCAL_CFG_DEVICE_TYPE: u32 = 784; +pub const MINOR_REMOTE_CFG_DEVICE_TYPE: u32 = 785; +pub const MINOR_LOCAL_CFG_WORK_HOT_SERVER: u32 = 786; +pub const MINOR_REMOTE_CFG_WORK_HOT_SERVER: u32 = 787; +pub const MINOR_LOCAL_DELETE_WORK: u32 = 788; +pub const MINOR_REMOTE_DELETE_WORK: u32 = 789; +pub const MINOR_LOCAL_ADD_WORK: u32 = 790; +pub const MINOR_REMOTE_ADD_WORK: u32 = 791; +pub const MINOR_LOCAL_IPCHEATMAP_OUTPUT: u32 = 792; +pub const MINOR_LOCAL_IPCHEATFLOW_OUTPUT: u32 = 793; +pub const MINOR_REMOTE_SMS_SEND: u32 = 848; +pub const MINOR_LOCAL_SMS_SEND: u32 = 849; +pub const MINOR_ALARM_SMS_SEND: u32 = 850; +pub const MINOR_SMS_RECV: u32 = 851; +pub const MINOR_LOCAL_SMS_SEARCH: u32 = 852; +pub const MINOR_REMOTE_SMS_SEARCH: u32 = 853; +pub const MINOR_LOCAL_SMS_READ: u32 = 854; +pub const MINOR_REMOTE_SMS_READ: u32 = 855; +pub const MINOR_REMOTE_DIAL_CONNECT: u32 = 856; +pub const MINOR_REMOTE_DIAL_DISCONN: u32 = 857; +pub const MINOR_LOCAL_ALLOWLIST_SET: u32 = 858; +pub const MINOR_REMOTE_ALLOWLIST_SET: u32 = 859; +pub const MINOR_LOCAL_DIAL_PARA_SET: u32 = 860; +pub const MINOR_REMOTE_DIAL_PARA_SET: u32 = 861; +pub const MINOR_LOCAL_DIAL_SCHEDULE_SET: u32 = 862; +pub const MINOR_REMOTE_DIAL_SCHEDULE_SET: u32 = 863; +pub const MINOR_PLAT_OPER: u32 = 864; +pub const MINOR_REMOTE_CFG_POE_WORK_MODE: u32 = 865; +pub const MINOR_LOCAL_CFG_POE_WORK_MODE: u32 = 866; +pub const MINOR_REMOTE_CFG_FACE_CONTRAST: u32 = 867; +pub const MINOR_LOCAL_CFG_FACE_CONTRAST: u32 = 868; +pub const MINOR_REMOTE_CFG_ALLOWLIST_FACE_CONTRAST: u32 = 869; +pub const MINOR_LOCAL_CFG_ALLOWLIST_FACE_CONTRAST: u32 = 870; +pub const MINOR_LOCAL_CHECK_TIME: u32 = 871; +pub const MINOR_VCA_ONEKEY_EXPORT_PICTURE: u32 = 872; +pub const MINOR_VCA_ONEKEY_DELETE_PICTURE: u32 = 873; +pub const MINOR_VCA_ONEKEY_EXPORT_VIDEO: u32 = 874; +pub const MINOR_VCA_ONEKEY_DELETE_VIDEO: u32 = 875; +pub const MINOR_REMOTE_CFG_WIRELESS_DIALPARAM: u32 = 876; +pub const MINOR_LOCAL_CFG_WIRELESS_DIALPARAM: u32 = 877; +pub const MINOR_REMOTE_CFG_WIRELESS_SMSPARAM: u32 = 878; +pub const MINOR_LOCAL_CFG_WIRELESS_SMSPARAM: u32 = 879; +pub const MINOR_REMOTE_CFG_WIRELESS_SMSSElFHELP: u32 = 880; +pub const MINOR_LOCAL_CFG_WIRELESS_SMSSElFHELP: u32 = 881; +pub const MINOR_REMOTE_CFG_WIRELESS_NETFLOWPARAM: u32 = 882; +pub const MINOR_LOCAL_CFG_WIRELESS_NETFLOWPARAM: u32 = 883; +pub const MINOR_REMOTE_OPEN_DOOR: u32 = 1024; +pub const MINOR_REMOTE_CLOSE_DOOR: u32 = 1025; +pub const MINOR_REMOTE_ALWAYS_OPEN: u32 = 1026; +pub const MINOR_REMOTE_ALWAYS_CLOSE: u32 = 1027; +pub const MINOR_REMOTE_CHECK_TIME: u32 = 1028; +pub const MINOR_NTP_CHECK_TIME: u32 = 1029; +pub const MINOR_REMOTE_CLEAR_CARD: u32 = 1030; +pub const MINOR_REMOTE_RESTORE_CFG: u32 = 1031; +pub const MINOR_ALARMIN_ARM: u32 = 1032; +pub const MINOR_ALARMIN_DISARM: u32 = 1033; +pub const MINOR_LOCAL_RESTORE_CFG: u32 = 1034; +pub const MINOR_REMOTE_CAPTURE_PIC: u32 = 1035; +pub const MINOR_MOD_NET_REPORT_CFG: u32 = 1036; +pub const MINOR_MOD_GPRS_REPORT_PARAM: u32 = 1037; +pub const MINOR_MOD_REPORT_GROUP_PARAM: u32 = 1038; +pub const MINOR_UNLOCK_PASSWORD_OPEN_DOOR: u32 = 1039; +pub const MINOR_AUTO_RENUMBER: u32 = 1040; +pub const MINOR_AUTO_COMPLEMENT_NUMBER: u32 = 1041; +pub const MINOR_NORMAL_CFGFILE_INPUT: u32 = 1042; +pub const MINOR_NORMAL_CFGFILE_OUTTPUT: u32 = 1043; +pub const MINOR_CARD_RIGHT_INPUT: u32 = 1044; +pub const MINOR_CARD_RIGHT_OUTTPUT: u32 = 1045; +pub const MINOR_LOCAL_USB_UPGRADE: u32 = 1046; +pub const MINOR_REMOTE_VISITOR_CALL_LADDER: u32 = 1047; +pub const MINOR_REMOTE_HOUSEHOLD_CALL_LADDER: u32 = 1048; +pub const MINOR_REMOTE_ACTUAL_GUARD: u32 = 1049; +pub const MINOR_REMOTE_ACTUAL_UNGUARD: u32 = 1050; +pub const MINOR_REMOTE_CONTROL_NOT_CODE_OPER_FAILED: u32 = 1051; +pub const MINOR_REMOTE_CONTROL_CLOSE_DOOR: u32 = 1052; +pub const MINOR_REMOTE_CONTROL_OPEN_DOOR: u32 = 1053; +pub const MINOR_REMOTE_CONTROL_ALWAYS_OPEN_DOOR: u32 = 1054; +pub const MINOR_M1_CARD_ENCRYPT_VERIFY_OPEN: u32 = 1055; +pub const MINOR_M1_CARD_ENCRYPT_VERIFY_CLOSE: u32 = 1056; +pub const MINOR_NFC_FUNCTION_OPEN: u32 = 1057; +pub const MINOR_NFC_FUNCTION_CLOSE: u32 = 1058; +pub const MINOR_OFFLINE_DATA_OUTPUT: u32 = 1059; +pub const MINOR_CREATE_SSH_LINK: u32 = 1069; +pub const MINOR_CLOSE_SSH_LINK: u32 = 1070; +pub const MINOR_LOCAL_IMPORT_USERINFO: u32 = 1071; +pub const MINOR_LOCAL_EXPORT_USERINFO: u32 = 1072; +pub const MINOR_CREATE_CERTIFICATE: u32 = 1073; +pub const MINOR_UPLOAD_CERTIFICATE: u32 = 1074; +pub const MINOR_DELETE_CERTIFICATE: u32 = 1075; +pub const MINOR_COMSUME_ARM: u32 = 1076; +pub const MINOR_COMSUME_DISARM: u32 = 1077; +pub const MINOR_ORCODE_KEY_MODIFY: u32 = 1078; +pub const MINOR_OPERATION_CUSTOM1: u32 = 2304; +pub const MINOR_OPERATION_CUSTOM2: u32 = 2305; +pub const MINOR_OPERATION_CUSTOM3: u32 = 2306; +pub const MINOR_OPERATION_CUSTOM4: u32 = 2307; +pub const MINOR_OPERATION_CUSTOM5: u32 = 2308; +pub const MINOR_OPERATION_CUSTOM6: u32 = 2309; +pub const MINOR_OPERATION_CUSTOM7: u32 = 2310; +pub const MINOR_OPERATION_CUSTOM8: u32 = 2311; +pub const MINOR_OPERATION_CUSTOM9: u32 = 2312; +pub const MINOR_OPERATION_CUSTOM10: u32 = 2313; +pub const MINOR_OPERATION_CUSTOM11: u32 = 2314; +pub const MINOR_OPERATION_CUSTOM12: u32 = 2315; +pub const MINOR_OPERATION_CUSTOM13: u32 = 2316; +pub const MINOR_OPERATION_CUSTOM14: u32 = 2317; +pub const MINOR_OPERATION_CUSTOM15: u32 = 2318; +pub const MINOR_OPERATION_CUSTOM16: u32 = 2319; +pub const MINOR_OPERATION_CUSTOM17: u32 = 2320; +pub const MINOR_OPERATION_CUSTOM18: u32 = 2321; +pub const MINOR_OPERATION_CUSTOM19: u32 = 2322; +pub const MINOR_OPERATION_CUSTOM20: u32 = 2323; +pub const MINOR_OPERATION_CUSTOM21: u32 = 2324; +pub const MINOR_OPERATION_CUSTOM22: u32 = 2325; +pub const MINOR_OPERATION_CUSTOM23: u32 = 2326; +pub const MINOR_OPERATION_CUSTOM24: u32 = 2327; +pub const MINOR_OPERATION_CUSTOM25: u32 = 2328; +pub const MINOR_OPERATION_CUSTOM26: u32 = 2329; +pub const MINOR_OPERATION_CUSTOM27: u32 = 2330; +pub const MINOR_OPERATION_CUSTOM28: u32 = 2331; +pub const MINOR_OPERATION_CUSTOM29: u32 = 2332; +pub const MINOR_OPERATION_CUSTOM30: u32 = 2333; +pub const MINOR_OPERATION_CUSTOM31: u32 = 2334; +pub const MINOR_OPERATION_CUSTOM32: u32 = 2335; +pub const MINOR_OPERATION_CUSTOM33: u32 = 2336; +pub const MINOR_OPERATION_CUSTOM34: u32 = 2337; +pub const MINOR_OPERATION_CUSTOM35: u32 = 2338; +pub const MINOR_OPERATION_CUSTOM36: u32 = 2339; +pub const MINOR_OPERATION_CUSTOM37: u32 = 2340; +pub const MINOR_OPERATION_CUSTOM38: u32 = 2341; +pub const MINOR_OPERATION_CUSTOM39: u32 = 2342; +pub const MINOR_OPERATION_CUSTOM40: u32 = 2343; +pub const MINOR_OPERATION_CUSTOM41: u32 = 2344; +pub const MINOR_OPERATION_CUSTOM42: u32 = 2345; +pub const MINOR_OPERATION_CUSTOM43: u32 = 2346; +pub const MINOR_OPERATION_CUSTOM44: u32 = 2347; +pub const MINOR_OPERATION_CUSTOM45: u32 = 2348; +pub const MINOR_OPERATION_CUSTOM46: u32 = 2349; +pub const MINOR_OPERATION_CUSTOM47: u32 = 2350; +pub const MINOR_OPERATION_CUSTOM48: u32 = 2351; +pub const MINOR_OPERATION_CUSTOM49: u32 = 2352; +pub const MINOR_OPERATION_CUSTOM50: u32 = 2353; +pub const MINOR_OPERATION_CUSTOM51: u32 = 2354; +pub const MINOR_OPERATION_CUSTOM52: u32 = 2355; +pub const MINOR_OPERATION_CUSTOM53: u32 = 2356; +pub const MINOR_OPERATION_CUSTOM54: u32 = 2357; +pub const MINOR_OPERATION_CUSTOM55: u32 = 2358; +pub const MINOR_OPERATION_CUSTOM56: u32 = 2359; +pub const MINOR_OPERATION_CUSTOM57: u32 = 2360; +pub const MINOR_OPERATION_CUSTOM58: u32 = 2361; +pub const MINOR_OPERATION_CUSTOM59: u32 = 2362; +pub const MINOR_OPERATION_CUSTOM60: u32 = 2363; +pub const MINOR_OPERATION_CUSTOM61: u32 = 2364; +pub const MINOR_OPERATION_CUSTOM62: u32 = 2365; +pub const MINOR_OPERATION_CUSTOM63: u32 = 2366; +pub const MINOR_OPERATION_CUSTOM64: u32 = 2367; +pub const MINOR_OPERATION_REALTIMEBROADCAST: u32 = 2368; +pub const MINOR_OPERATION_PLANBROADCAST: u32 = 2369; +pub const MINOR_SET_WIFI_PARAMETER: u32 = 2384; +pub const MINOR_EZVIZ_LOGIN: u32 = 2385; +pub const MINOR_EZVIZ_LOGINOUT: u32 = 2386; +pub const MINOR_LOCK_ADD: u32 = 2387; +pub const MINOR_LOCK_DELETE: u32 = 2388; +pub const MINOR_LOCK_GET_STATUS: u32 = 2389; +pub const MINOR_LOCK_SET_TMP_PASSWORD: u32 = 2390; +pub const MINOR_LOCK_SET_SILENT_MODE: u32 = 2391; +pub const MINOR_LOCK_SET_LATE_WARNING: u32 = 2392; +pub const MINOR_LOCK_IPC_ADD: u32 = 2393; +pub const MINOR_LOCK_IPC_REMOVE: u32 = 2394; +pub const MINOR_LOCK_DETECTOR_ADD: u32 = 2395; +pub const MINOR_LOCK_DETECTOR_REMOVE: u32 = 2396; +pub const MINOR_LOCK_MESSAGE_REMINDING_OPEN: u32 = 2397; +pub const MINOR_LOCK_MESSAGE_REMINDING_CLOSE: u32 = 2398; +pub const MINOR_LOCK_SET_HEART_BEAT: u32 = 2399; +pub const MINOR_LOCK_REBOOT: u32 = 2400; +pub const MINOR_LOCK_CLEAR_USER: u32 = 2401; +pub const MINOR_LOCK_FORMAT: u32 = 2402; +pub const MINOR_LOCK_FINGER_CHANGE: u32 = 2403; +pub const MINOR_LOCK_PASSWORD_CHANGE: u32 = 2404; +pub const MINOR_LOCK_CARD_CHANGE: u32 = 2405; +pub const MINOR_LOCK_USER_CHANGE: u32 = 2406; +pub const MINOR_LOCK_SYSTEM_CHANGE: u32 = 2407; +pub const MINOR_LOCK_CHANGE_ADD_UESR: u32 = 2408; +pub const MINOR_LOCK_CHANGE_DEL_UESR: u32 = 2409; +pub const MINOR_LOCK_CHANGE_CUSTOM_USER_NAME: u32 = 2410; +pub const MINOR_LOCK_CHANGE_REMOTE_DEVICE: u32 = 2411; +pub const MINOR_LOCK_CHANGE_ADD_FP: u32 = 2412; +pub const MINOR_LOCK_CHANGE_DEL_FP: u32 = 2413; +pub const MINOR_LOCK_CHANGE_ADD_PASSWORD: u32 = 2414; +pub const MINOR_LOCK_CHANGE_DEL_PASSWORD: u32 = 2415; +pub const MINOR_LOCK_CHANGE_ADD_CARD: u32 = 2416; +pub const MINOR_LOCK_CHANGE_DEL_CARD: u32 = 2417; +pub const MINOR_LOCK_NETWORK_SWITCH: u32 = 2418; +pub const MINOR_LOCK_CLEAR_NETWORK_DATA: u32 = 2419; +pub const MINOR_LOCK_CLEAR_HOST_USER: u32 = 2420; +pub const MINOR_LOCK_CLEAR_GUEST_USER: u32 = 2421; +pub const MINOR_LOCK_CLEAN_ALL_REMOTE_DEVICE: u32 = 2422; +pub const MINOR_LOCK_CLEAN_NORMAL_USER_FINGRT: u32 = 2423; +pub const MINOR_LOCK_CLEAN_ALL_CARD: u32 = 2424; +pub const MINOR_LOCK_CLEAN_ALL_PASSWORD: u32 = 2425; +pub const MINOR_START_WIRELESSSERVER: u32 = 2426; +pub const MINOR_STOP_WIRELESSSERVER: u32 = 2427; +pub const MINOR_EMERGENCY_CARD_AUTH_NORMAL_CARD: u32 = 2428; +pub const MINOR_CHANGE_ALWAYS_OPEN_RIGHT: u32 = 2429; +pub const MINOR_LOCK_DOOR_BELL_EVENT: u32 = 2430; +pub const MINOR_BACKUP_DATA: u32 = 3137; +pub const MINOR_TRANSFER_DATA: u32 = 3138; +pub const MINOR_RESTORE_DATA: u32 = 3139; +pub const MINOR_SET_INPUT_PLAN: u32 = 3140; +pub const MINOR_TERMINAL_ADB: u32 = 3141; +pub const MINOR_TERMINAL_VOLUME: u32 = 3142; +pub const MINOR_TERMINAL_LOGO: u32 = 3143; +pub const MINOR_TERMINAL_DEFAULT_SCHEDULE: u32 = 3144; +pub const MINOR_TERMINAL_PASSWORD: u32 = 3145; +pub const MINOR_TERMINAL_IP: u32 = 3146; +pub const MINOR_TERMINAL_RELATE_IPC: u32 = 3147; +pub const MINOR_TERMINAL_SERVER: u32 = 3148; +pub const MINOR_TERMINAL_SADP: u32 = 3149; +pub const MINOR_TERMINAL_TIMEZONE: u32 = 3150; +pub const MINOR_TERMINAL_TEMP_PROTECT: u32 = 3151; +pub const MINOR_ADD_ORGANIZATION: u32 = 3152; +pub const MINOR_DELETE_ORGANIZATION: u32 = 3153; +pub const MINOR_MODIFY_ORGANIZATION: u32 = 3154; +pub const MINOR_WEATHER_FACTORY: u32 = 3155; +pub const MINOR_SADP_ENABLE: u32 = 3156; +pub const MINOR_SSH_ENABLE: u32 = 3157; +pub const MINOR_MODIFY_MATERIAL: u32 = 3158; +pub const MINOR_INSERT_CHARACTER: u32 = 3159; +pub const MINOR_TERMINAL_BACKLIGHT: u32 = 3160; +pub const MINOR_DOWNLOAD_MATERIAL_THUMBNAIL: u32 = 3161; +pub const MINOR_UPLOAD_PROGRAM_THUMBNAIL: u32 = 3162; +pub const MINOR_TDOWNLOAD_PROGRAM_THUMBNAIL: u32 = 3163; +pub const MINOR_BATCH_DELETE_SCHEDULE_PLAN: u32 = 3164; +pub const MINOR_REPUBLISH: u32 = 3165; +pub const MINOR_CLEAR_TERMINAL_PLAY_INFO: u32 = 3166; +pub const MINOR_GET_TERMINAL_RESOLUTION: u32 = 3167; +pub const MINOR_SET_TERMINAL_RESOLUTION: u32 = 3168; +pub const MINOR_GET_BATCH_TERMINAL_UPGRATE_PROGRESS: u32 = 3169; +pub const MINOR_GET_BATCH_PROGRESS: u32 = 3170; +pub const MINOR_GET_TEMPLATE: u32 = 3172; +pub const MINOR_INIT_TEMPLATE: u32 = 3173; +pub const MINOR_GET_TERMINAL_NTP_SERVERS: u32 = 3174; +pub const MINOR_SET_TERMINAL_NTP_SERVERS: u32 = 3175; +pub const MINOR_GET_RELEASE_DETAILS: u32 = 3176; +pub const MINOR_UPLOAD_TEMPLATE_THUMBNAIL: u32 = 3177; +pub const MINOR_DOWNLOAD_TEMPLATE_THUMBNAIL: u32 = 3178; +pub const MINOR_ADD_TEMPLATE: u32 = 3179; +pub const MINOR_DELETE_TEMPLATE: u32 = 3180; +pub const MINOR_MODIFY_TEMPLATE: u32 = 3181; +pub const MINOR_ADD_SCHEDULE_PLAN: u32 = 3182; +pub const MINOR_MODIFY_SCHEDULE_PLAN: u32 = 3183; +pub const MINOR_CANCEL_SCHEDULE_RELEASE: u32 = 3184; +pub const MINOR_GET_SCHEDULE: u32 = 3185; +pub const MINOR_ADD_INSERT: u32 = 3186; +pub const MINOR_CANCEL_INSERT: u32 = 3187; +pub const MINOR_SWITCH_LANGUAGE: u32 = 3188; +pub const MINOR_SET_ADMIN_INITIAL_PASSWORD: u32 = 3189; +pub const MINOR_MODIFY_PORT: u32 = 3190; +pub const MINOR_MODIFY_STORAGE_PATH: u32 = 3191; +pub const MINOR_EXIT_PROGRAM: u32 = 3192; +pub const MINOR_MODULE_STARTUP_SUCCESS: u32 = 3193; +pub const MINOR_APPROVE_SCHEDULE: u32 = 3200; +pub const MINOR_GENERAL_DATA_SEND: u32 = 3201; +pub const MINOR_SET_SIGN_INTERFACE: u32 = 3202; +pub const MINOR_GET_SIGN_INTERFACE: u32 = 3203; +pub const MINOR_SET_SHOW_MODE: u32 = 3204; +pub const MINOR_GET_SHOW_MODE: u32 = 3205; +pub const MINOR_SET_SCREEN_DIRECTION: u32 = 3206; +pub const MINOR_GET_SCREEN_DIRECTION: u32 = 3207; +pub const MINOR_SET_LOCK_SCREEN: u32 = 3208; +pub const MINOR_GET_LOCK_SCREEN: u32 = 3209; +pub const MINOR_SET_FACE_DATA_LIB: u32 = 3210; +pub const MINOR_DELETE_FACE_DATA_LIB: u32 = 3211; +pub const MINOR_SET_SPEC_FACE_DATA_LIB: u32 = 3212; +pub const MINOR_DELETE_SPEC_FACE_DATA_LIB: u32 = 3213; +pub const MINOR_ADD_FACE_DATA: u32 = 3214; +pub const MINOR_SEARCH_FACE_DATA: u32 = 3215; +pub const MINOR_MODIFY_FACE_DATA: u32 = 3216; +pub const MINOR_DELETE_FACE_DATA: u32 = 3217; +pub const MINOR_DELETE_USERINFO_DETAIL: u32 = 3218; +pub const MINOR_ADD_USERINFO: u32 = 3219; +pub const MINOR_MODIFY_USERINFO: u32 = 3220; +pub const MINOR_DELETE_USERINFO: u32 = 3221; +pub const MINOR_ADD_CARD_INFO: u32 = 3222; +pub const MINOR_MODIFY_CARD_INFO: u32 = 3223; +pub const MINOR_DELETE_CARD_INFO: u32 = 3224; +pub const MINOR_SET_USER_RIGHT_WEEK: u32 = 3225; +pub const MINOR_SET_USER_RIGHT_HOLIDAY: u32 = 3226; +pub const MINOR_SET_USER_RIGHT_HOLIDAYGROUP: u32 = 3227; +pub const MINOR_SET_USER_RIGHT_TEMPLATE: u32 = 3228; +pub const MINOR_SET_TRIGGERMODE_CFG: u32 = 4097; +pub const MINOR_GET_TRIGGERMODE_CFG: u32 = 4098; +pub const MINOR_SET_IOOUT_CFG: u32 = 4099; +pub const MINOR_GET_IOOUT_CFG: u32 = 4100; +pub const MINOR_GET_TRIGGERMODE_DEFAULT: u32 = 4101; +pub const MINOR_GET_ITCSTATUS: u32 = 4102; +pub const MINOR_SET_STATUS_DETECT_CFG: u32 = 4103; +pub const MINOR_GET_STATUS_DETECT_CFG: u32 = 4104; +pub const MINOR_SET_VIDEO_TRIGGERMODE_CFG: u32 = 4105; +pub const MINOR_GET_VIDEO_TRIGGERMODE_CFG: u32 = 4106; +pub const MINOR_ALARMHOST_GUARD: u32 = 4112; +pub const MINOR_ALARMHOST_UNGUARD: u32 = 4113; +pub const MINOR_ALARMHOST_BYPASS: u32 = 4114; +pub const MINOR_ALARMHOST_DURESS_ACCESS: u32 = 4115; +pub const MINOR_ALARMHOST_RS485_PARAM: u32 = 4120; +pub const MINOR_ALARMHOST_ALARM_OUTPUT: u32 = 4121; +pub const MINOR_ALARMHOST_ACCESS_OPEN: u32 = 4122; +pub const MINOR_ALARMHOST_ACCESS_CLOSE: u32 = 4123; +pub const MINOR_ALARMHOST_SIREN_OPEN: u32 = 4124; +pub const MINOR_ALARMHOST_SIREN_CLOSE: u32 = 4125; +pub const MINOR_ALARMHOST_MOD_ZONE_CONFIG: u32 = 4126; +pub const MINOR_ALARMHOST_MOD_ALARMOUT_CONIFG: u32 = 4127; +pub const MINOR_ALARMHOST_MOD_ANALOG_CONFIG: u32 = 4128; +pub const MINOR_ALARMHOST_RS485_CONFIG: u32 = 4129; +pub const MINOR_ALARMHOST_PHONE_CONFIG: u32 = 4130; +pub const MINOR_ALARMHOST_ADD_ADMIN: u32 = 4131; +pub const MINOR_ALARMHOST_MOD_ADMIN_PARAM: u32 = 4132; +pub const MINOR_ALARMHOST_DEL_ADMIN: u32 = 4133; +pub const MINOR_ALARMHOST_ADD_NETUSER: u32 = 4134; +pub const MINOR_ALARMHOST_MOD_NETUSER_PARAM: u32 = 4135; +pub const MINOR_ALARMHOST_DEL_NETUSER: u32 = 4136; +pub const MINOR_ALARMHOST_ADD_OPERATORUSER: u32 = 4137; +pub const MINOR_ALARMHOST_MOD_OPERATORUSER_PW: u32 = 4138; +pub const MINOR_ALARMHOST_DEL_OPERATORUSER: u32 = 4139; +pub const MINOR_ALARMHOST_ADD_KEYPADUSER: u32 = 4140; +pub const MINOR_ALARMHOST_DEL_KEYPADUSER: u32 = 4141; +pub const MINOR_ALARMHOST_MOD_HOST_CONFIG: u32 = 4146; +pub const MINOR_ALARMHOST_RESTORE_BYPASS: u32 = 4147; +pub const MINOR_ALARMHOST_ALARMOUT_OPEN: u32 = 4148; +pub const MINOR_ALARMHOST_ALARMOUT_CLOSE: u32 = 4149; +pub const MINOR_ALARMHOST_MOD_SUBSYSTEM_PARAM: u32 = 4150; +pub const MINOR_ALARMHOST_GROUP_BYPASS: u32 = 4151; +pub const MINOR_ALARMHOST_RESTORE_GROUP_BYPASS: u32 = 4152; +pub const MINOR_ALARMHOST_MOD_GRPS_PARAM: u32 = 4153; +pub const MINOR_ALARMHOST_MOD_REPORT_MOD: u32 = 4155; +pub const MINOR_ALARMHOST_MOD_GATEWAY_PARAM: u32 = 4156; +pub const MINOR_STAY_ARM: u32 = 4172; +pub const MINOR_QUICK_ARM: u32 = 4173; +pub const MINOR_AUTOMATIC_ARM: u32 = 4174; +pub const MINOR_AUTOMATIC_DISARM: u32 = 4175; +pub const MINOR_KEYSWITCH_ARM: u32 = 4176; +pub const MINOR_KEYSWITCH_DISARM: u32 = 4177; +pub const MINOR_CLEAR_ALARM: u32 = 4178; +pub const MINOR_MOD_FAULT_CFG: u32 = 4179; +pub const MINOR_MOD_EVENT_TRIGGER_ALARMOUT_CFG: u32 = 4180; +pub const MINOR_SEARCH_EXTERNAL_MODULE: u32 = 4181; +pub const MINOR_REGISTER_EXTERNAL_MODULE: u32 = 4182; +pub const MINOR_CLOSE_KEYBOARD_ALARM: u32 = 4183; +pub const MINOR_MOD_3G_PARAM: u32 = 4184; +pub const MINOR_MOD_PRINT_PARAM: u32 = 4185; +pub const MINOR_ALARMHOST_SD_CARD_FORMAT: u32 = 4192; +pub const MINOR_ALARMHOST_SUBSYSTEM_UPGRADE: u32 = 4193; +pub const MINOR_PLAN_ARM_CFG: u32 = 4194; +pub const MINOR_PHONE_ARM: u32 = 4195; +pub const MINOR_PHONE_STAY_ARM: u32 = 4196; +pub const MINOR_PHONE_QUICK_ARM: u32 = 4197; +pub const MINOR_PHONE_DISARM: u32 = 4198; +pub const MINOR_PHONE_CLEAR_ALARM: u32 = 4199; +pub const MINOR_ALLOWLIST_CFG: u32 = 4200; +pub const MINOR_TIME_TRIGGER_CFG: u32 = 4201; +pub const MINOR_CAPTRUE_CFG: u32 = 4202; +pub const MINOR_TAMPER_CFG: u32 = 4203; +pub const MINOR_REMOTE_KEYPAD_UPGRADE: u32 = 4204; +pub const MINOR_ONETOUCH_AWAY_ARMING: u32 = 4205; +pub const MINOR_ONETOUCH_STAY_ARMING: u32 = 4206; +pub const MINOR_SINGLE_PARTITION_ARMING_OR_DISARMING: u32 = 4207; +pub const MINOR_CARD_CONFIGURATION: u32 = 4208; +pub const MINOR_CARD_ARMING_OR_DISARMING: u32 = 4209; +pub const MINOR_EXPENDING_NETCENTER_CONFIGURATION: u32 = 4210; +pub const MINOR_NETCARD_CONFIGURATION: u32 = 4211; +pub const MINOR_DDNS_CONFIGURATION: u32 = 4212; +pub const MINOR_RS485BUS_CONFIGURATION: u32 = 4213; +pub const MINOR_RS485BUS_RE_REGISTRATION: u32 = 4214; +pub const MINOR_REMOTE_OPEN_ELECTRIC_LOCK: u32 = 4215; +pub const MINOR_REMOTE_CLOSE_ELECTRIC_LOCK: u32 = 4216; +pub const MINOR_LOCAL_OPEN_ELECTRIC_LOCK: u32 = 4217; +pub const MINOR_LOCAL_CLOSE_ELECTRIC_LOCK: u32 = 4218; +pub const MINOR_OPEN_ALARM_LAMP: u32 = 4219; +pub const MINOR_CLOSE_ALARM_LAMP: u32 = 4220; +pub const MINOR_TEMPORARY_PASSWORD: u32 = 4221; +pub const MINOR_HIDDNS_CONFIG: u32 = 4226; +pub const MINOR_REMOTE_KEYBOARD_UPDATA: u32 = 4227; +pub const MINOR_ZONE_ADD_DETECTOR: u32 = 4228; +pub const MINOR_ZONE_DELETE_DETECTOR: u32 = 4229; +pub const MINOR_QUERY_DETECTOR_SIGNAL: u32 = 4230; +pub const MINOR_QUERY_DETECTOR_BATTERY: u32 = 4231; +pub const MINOR_SET_DETECTOR_GUARD: u32 = 4232; +pub const MINOR_SET_DETECTOR_UNGUARD: u32 = 4233; +pub const MINOR_WIRELESS_CONFIGURATION: u32 = 4234; +pub const MINOR_OPEN_VOICE: u32 = 4235; +pub const MINOR_CLOSE_VOICE: u32 = 4236; +pub const MINOR_ENABLE_FUNCTION_KEY: u32 = 4237; +pub const MINOR_DISABLE_FUNCTION_KEY: u32 = 4238; +pub const MINOR_READ_CARD: u32 = 4239; +pub const MINOR_START_BROADCAST: u32 = 4240; +pub const MINOR_STOP_BROADCAST: u32 = 4241; +pub const MINOR_REMOTE_ZONE_MODULE_UPGRADE: u32 = 4242; +pub const MINOR_NETWORK_MODULE_EXTEND: u32 = 4243; +pub const MINOR_ADD_CONTROLLER: u32 = 4244; +pub const MINOR_DELETE_CONTORLLER: u32 = 4245; +pub const MINOR_REMOTE_NETWORKMODULE_UPGRADE: u32 = 4246; +pub const MINOR_WIRELESS_OUTPUT_ADD: u32 = 4247; +pub const MINOR_WIRELESS_OUTPUT_DEL: u32 = 4248; +pub const MINOR_WIRELESS_REPEATER_ADD: u32 = 4249; +pub const MINOR_WIRELESS_REPEATER_DEL: u32 = 4250; +pub const MINOR_PHONELIST_CFG: u32 = 4251; +pub const MINOR_RF_SIGNAL_CHECK: u32 = 4252; +pub const MINOR_USB_UPGRADE: u32 = 4253; +pub const MINOR_DOOR_TIME_REMINDER_CFG: u32 = 4255; +pub const MINOR_WIRELESS_SIREN_ADD: u32 = 4352; +pub const MINOR_WIRELESS_SIREN_DEL: u32 = 4353; +pub const MINOR_OUT_SCALE_OPEN: u32 = 4354; +pub const MINOR_OUT_SCALE_CLOSE: u32 = 4355; +pub const MINOR_ALARMHOST_4G_MODULS_START: u32 = 4360; +pub const MINOR_ALARMHOST_4G_MODULS_STOP: u32 = 4361; +pub const MINOR_EZVIZ_CLOUD_START: u32 = 4368; +pub const MINOR_EZVIZ_CLOUD_STOP: u32 = 4369; +pub const MINOR_SIPUA_GRID_START: u32 = 4370; +pub const MINOR_SIPUA_GRID_STOP: u32 = 4371; +pub const MINOR_MODBUS_FILE_DOWNLOAD: u32 = 4372; +pub const MINOR_MODBUS_FILE_UPLOAD: u32 = 4373; +pub const MINOR_RS485_DLL_FILE_DOWNLOAD: u32 = 4374; +pub const MINOR_RS485_DLL_FLIE_UPLOAD: u32 = 4375; +pub const MINOR_TX1_REBOOT: u32 = 4376; +pub const MINOR_LORA_PARAM: u32 = 4377; +pub const MINOR_GB28181_PLATE_CFG_PARAM: u32 = 4378; +pub const MINOR_GB28181_SERVER_START: u32 = 4379; +pub const MINOR_GB28181_SERVER_STOP: u32 = 4380; +pub const MINOR_WEB_AUTHENTICATION: u32 = 4381; +pub const MINOR_SADP_ENABLED: u32 = 4382; +pub const MINOR_HTTPS_ENABLED: u32 = 4383; +pub const MINOR_EZVIZ_PARAM_CFG: u32 = 4384; +pub const MINOR_SET_MOTION_DETECTION_CFG: u32 = 4385; +pub const MINOR_GET_MOTION_DETECTION_CFG: u32 = 4386; +pub const MINOR_SET_SHELTER_ALARM_CFG: u32 = 4387; +pub const MINOR_GET_SHELTER_ALARM_CFG: u32 = 4388; +pub const MINOR_SET_VIDEO_LOSS_CFG: u32 = 4389; +pub const MINOR_GET_VIDEO_LOSS_CFG: u32 = 4390; +pub const MINOR_SET_ABNORMAL_CFG: u32 = 4391; +pub const MINOR_GET_ABNORMAL_CFG: u32 = 4392; +pub const MINOR_SET_ALARM_LINKAGE_CFG: u32 = 4393; +pub const MINOR_GET_ALARM_LINKAGE_CFG: u32 = 4394; +pub const MINOR_SET_NETWORK_CFG: u32 = 4395; +pub const MINOR_GET_NETWORK_CFG: u32 = 4396; +pub const MINOR_SET_VIDEO_MASK_CFG: u32 = 4397; +pub const MINOR_GET_VIDEO_MASK_CFG: u32 = 4398; +pub const MINOR_BASIC_OPERATION_CFG: u32 = 4399; +pub const MINOR_DISPLAY_EFFECT_ADJUST_CFG: u32 = 4400; +pub const MINOR_DISPLAY_PROPERTY_CFG: u32 = 4401; +pub const MINOR_SIGNAL_CABLE_CFG: u32 = 4402; +pub const MINOR_BASIC_CFG: u32 = 4403; +pub const MINOR_IMAGE_ADJUST_CFG: u32 = 4404; +pub const MINOR_IMAGE_ENHANCE_CFG: u32 = 4405; +pub const MINOR_NOSIGN_SCREEN_SAVER_CFG: u32 = 4406; +pub const MINOR_ADVANCED_OPERATION_CFG: u32 = 4407; +pub const MINOR_RECEIVE_CARD_CFG: u32 = 4408; +pub const MINOR_INPUT_SUPPORT_CFG: u32 = 4409; +pub const MINOR_SYSTEM_MAINTAIN_CFG: u32 = 4410; +pub const MINOR_SYSTEM_TEST_CFG: u32 = 4411; +pub const MINOR_JOINT_CFG: u32 = 4412; +pub const MINOR_SHOW_MODE_CFG: u32 = 4413; +pub const MINOR_ADVANCED_IMAGE_CFG: u32 = 4414; +pub const MINOR_SHELF_SIZE_CALIBRATION: u32 = 4416; +pub const MINOR_CARGO_SENSOR_CALIBRATION: u32 = 4417; +pub const MINOR_CARGO_PRODUCT_BIND_CFG: u32 = 4418; +pub const MINOR_LOCAL_ADD_CAR_INFO: u32 = 8193; +pub const MINOR_LOCAL_MOD_CAR_INFO: u32 = 8194; +pub const MINOR_LOCAL_DEL_CAR_INFO: u32 = 8195; +pub const MINOR_LOCAL_FIND_CAR_INFO: u32 = 8196; +pub const MINOR_LOCAL_ADD_MONITOR_INFO: u32 = 8197; +pub const MINOR_LOCAL_MOD_MONITOR_INFO: u32 = 8198; +pub const MINOR_LOCAL_DEL_MONITOR_INFO: u32 = 8199; +pub const MINOR_LOCAL_FIND_MONITOR_INFO: u32 = 8200; +pub const MINOR_LOCAL_FIND_NORMAL_PASS_INFO: u32 = 8201; +pub const MINOR_LOCAL_FIND_ABNORMAL_PASS_INFO: u32 = 8202; +pub const MINOR_LOCAL_FIND_PEDESTRIAN_PASS_INFO: u32 = 8203; +pub const MINOR_LOCAL_PIC_PREVIEW: u32 = 8204; +pub const MINOR_LOCAL_SET_GATE_PARM_CFG: u32 = 8205; +pub const MINOR_LOCAL_GET_GATE_PARM_CFG: u32 = 8206; +pub const MINOR_LOCAL_SET_DATAUPLOAD_PARM_CFG: u32 = 8207; +pub const MINOR_LOCAL_GET_DATAUPLOAD_PARM_CFG: u32 = 8208; +pub const MINOR_LOCAL_DEVICE_CONTROL: u32 = 8209; +pub const MINOR_LOCAL_ADD_EXTERNAL_DEVICE_INFO: u32 = 8210; +pub const MINOR_LOCAL_MOD_EXTERNAL_DEVICE_INFO: u32 = 8211; +pub const MINOR_LOCAL_DEL_EXTERNAL_DEVICE_INFO: u32 = 8212; +pub const MINOR_LOCAL_FIND_EXTERNAL_DEVICE_INFO: u32 = 8213; +pub const MINOR_LOCAL_ADD_CHARGE_RULE: u32 = 8214; +pub const MINOR_LOCAL_MOD_CHARGE_RULE: u32 = 8215; +pub const MINOR_LOCAL_DEL_CHARGE_RULE: u32 = 8216; +pub const MINOR_LOCAL_FIND_CHARGE_RULE: u32 = 8217; +pub const MINOR_LOCAL_COUNT_NORMAL_CURRENTINFO: u32 = 8224; +pub const MINOR_LOCAL_EXPORT_NORMAL_CURRENTINFO_REPORT: u32 = 8225; +pub const MINOR_LOCAL_COUNT_ABNORMAL_CURRENTINFO: u32 = 8226; +pub const MINOR_LOCAL_EXPORT_ABNORMAL_CURRENTINFO_REPORT: u32 = 8227; +pub const MINOR_LOCAL_COUNT_PEDESTRIAN_CURRENTINFO: u32 = 8228; +pub const MINOR_LOCAL_EXPORT_PEDESTRIAN_CURRENTINFO_REPORT: u32 = 8229; +pub const MINOR_LOCAL_FIND_CAR_CHARGEINFO: u32 = 8230; +pub const MINOR_LOCAL_COUNT_CAR_CHARGEINFO: u32 = 8231; +pub const MINOR_LOCAL_EXPORT_CAR_CHARGEINFO_REPORT: u32 = 8232; +pub const MINOR_LOCAL_FIND_SHIFTINFO: u32 = 8233; +pub const MINOR_LOCAL_FIND_CARDINFO: u32 = 8240; +pub const MINOR_LOCAL_ADD_RELIEF_RULE: u32 = 8241; +pub const MINOR_LOCAL_MOD_RELIEF_RULE: u32 = 8242; +pub const MINOR_LOCAL_DEL_RELIEF_RULE: u32 = 8243; +pub const MINOR_LOCAL_FIND_RELIEF_RULE: u32 = 8244; +pub const MINOR_LOCAL_GET_ENDETCFG: u32 = 8245; +pub const MINOR_LOCAL_SET_ENDETCFG: u32 = 8246; +pub const MINOR_LOCAL_SET_ENDEV_ISSUEDDATA: u32 = 8247; +pub const MINOR_LOCAL_DEL_ENDEV_ISSUEDDATA: u32 = 8248; +pub const MINOR_REMOTE_DEVICE_CONTROL: u32 = 8449; +pub const MINOR_REMOTE_SET_GATE_PARM_CFG: u32 = 8450; +pub const MINOR_REMOTE_GET_GATE_PARM_CFG: u32 = 8451; +pub const MINOR_REMOTE_SET_DATAUPLOAD_PARM_CFG: u32 = 8452; +pub const MINOR_REMOTE_GET_DATAUPLOAD_PARM_CFG: u32 = 8453; +pub const MINOR_REMOTE_GET_BASE_INFO: u32 = 8454; +pub const MINOR_REMOTE_GET_OVERLAP_CFG: u32 = 8455; +pub const MINOR_REMOTE_SET_OVERLAP_CFG: u32 = 8456; +pub const MINOR_REMOTE_GET_ROAD_INFO: u32 = 8457; +pub const MINOR_REMOTE_START_TRANSCHAN: u32 = 8458; +pub const MINOR_REMOTE_GET_ECTWORKSTATE: u32 = 8459; +pub const MINOR_REMOTE_GET_ECTCHANINFO: u32 = 8460; +pub const MINOR_REMOTE_ADD_EXTERNAL_DEVICE_INFO: u32 = 8461; +pub const MINOR_REMOTE_MOD_EXTERNAL_DEVICE_INFO: u32 = 8462; +pub const MINOR_REMOTE_GET_ENDETCFG: u32 = 8463; +pub const MINOR_REMOTE_SET_ENDETCFG: u32 = 8464; +pub const MINOR_REMOTE_ENDEV_ISSUEDDATA: u32 = 8465; +pub const MINOR_REMOTE_DEL_ENDEV_ISSUEDDATA: u32 = 8466; +pub const MINOR_REMOTE_ON_CTRL_LAMP: u32 = 8469; +pub const MINOR_REMOTE_OFF_CTRL_LAMP: u32 = 8470; +pub const MINOR_SET_VOICE_LEVEL_PARAM: u32 = 8471; +pub const MINOR_SET_VOICE_INTERCOM_PARAM: u32 = 8472; +pub const MINOR_SET_INTELLIGENT_PARAM: u32 = 8473; +pub const MINOR_LOCAL_SET_RAID_SPEED: u32 = 8474; +pub const MINOR_REMOTE_SET_RAID_SPEED: u32 = 8475; +pub const MINOR_REMOTE_CREATE_STORAGE_POOL: u32 = 8476; +pub const MINOR_REMOTE_DEL_STORAGE_POOL: u32 = 8477; +pub const MINOR_REMOTE_DEL_PIC: u32 = 8480; +pub const MINOR_REMOTE_DEL_RECORD: u32 = 8481; +pub const MINOR_REMOTE_CLOUD_ENABLE: u32 = 8483; +pub const MINOR_REMOTE_CLOUD_DISABLE: u32 = 8484; +pub const MINOR_REMOTE_CLOUD_MODIFY_PARAM: u32 = 8485; +pub const MINOR_REMOTE_CLOUD_MODIFY_VOLUME: u32 = 8486; +pub const MINOR_REMOTE_GET_GB28181_SERVICE_PARAM: u32 = 8487; +pub const MINOR_REMOTE_SET_GB28181_SERVICE_PARAM: u32 = 8488; +pub const MINOR_LOCAL_GET_GB28181_SERVICE_PARAM: u32 = 8489; +pub const MINOR_LOCAL_SET_GB28181_SERVICE_PARAM: u32 = 8490; +pub const MINOR_REMOTE_SET_SIP_SERVER: u32 = 8491; +pub const MINOR_LOCAL_SET_SIP_SERVER: u32 = 8492; +pub const MINOR_LOCAL_BLOCKALLOWFILE_OUTPUT: u32 = 8493; +pub const MINOR_LOCAL_BLOCKALLOWFILE_INPUT: u32 = 8494; +pub const MINOR_REMOTE_BLOCKALLOWCFGFILE_OUTPUT: u32 = 8495; +pub const MINOR_REMOTE_BLOCKALLOWCFGFILE_INPUT: u32 = 8496; +pub const MINOR_REMOTE_CREATE_MOD_VIEWLIB_SPACE: u32 = 8704; +pub const MINOR_REMOTE_DELETE_VIEWLIB_FILE: u32 = 8705; +pub const MINOR_REMOTE_DOWNLOAD_VIEWLIB_FILE: u32 = 8706; +pub const MINOR_REMOTE_UPLOAD_VIEWLIB_FILE: u32 = 8707; +pub const MINOR_LOCAL_CREATE_MOD_VIEWLIB_SPACE: u32 = 8708; +pub const MINOR_LOCAL_SET_DEVICE_ACTIVE: u32 = 12288; +pub const MINOR_REMOTE_SET_DEVICE_ACTIVE: u32 = 12289; +pub const MINOR_LOCAL_PARA_FACTORY_DEFAULT: u32 = 12290; +pub const MINOR_REMOTE_PARA_FACTORY_DEFAULT: u32 = 12291; +pub const MIMOR_REMOTE_DELETE_ALL_VERIFYORCAP_PICS: u32 = 12292; +pub const MIMOR_LOCAL_DELETE_ALL_VERIFYORCAP_PICS: u32 = 12293; +pub const MIMOR_REMOTE_DELETE_EVENTS_AT_SPECTIME: u32 = 12294; +pub const MIMOR_LOCAL_DELETE_EVENTS_AT_SPECTIME: u32 = 12295; +pub const MIMOR_REMOTE_OPEN_SUMMER_TIME: u32 = 12296; +pub const MIMOR_LOCAL_OPEN_SUMMER_TIME: u32 = 12297; +pub const MIMOR_REMOTE_CLOSE_SUMMER_TIME: u32 = 12304; +pub const MIMOR_LOCAL_CLOSE_SUMMER_TIME: u32 = 12305; +pub const MIMOR_REMOTE_EZVIZ_UNBIND: u32 = 12306; +pub const MIMOR_LOCAL_EZVIZ_UNBIND: u32 = 12307; +pub const MIMOR_ENTER_LOCALUI_BACKGROUND: u32 = 12308; +pub const MIMOR_REMOTE_DELETE_FACEBASEMAP: u32 = 12309; +pub const MIMOR_LOCAL_DELETE_FACEBASEMAP: u32 = 12310; +pub const MINOR_UPLAOD_STATIC_MATERIAL: u32 = 9217; +pub const MINOR_UPLOAD_DYNAMIC_MATERIAL: u32 = 9218; +pub const MINOR_DELETE_MATERIAL: u32 = 9219; +pub const MINOR_DOWNLOAD_STATIC_MATERIAL: u32 = 9220; +pub const MINOR_COVER_STATIC_MATERIAL: u32 = 9221; +pub const MINOR_APPROVE_MATERIAL: u32 = 9222; +pub const MINOR_UPLAOD_PROGRAM: u32 = 9223; +pub const MINOR_DOWNLOAD_PROGRAM: u32 = 9224; +pub const MINOR_DELETE_PROGRAM: u32 = 9225; +pub const MINOR_MODIFY_PROGRAM: u32 = 9226; +pub const MINOR_APPROVE_PRAGRAM: u32 = 9227; +pub const MINOR_UPLAOD_SCHEDULE: u32 = 9228; +pub const MINOR_DOWNLOAD_SCHEDULE: u32 = 9229; +pub const MINOR_DELETE_SCHEDULE: u32 = 9230; +pub const MINOR_MODIFY_SCHEDULE: u32 = 9231; +pub const MINOR_RELEASE_SCHEDULE: u32 = 9232; +pub const MINOR_ADD_TERMINAL: u32 = 9233; +pub const MINOR_DELETE_TERMINAL: u32 = 9234; +pub const MINOR_MODIFY_TERMIANL_PARAM: u32 = 9235; +pub const MINOR_MODIFY_TERMIANL_PLAY_PARAM: u32 = 9236; +pub const MINOR_ADD_TERMIANL_GROUP: u32 = 9237; +pub const MINOR_MODIFY_TERMINAL_GROUP_PARAM: u32 = 9238; +pub const MINOR_DELETE_TERMIANL_GROUP: u32 = 9239; +pub const MINOR_TERMINAL_PLAY_CONTROL: u32 = 9240; +pub const MINOR_TERMINAL_ON_OFF_LINE: u32 = 9241; +pub const MINOR_SET_SWITCH_PLAN: u32 = 9242; +pub const MINOR_SET_VOLUME_PLAN: u32 = 9243; +pub const MINOR_TERMINAL_SCREENSHOT: u32 = 9244; +pub const MINOR_SYSTEM_TIME_CFG: u32 = 9245; +pub const MINOR_ADD_USER_CFG: u32 = 9246; +pub const MINOR_DEL_USER_CFG: u32 = 9247; +pub const MINOR_REMOTE_MANAGE_HDD: u32 = 9248; +pub const MINOR_TERMINAL_UPDATE_START: u32 = 9249; +pub const MINOR_SVR_RESTORE_DEFAULT_PARAM: u32 = 9250; +pub const MINOR_SVR_REMOTE_RESTORE_FACTORY: u32 = 9251; +pub const MINOR_SVR_REMOTE_REBOOT: u32 = 9252; +pub const MINOR_SVR_MODIFY_NETWORK_PARAM: u32 = 9253; +pub const MINOR_SVR_SOFTWARE_UPGRADE: u32 = 9254; +pub const MINOR_REMOTE_CONFERENCE_CONFIG: u32 = 9473; +pub const MINOR_REMOTE_TERMINAL_CONFIG: u32 = 9474; +pub const MINOR_REMOTE_GROUP_CONFIG: u32 = 9475; +pub const MINOR_REMOTE_CONFERENCE_CTRL: u32 = 9476; +pub const MINOR_REMOTE_TERMINAL_CTRL: u32 = 9477; +pub const MINOR_ADD_VIDEOWALLSCENE: u32 = 9478; +pub const MINOR_DEL_VIDEOWALLSCENE: u32 = 9479; +pub const MINOR_SAVE_VIDEOWALLSCENE: u32 = 9480; +pub const MINOR_UPLOAD_SCENECFGFILE: u32 = 9481; +pub const MINOR_DOWNLOAD_SCENECFGFILE: u32 = 9482; +pub const MINOR_LOCAL_RESET_LOGIN_PASSWORD: u32 = 9728; +pub const MINOR_REMOTE_RESET_LOGIN_PASSWORD: u32 = 9729; +pub const MINOR_LOCAL_FACE_BASE_CREATE: u32 = 9730; +pub const MINOR_REMOTE_FACE_BASE_CREATE: u32 = 9731; +pub const MINOR_LOCAL_FACE_BASE_MODIFY: u32 = 9732; +pub const MINOR_REMOTE_FACE_BASE_MODIFY: u32 = 9733; +pub const MINOR_LOCAL_FACE_BASE_DELETE: u32 = 9734; +pub const MINOR_REMOTE_FACE_BASE_DELETE: u32 = 9735; +pub const MINOR_LOCAL_FACE_DATA_APPEND: u32 = 9736; +pub const MINOR_REMOTE_FACE_DATA_APPEND: u32 = 9737; +pub const MINOR_LOCAL_FACE_DATA_SEARCH: u32 = 9744; +pub const MINOR_REMOTE_FACE_DATA_SEARCH: u32 = 9745; +pub const MINOR_LOCAL_FACE_DATA_ANALYSIS: u32 = 9746; +pub const MINOR_REMOTE_FACE_DATA_ANALYSIS: u32 = 9747; +pub const MINOR_LOCAL_FACE_DATA_EDIT: u32 = 9748; +pub const MINOR_REMOTE_FACE_DATA_EDIT: u32 = 9749; +pub const MINOR_LOCAL_FACE_DATA_DELETE: u32 = 9750; +pub const MINOR_REMOTE_FACE_DATA_DELET: u32 = 9751; +pub const MINOR_LOCAL_VCA_ANALYSIS_CFG: u32 = 9752; +pub const MINOR_REMOTE_VCA_ANALYSIS_CFG: u32 = 9753; +pub const MINOR_LOCAL_FACE_BASE_IMPORT: u32 = 9754; +pub const MINOR_LOCAL_FACE_BASE_EXPORT: u32 = 9755; +pub const MINOR_REMOTE_CLUSTER_MODE_CONFIG: u32 = 9756; +pub const MINOR_LOCAL_CLUSTER_MODE_CONFIG: u32 = 9757; +pub const MINOR_REMOTE_CLUSTER_NETWORK_CONFIG: u32 = 9758; +pub const MINOR_LOCAL_CLUSTER_NETWORK_CONFIG: u32 = 9759; +pub const MINOR_REMOTE_CLUSTER_ADD_DEVICE: u32 = 9760; +pub const MINOR_LOCAL_CLUSTER_ADD_DEVICE: u32 = 9761; +pub const MINOR_REMOTE_CLUSTER_DEL_DEVICE: u32 = 9762; +pub const MINOR_LOCAL_CLUSTER_DEL_DEVICE: u32 = 9763; +pub const MINOR_REMOTE_HFPD_CFG: u32 = 9764; +pub const MINOR_REMOTE_FACE_CONTRAST_TASK: u32 = 9765; +pub const MINOR_REMOTE_LFPD_CFG: u32 = 9766; +pub const MINOR_REMOTE_IOTCFGFILE_INPUT: u32 = 9767; +pub const MINOR_REMOTE_IOTCFGFILE_OUTPUT: u32 = 9768; +pub const MINOR_LOCAL_IOT_ADD: u32 = 9769; +pub const MINOR_REMOTE_IOT_ADD: u32 = 9770; +pub const MINOR_LOCAL_IOT_DEL: u32 = 9771; +pub const MINOR_REMOTE_IOT_DEL: u32 = 9772; +pub const MINOR_LOCAL_IOT_SET: u32 = 9773; +pub const MINOR_REMOTE_IOT_SET: u32 = 9774; +pub const MINOR_LOCAL_IOTCFGFILE_INPUT: u32 = 9775; +pub const MINOR_LOCAL_IOTCFGFILE_OUTPUT: u32 = 9776; +pub const MINOR_LOCAL_VAD_CFG: u32 = 9777; +pub const MINOR_REMOTE_VAD_CFG: u32 = 9778; +pub const MINOR_LOCAL_ADDRESS_FILTER_CONFIG: u32 = 9779; +pub const MINOR_REMOTE_ADDRESS_FILTER_CONFIG: u32 = 9780; +pub const MINOR_LOCAL_POE_CFG: u32 = 9781; +pub const MINOR_REMOTE_POE_CFG: u32 = 9782; +pub const MINOR_LOCAL_RESET_CHANNEL_PASSWORD: u32 = 9783; +pub const MINOR_REMOTE_RESET_CHANNEL_PASSWORD: u32 = 9784; +pub const MINOR_LOCAL_SSD_UPGRADE_START: u32 = 9785; +pub const MINOR_LOCAL_SSD_UPGRADE_STOP: u32 = 9792; +pub const MINOR_REMOTE_SSD_UPGRADE_START: u32 = 9793; +pub const MINOR_REMOTE_SSD_UPGRADE_STOP: u32 = 9794; +pub const MINOR_LOCAL_SSD_FORMAT_START: u32 = 9795; +pub const MINOR_LOCAL_SSD_FORMAT_STOP: u32 = 9796; +pub const MINOR_REMOTE_SSD_FORMAT_START: u32 = 9797; +pub const MINOR_REMOTE_SSD_FORMAT_STOP: u32 = 9798; +pub const MINOR_LOCAL_AUTO_SWITCH_CONFIG: u32 = 9799; +pub const MINOR_REMOTE_AUTO_SWITCH_CONFIG: u32 = 9800; +pub const MINOR_LOCAL_SSD_INITIALIZATION_START: u32 = 9802; +pub const MINOR_LOCAL_SSD_INITIALIZATION_END: u32 = 9803; +pub const MINOR_REMOTE_SSD_INITIALIZATION_START: u32 = 9804; +pub const MINOR_REMOTE_SSD_INITIALIZATION_END: u32 = 9805; +pub const MINOR_REMOTE_AI_MODEL_ADD: u32 = 9808; +pub const MINOR_REMOTE_AI_MODEL_QUERY: u32 = 9809; +pub const MINOR_REMOTE_AI_MODEL_DELETE: u32 = 9810; +pub const MINOR_REMOTE_AI_MODEL_UPDATE: u32 = 9811; +pub const MINOR_REMOTE_AI_PICTURE_POLLING_TASK_ADD: u32 = 9812; +pub const MINOR_REMOTE_AI_PICTURE_POLLING_TASK_QUERY: u32 = 9813; +pub const MINOR_REMOTE_AI_PICTURE_POLLING_TASK_DELETE: u32 = 9814; +pub const MINOR_REMOTE_AI_PICTURE_POLLING_TASK_MODIFY: u32 = 9815; +pub const MINOR_REMOTE_AI_VIDEO_POLLING_TASK_ADD: u32 = 9816; +pub const MINOR_REMOTE_AI_VIDEO_POLLING_TASK_QUERY: u32 = 9817; +pub const MINOR_REMOTE_AI_VIDEO_POLLING_TASK_DELETE: u32 = 9818; +pub const MINOR_REMOTE_AI_VIDEO_POLLING_TASK_MODIFY: u32 = 9819; +pub const MINOR_REMOTE_AI_PICTURE_TASK_ADD: u32 = 9820; +pub const MINOR_REMOTE_AI_PICTURE_TASK_QUERY: u32 = 9821; +pub const MINOR_REMOTE_AI_PICTURE_TASK_DELETE: u32 = 9822; +pub const MINOR_REMOTE_AI_PICTURE_TASK_MODIFY: u32 = 9823; +pub const MINOR_REMOTE_AI_VIDEO_TASK_ADD: u32 = 9824; +pub const MINOR_REMOTE_AI_VIDEO_TASK_QUERY: u32 = 9825; +pub const MINOR_REMOTE_AI_VIDEO_TASK_DELETE: u32 = 9826; +pub const MINOR_REMOTE_AI_VIDEO_TASK_MODIFY: u32 = 9827; +pub const MINOR_REMOTE_AI_RULE_CONFIG: u32 = 9828; +pub const MINOR_REMOTE_LOG_STORAGE_CONFIG: u32 = 9829; +pub const MINOR_REMOTE_LOG_SERVER_CONFIG: u32 = 9830; +pub const MINOR_REMOTE_RESET_IPC_PASSWORD: u32 = 9840; +pub const MINOR_LOCAL_EZVIZ_OPERATION: u32 = 9841; +pub const MINOR_REMOTE_EZVIZ_OPERATION: u32 = 9842; +pub const MINOR_EZVIZ_BITSTREAM_PARAMATERS_CONFIG: u32 = 9843; +pub const MINOR_EZVIZ_ALARM_PARAMATERS_CONFIG: u32 = 9844; +pub const MINOR_EZVIZ_UPGRADE: u32 = 9845; +pub const MINOR_EZVIZ_REGISTER: u32 = 9846; +pub const MINOR_EZVIZ_LOCAL_PARAMATERS_CONFIG: u32 = 9847; +pub const MINOR_EZVIZ_REMOTE_PARAMATERS_CONFIG: u32 = 9848; +pub const MINOR_STOP_SOUND: u32 = 9984; +pub const MINOR_SELF_CHECK: u32 = 9985; +pub const MINOR_DUTY_CHECK: u32 = 9986; +pub const MINOR_SWITCH_SIMPLE_WORKMODE: u32 = 9987; +pub const MINOR_SWITCH_NORMAL_WORKMODE: u32 = 9988; +pub const MINOR_LOCAL_SSD_OPERATE_START: u32 = 9989; +pub const MINOR_LOCAL_SSD_OPERATE_STOP: u32 = 9990; +pub const MINOR_REMOTE_SSD_OPERATE_START: u32 = 9991; +pub const MINOR_REMOTE_SSD_OPERATE_STOP: u32 = 9992; +pub const MAJOR_INFORMATION: u32 = 4; +pub const MINOR_HDD_INFO: u32 = 161; +pub const MINOR_SMART_INFO: u32 = 162; +pub const MINOR_REC_START: u32 = 163; +pub const MINOR_REC_STOP: u32 = 164; +pub const MINOR_REC_OVERDUE: u32 = 165; +pub const MINOR_LINK_START: u32 = 166; +pub const MINOR_LINK_STOP: u32 = 167; +pub const MINOR_NET_DISK_INFO: u32 = 168; +pub const MINOR_RAID_INFO: u32 = 169; +pub const MINOR_RUN_STATUS_INFO: u32 = 170; +pub const MINOR_SPARE_START_BACKUP: u32 = 171; +pub const MINOR_SPARE_STOP_BACKUP: u32 = 172; +pub const MINOR_SPARE_CLIENT_INFO: u32 = 173; +pub const MINOR_ANR_RECORD_START: u32 = 174; +pub const MINOR_ANR_RECORD_END: u32 = 175; +pub const MINOR_ANR_ADD_TIME_QUANTUM: u32 = 176; +pub const MINOR_ANR_DEL_TIME_QUANTUM: u32 = 177; +pub const MINOR_PIC_REC_START: u32 = 179; +pub const MINOR_PIC_REC_STOP: u32 = 180; +pub const MINOR_PIC_REC_OVERDUE: u32 = 181; +pub const MINOR_CLIENT_LOGIN: u32 = 182; +pub const MINOR_CLIENT_RELOGIN: u32 = 183; +pub const MINOR_CLIENT_LOGOUT: u32 = 184; +pub const MINOR_CLIENT_SYNC_START: u32 = 185; +pub const MINOR_CLIENT_SYNC_STOP: u32 = 186; +pub const MINOR_CLIENT_SYNC_SUCC: u32 = 187; +pub const MINOR_CLIENT_SYNC_EXCP: u32 = 188; +pub const MINOR_GLOBAL_RECORD_ERR_INFO: u32 = 189; +pub const MINOR_BUFFER_STATE: u32 = 190; +pub const MINOR_DISK_ERRORINFO_V2: u32 = 191; +pub const MINOR_CS_DATA_EXPIRED: u32 = 192; +pub const MINOR_PLAT_INFO: u32 = 193; +pub const MINOR_DIAL_STAT: u32 = 194; +pub const MINOR_UNLOCK_RECORD: u32 = 195; +pub const MINOR_VIS_ALARM: u32 = 196; +pub const MINOR_TALK_RECORD: u32 = 197; +pub const MINOR_ACCESSORIES_MESSAGE: u32 = 198; +pub const MINOR_KMS_EXPAMSION_DISK_INSERT: u32 = 199; +pub const MINOR_IPC_CONNECT: u32 = 200; +pub const MINOR_INTELLIGENT_BOARD_STATUS: u32 = 201; +pub const MINOR_IPC_CONNECT_STATUS: u32 = 202; +pub const MINOR_AUTO_TIMING: u32 = 203; +pub const MINOR_EZVIZ_OPERATION: u32 = 204; +pub const MINOR_CLUSTER_DEVICE_ONLINE: u32 = 205; +pub const MINOR_CLUSTER_MGR_SERVICE_STARTUP: u32 = 206; +pub const MINOR_CLUSTER_BUSINESS_TRANSFER: u32 = 207; +pub const MINOR_CLUSTER_STATUS: u32 = 208; +pub const MINOR_CLUSTER_CS_STATUS: u32 = 209; +pub const MINOR_CLUSTER_CM_STATUS: u32 = 210; +pub const MINOR_VOICE_START_DETECTED: u32 = 211; +pub const MINOR_VOICE_END_DETECTED: u32 = 212; +pub const MINOR_DOUBLE_VERIFICATION_PASS: u32 = 213; +pub const MINOR_WIRELESS_RUNNING_STATUS: u32 = 214; +pub const MINOR_SYSTEM_DATA_SYNCHRONIZATION: u32 = 215; +pub const MINOR_HD_FORMAT_START: u32 = 216; +pub const MINOR_HD_FORMAT_STOP: u32 = 217; +pub const MINOR_LIVE_DETECT_OPEN: u32 = 1024; +pub const MINOR_LIVE_DETECT_CLOSE: u32 = 1025; +pub const MINOR_CLEAR_DATA_COLLECTION: u32 = 1026; +pub const MINOR_DELETE_DATA_COLLECTION: u32 = 1027; +pub const MINOR_EXPORT_DATA_COLLECTION: u32 = 1028; +pub const MINOR_CARD_LEN_CONFIG: u32 = 1029; +pub const MINOR_DATA_BASE_INIT_FAILED: u32 = 1030; +pub const MINOR_DATA_BASE_PATCH_UPDATE: u32 = 1031; +pub const MINOR_PSAM_CARD_INSERT: u32 = 1032; +pub const MINOR_PSAM_CARD_REMOVE: u32 = 1033; +pub const MINOR_HARD_FAULT_REBOOT: u32 = 1034; +pub const MINOR_PSAM_CARD_OCP: u32 = 1035; +pub const MINOR_STACK_OVERFLOW: u32 = 1036; +pub const MINOR_PARM_CFG: u32 = 1037; +pub const MINOR_CLR_USER: u32 = 1038; +pub const MINOR_CLR_CARD: u32 = 1039; +pub const MINOR_CLR_FINGER_BY_READER: u32 = 1040; +pub const MINOR_CLR_FINGER_BY_CARD: u32 = 1041; +pub const MINOR_CLR_FINGER_BY_EMPLOYEE_ON: u32 = 1042; +pub const MINOR_DEL_FINGER: u32 = 1043; +pub const MINOR_CLR_WEEK_PLAN: u32 = 1044; +pub const MINOR_SET_WEEK_PLAN: u32 = 1045; +pub const MINOR_SET_HOLIDAY_PLAN: u32 = 1046; +pub const MINOR_CLR_HOLIDAY_PLAN: u32 = 1047; +pub const MINOR_SET_HOLIDAY_GROUP: u32 = 1048; +pub const MINOR_CLR_HOLIDAY_GROUP: u32 = 1049; +pub const MINOR_CLR_TEMPLATE_PLAN: u32 = 1050; +pub const MINOR_SET_TEMPLATE_PLAN: u32 = 1051; +pub const MINOR_ADD_CARD: u32 = 1052; +pub const MINOR_MOD_CARD: u32 = 1053; +pub const MINOR_ADD_FINGER_BY_CARD: u32 = 1054; +pub const MINOR_ADD_FINGER_BY_EMPLOYEE_NO: u32 = 1055; +pub const MINOR_MOD_FINGER_BY_CARD: u32 = 1056; +pub const MINOR_MOD_FINGER_BY_EMPLOYEE_NO: u32 = 1057; +pub const MINOR_IMPORT_USER_LIST: u32 = 1058; +pub const MINOR_USB_LOGIN: u32 = 1059; +pub const MINOR_USB_LOGOUT: u32 = 1060; +pub const MINOR_ISAPI_HTTP_LOGIN: u32 = 1061; +pub const MINOR_ISAPI_HTTP_LOGOUT: u32 = 1062; +pub const MINOR_ISAPI_HTTPS_LOGIN: u32 = 1063; +pub const MINOR_ISAPI_HTTPS_LOGOUT: u32 = 1064; +pub const MINOR_ISUP_ONLINE: u32 = 1065; +pub const MINOR_ISUP_OFFLINE: u32 = 1066; +pub const MINOR_FP_ISSUE_REC: u32 = 1067; +pub const MINOR_FACE_ISSUE_REC: u32 = 1068; +pub const MINOR_ADD_IRIS: u32 = 1069; +pub const MINOR_MODIFY_IRIS: u32 = 1070; +pub const MINOR_DELETE_EMPLOYEE_IRIS: u32 = 1071; +pub const MINOR_DELETE_WHOLE_IRIS: u32 = 1072; +pub const MINOR_MODIFY_IRIS_CFG: u32 = 1073; +pub const MINOR_ADD_USER_INFO: u32 = 1074; +pub const MINOR_MODIFY_USER_INFO: u32 = 1075; +pub const MINOR_CLR_USER_INFO: u32 = 1076; +pub const MINOR_CLR_CARD_BY_CARD_OR_EMPLOYEE: u32 = 1077; +pub const MINOR_CLR_ALL_CARD: u32 = 1078; +pub const MINOR_SIM_CARD_INSERT: u32 = 1079; +pub const MINOR_SIM_CARD_PULLOUT: u32 = 1080; +pub const MINOR_FINGERPRINT_RECOGNITION_OPEN: u32 = 1081; +pub const MINOR_FINGERPRINT_RECOGNITION_CLOSE: u32 = 1082; +pub const MINOR_FACE_RECOGNITION_OPEN: u32 = 1083; +pub const MINOR_FACE_RECOGNITION_CLOSE: u32 = 1084; +pub const MINOR_RESET_ONLINE_READER: u32 = 1085; +pub const MINOR_CLEAR_IRIS_PICTURE: u32 = 1086; +pub const MINOR_ADD_VP: u32 = 1087; +pub const MINOR_MODIFY_VP: u32 = 1088; +pub const MINOR_DELETE_EMPLOYEE_VP: u32 = 1089; +pub const MINOR_DELETE_ALL_VP: u32 = 1090; +pub const MINOR_802_1X_AUTH_SUCC: u32 = 800; +pub const MINOR_802_1X_AUTH_FAIL: u32 = 801; +pub const MAJOR_EVENT: u32 = 5; +pub const MINOR_LEGAL_CARD_PASS: u32 = 1; +pub const MINOR_CARD_AND_PSW_PASS: u32 = 2; +pub const MINOR_CARD_AND_PSW_FAIL: u32 = 3; +pub const MINOR_CARD_AND_PSW_TIMEOUT: u32 = 4; +pub const MINOR_CARD_AND_PSW_OVER_TIME: u32 = 5; +pub const MINOR_CARD_NO_RIGHT: u32 = 6; +pub const MINOR_CARD_INVALID_PERIOD: u32 = 7; +pub const MINOR_CARD_OUT_OF_DATE: u32 = 8; +pub const MINOR_INVALID_CARD: u32 = 9; +pub const MINOR_ANTI_SNEAK_FAIL: u32 = 10; +pub const MINOR_INTERLOCK_DOOR_NOT_CLOSE: u32 = 11; +pub const MINOR_NOT_BELONG_MULTI_GROUP: u32 = 12; +pub const MINOR_INVALID_MULTI_VERIFY_PERIOD: u32 = 13; +pub const MINOR_MULTI_VERIFY_SUPER_RIGHT_FAIL: u32 = 14; +pub const MINOR_MULTI_VERIFY_REMOTE_RIGHT_FAIL: u32 = 15; +pub const MINOR_MULTI_VERIFY_SUCCESS: u32 = 16; +pub const MINOR_LEADER_CARD_OPEN_BEGIN: u32 = 17; +pub const MINOR_LEADER_CARD_OPEN_END: u32 = 18; +pub const MINOR_ALWAYS_OPEN_BEGIN: u32 = 19; +pub const MINOR_ALWAYS_OPEN_END: u32 = 20; +pub const MINOR_LOCK_OPEN: u32 = 21; +pub const MINOR_LOCK_CLOSE: u32 = 22; +pub const MINOR_DOOR_BUTTON_PRESS: u32 = 23; +pub const MINOR_DOOR_BUTTON_RELEASE: u32 = 24; +pub const MINOR_DOOR_OPEN_NORMAL: u32 = 25; +pub const MINOR_DOOR_CLOSE_NORMAL: u32 = 26; +pub const MINOR_DOOR_OPEN_ABNORMAL: u32 = 27; +pub const MINOR_DOOR_OPEN_TIMEOUT: u32 = 28; +pub const MINOR_ALARMOUT_ON: u32 = 29; +pub const MINOR_ALARMOUT_OFF: u32 = 30; +pub const MINOR_ALWAYS_CLOSE_BEGIN: u32 = 31; +pub const MINOR_ALWAYS_CLOSE_END: u32 = 32; +pub const MINOR_MULTI_VERIFY_NEED_REMOTE_OPEN: u32 = 33; +pub const MINOR_MULTI_VERIFY_SUPERPASSWD_VERIFY_SUCCESS: u32 = 34; +pub const MINOR_MULTI_VERIFY_REPEAT_VERIFY: u32 = 35; +pub const MINOR_MULTI_VERIFY_TIMEOUT: u32 = 36; +pub const MINOR_DOORBELL_RINGING: u32 = 37; +pub const MINOR_FINGERPRINT_COMPARE_PASS: u32 = 38; +pub const MINOR_FINGERPRINT_COMPARE_FAIL: u32 = 39; +pub const MINOR_CARD_FINGERPRINT_VERIFY_PASS: u32 = 40; +pub const MINOR_CARD_FINGERPRINT_VERIFY_FAIL: u32 = 41; +pub const MINOR_CARD_FINGERPRINT_VERIFY_TIMEOUT: u32 = 42; +pub const MINOR_CARD_FINGERPRINT_PASSWD_VERIFY_PASS: u32 = 43; +pub const MINOR_CARD_FINGERPRINT_PASSWD_VERIFY_FAIL: u32 = 44; +pub const MINOR_CARD_FINGERPRINT_PASSWD_VERIFY_TIMEOUT: u32 = 45; +pub const MINOR_FINGERPRINT_PASSWD_VERIFY_PASS: u32 = 46; +pub const MINOR_FINGERPRINT_PASSWD_VERIFY_FAIL: u32 = 47; +pub const MINOR_FINGERPRINT_PASSWD_VERIFY_TIMEOUT: u32 = 48; +pub const MINOR_FINGERPRINT_INEXISTENCE: u32 = 49; +pub const MINOR_CARD_PLATFORM_VERIFY: u32 = 50; +pub const MINOR_CALL_CENTER: u32 = 51; +pub const MINOR_FIRE_RELAY_TURN_ON_DOOR_ALWAYS_OPEN: u32 = 52; +pub const MINOR_FIRE_RELAY_RECOVER_DOOR_RECOVER_NORMAL: u32 = 53; +pub const MINOR_FACE_AND_FP_VERIFY_PASS: u32 = 54; +pub const MINOR_FACE_AND_FP_VERIFY_FAIL: u32 = 55; +pub const MINOR_FACE_AND_FP_VERIFY_TIMEOUT: u32 = 56; +pub const MINOR_FACE_AND_PW_VERIFY_PASS: u32 = 57; +pub const MINOR_FACE_AND_PW_VERIFY_FAIL: u32 = 58; +pub const MINOR_FACE_AND_PW_VERIFY_TIMEOUT: u32 = 59; +pub const MINOR_FACE_AND_CARD_VERIFY_PASS: u32 = 60; +pub const MINOR_FACE_AND_CARD_VERIFY_FAIL: u32 = 61; +pub const MINOR_FACE_AND_CARD_VERIFY_TIMEOUT: u32 = 62; +pub const MINOR_FACE_AND_PW_AND_FP_VERIFY_PASS: u32 = 63; +pub const MINOR_FACE_AND_PW_AND_FP_VERIFY_FAIL: u32 = 64; +pub const MINOR_FACE_AND_PW_AND_FP_VERIFY_TIMEOUT: u32 = 65; +pub const MINOR_FACE_CARD_AND_FP_VERIFY_PASS: u32 = 66; +pub const MINOR_FACE_CARD_AND_FP_VERIFY_FAIL: u32 = 67; +pub const MINOR_FACE_CARD_AND_FP_VERIFY_TIMEOUT: u32 = 68; +pub const MINOR_EMPLOYEENO_AND_FP_VERIFY_PASS: u32 = 69; +pub const MINOR_EMPLOYEENO_AND_FP_VERIFY_FAIL: u32 = 70; +pub const MINOR_EMPLOYEENO_AND_FP_VERIFY_TIMEOUT: u32 = 71; +pub const MINOR_EMPLOYEENO_AND_FP_AND_PW_VERIFY_PASS: u32 = 72; +pub const MINOR_EMPLOYEENO_AND_FP_AND_PW_VERIFY_FAIL: u32 = 73; +pub const MINOR_EMPLOYEENO_AND_FP_AND_PW_VERIFY_TIMEOUT: u32 = 74; +pub const MINOR_FACE_VERIFY_PASS: u32 = 75; +pub const MINOR_FACE_VERIFY_FAIL: u32 = 76; +pub const MINOR_EMPLOYEENO_AND_FACE_VERIFY_PASS: u32 = 77; +pub const MINOR_EMPLOYEENO_AND_FACE_VERIFY_FAIL: u32 = 78; +pub const MINOR_EMPLOYEENO_AND_FACE_VERIFY_TIMEOUT: u32 = 79; +pub const MINOR_FACE_RECOGNIZE_FAIL: u32 = 80; +pub const MINOR_FIRSTCARD_AUTHORIZE_BEGIN: u32 = 81; +pub const MINOR_FIRSTCARD_AUTHORIZE_END: u32 = 82; +pub const MINOR_DOORLOCK_INPUT_SHORT_CIRCUIT: u32 = 83; +pub const MINOR_DOORLOCK_INPUT_BROKEN_CIRCUIT: u32 = 84; +pub const MINOR_DOORLOCK_INPUT_EXCEPTION: u32 = 85; +pub const MINOR_DOORCONTACT_INPUT_SHORT_CIRCUIT: u32 = 86; +pub const MINOR_DOORCONTACT_INPUT_BROKEN_CIRCUIT: u32 = 87; +pub const MINOR_DOORCONTACT_INPUT_EXCEPTION: u32 = 88; +pub const MINOR_OPENBUTTON_INPUT_SHORT_CIRCUIT: u32 = 89; +pub const MINOR_OPENBUTTON_INPUT_BROKEN_CIRCUIT: u32 = 90; +pub const MINOR_OPENBUTTON_INPUT_EXCEPTION: u32 = 91; +pub const MINOR_DOORLOCK_OPEN_EXCEPTION: u32 = 92; +pub const MINOR_DOORLOCK_OPEN_TIMEOUT: u32 = 93; +pub const MINOR_FIRSTCARD_OPEN_WITHOUT_AUTHORIZE: u32 = 94; +pub const MINOR_CALL_LADDER_RELAY_BREAK: u32 = 95; +pub const MINOR_CALL_LADDER_RELAY_CLOSE: u32 = 96; +pub const MINOR_AUTO_KEY_RELAY_BREAK: u32 = 97; +pub const MINOR_AUTO_KEY_RELAY_CLOSE: u32 = 98; +pub const MINOR_KEY_CONTROL_RELAY_BREAK: u32 = 99; +pub const MINOR_KEY_CONTROL_RELAY_CLOSE: u32 = 100; +pub const MINOR_EMPLOYEENO_AND_PW_PASS: u32 = 101; +pub const MINOR_EMPLOYEENO_AND_PW_FAIL: u32 = 102; +pub const MINOR_EMPLOYEENO_AND_PW_TIMEOUT: u32 = 103; +pub const MINOR_HUMAN_DETECT_FAIL: u32 = 104; +pub const MINOR_PEOPLE_AND_ID_CARD_COMPARE_PASS: u32 = 105; +pub const MINOR_PEOPLE_AND_ID_CARD_COMPARE_FAIL: u32 = 112; +pub const MINOR_CERTIFICATE_BLOCKLIST: u32 = 113; +pub const MINOR_LEGAL_MESSAGE: u32 = 114; +pub const MINOR_ILLEGAL_MESSAGE: u32 = 115; +pub const MINOR_DOOR_OPEN_OR_DORMANT_FAIL: u32 = 117; +pub const MINOR_AUTH_PLAN_DORMANT_FAIL: u32 = 118; +pub const MINOR_CARD_ENCRYPT_VERIFY_FAIL: u32 = 119; +pub const MINOR_SUBMARINEBACK_REPLY_FAIL: u32 = 120; +pub const MINOR_DOOR_OPEN_OR_DORMANT_OPEN_FAIL: u32 = 130; +pub const MINOR_HEART_BEAT: u32 = 131; +pub const MINOR_DOOR_OPEN_OR_DORMANT_LINKAGE_OPEN_FAIL: u32 = 132; +pub const MINOR_TRAILING: u32 = 133; +pub const MINOR_REVERSE_ACCESS: u32 = 134; +pub const MINOR_FORCE_ACCESS: u32 = 135; +pub const MINOR_CLIMBING_OVER_GATE: u32 = 136; +pub const MINOR_PASSING_TIMEOUT: u32 = 137; +pub const MINOR_INTRUSION_ALARM: u32 = 138; +pub const MINOR_FREE_GATE_PASS_NOT_AUTH: u32 = 139; +pub const MINOR_DROP_ARM_BLOCK: u32 = 140; +pub const MINOR_DROP_ARM_BLOCK_RESUME: u32 = 141; +pub const MINOR_LOCAL_FACE_MODELING_FAIL: u32 = 142; +pub const MINOR_STAY_EVENT: u32 = 143; +pub const MINOR_CERTIFICATE_ALLOWLIST_PASS: u32 = 144; +pub const MINOR_CERTIFICATE_ALLOWLIST_FALL: u32 = 145; +pub const MINOR_FACE_COLLECTION: u32 = 146; +pub const MINOR_CARD_COLLECTION: u32 = 147; +pub const MINOR_PSW_ERROR_OVER_TIMES: u32 = 148; +pub const MINOR_ID_CARD_COLLECTION: u32 = 149; +pub const MINOR_PSW_VERIFY_FAIL: u32 = 150; +pub const MINOR_PASSWORD_MISMATCH: u32 = 151; +pub const MINOR_EMPLOYEE_NO_NOT_EXIST: u32 = 152; +pub const MINOR_COMBINED_VERIFY_PASS: u32 = 153; +pub const MINOR_COMBINED_VERIFY_TIMEOUT: u32 = 154; +pub const MINOR_VERIFY_MODE_MISMATCH: u32 = 155; +pub const MINOR_ORCODE_VERIFY_PASS: u32 = 156; +pub const MINOR_ORCODE_VERIFY_FAIL: u32 = 157; +pub const MINOR_HOUSEHOLDER_AUTHORIZE_PASS: u32 = 158; +pub const MINOR_BLUETOOTH_VERIFY_PASS: u32 = 159; +pub const MINOR_BLUETOOTH_VERIFY_FAIL: u32 = 160; +pub const MINOR_PASSPORT_VERIFY_FAIL: u32 = 161; +pub const MINOR_INFORMAL_MIFARE_CARD_VERIFY_FAIL: u32 = 162; +pub const MINOR_CPU_CARD_ENCRYPT_VERIFY_FAIL: u32 = 163; +pub const MINOR_NFC_DISABLE_VERIFY_FAIL: u32 = 164; +pub const MINOR_LORA_MODULE_ONLINE: u32 = 165; +pub const MINOR_LORA_MODULE_OFFLINE: u32 = 166; +pub const MINOR_MQTT_STATUS: u32 = 167; +pub const MINOR_EM_CARD_RECOGNIZE_NOT_ENABLED: u32 = 168; +pub const MINOR_M1_CARD_RECOGNIZE_NOT_ENABLED: u32 = 169; +pub const MINOR_CPU_CARD_RECOGNIZE_NOT_ENABLED: u32 = 170; +pub const MINOR_ID_CARD_RECOGNIZE_NOT_ENABLED: u32 = 171; +pub const MINOR_CARD_SET_SECRET_KEY_FAIL: u32 = 172; +pub const MINOR_LOCAL_UPGRADE_FAIL: u32 = 173; +pub const MINOR_REMOTE_UPGRADE_FAIL: u32 = 174; +pub const MINOR_REMOTE_EXTEND_MODULE_UPGRADE_SUCC: u32 = 175; +pub const MINOR_REMOTE_EXTEND_MODULE_UPGRADE_FAIL: u32 = 176; +pub const MINOR_REMOTE_FINGER_PRINT_MODULE_UPGRADE_SUCC: u32 = 177; +pub const MINOR_REMOTE_FINGER_PRINT_MODULE_UPGRADE_FAIL: u32 = 178; +pub const MINOR_PASSWD_VERIFY_PASS: u32 = 181; +pub const MINOR_COMSUME_TIMEOUT: u32 = 182; +pub const MINOR_REFUND_TIMEOUT: u32 = 183; +pub const MINOR_COMSUME_AMOUNT_OVERLIMIT: u32 = 184; +pub const MINOR_COMSUME_TIMES_OVERLIMIT: u32 = 185; +pub const MINOR_USER_COMSUME_ENSURE_TIMEOUT: u32 = 186; +pub const MINOR_BLOCKLIST_REACH_THRESHOLD: u32 = 187; +pub const MINOR_DESFIRE_CARD_ENCRYPT_VERIFY_FAIL: u32 = 188; +pub const MINOR_DESFIRE_CARD_RECOGNIZE_NOT_ENABLED: u32 = 189; +pub const MINOR_IRIS_VERIFY_PASS: u32 = 190; +pub const MINOR_IRIS_VERIFY_FAIL: u32 = 191; +pub const MINOR_IRIS_BIOASSAY_FAIL: u32 = 192; +pub const MINOR_FULL_STAFF: u32 = 193; +pub const MINOR_ATTENDANCE_RECORD_EXCEED_THRESHOLD: u32 = 194; +pub const MINOR_DYNAMICCODE_VERIFY_INVALID: u32 = 195; +pub const MINOR_MEETING_NO_SIGNIN: u32 = 196; +pub const MINOR_MEETING_SIGNIN: u32 = 197; +pub const MINOR_MEETING_LATE: u32 = 198; +pub const MINOR_INTERLOCK_SERVER_FAILED_RESPONSE: u32 = 201; +pub const MINOR_FINGERPRINT_DISENABELD_VERIFY_FAIL: u32 = 202; +pub const MINOR_FACE_DISENABELD_VERIFY_FAIL: u32 = 203; +pub const MINOR_MONITOR_OPEN_DOOR: u32 = 204; +pub const MINOR_READER_FACTORY_RESET: u32 = 205; +pub const MINOR_READER_ID_CONFLICT: u32 = 206; +pub const MINOR_FELICA_CARD_RECOGNIZE_NOT_ENABLED: u32 = 207; +pub const MINOR_PROPERTY_EXCEPTION_VERIFY_FAIL: u32 = 208; +pub const MINOR_MEETING_NO_PERSON: u32 = 209; +pub const MINOR_MEETING_NOT_START: u32 = 210; +pub const MINOR_MEETING_SIGNEDIN: u32 = 211; +pub const MINOR_AUTHENTICATION_TIMES_REACHED: u32 = 212; +pub const MINOR_FACE_MODEL_FAIL_BY_UPGRADE: u32 = 213; +pub const MINOR_UNCLOCK_RECORD: u32 = 214; +pub const MINOR_DOOR_NOT_OPEN: u32 = 215; +pub const MINOR_DOOR_UNCLOSED: u32 = 216; +pub const MINOR_ORCODE_KEY_VERIFY_FAIL: u32 = 217; +pub const MINOR_EVENT_CUSTOM1: u32 = 1280; +pub const MINOR_EVENT_CUSTOM2: u32 = 1281; +pub const MINOR_EVENT_CUSTOM3: u32 = 1282; +pub const MINOR_EVENT_CUSTOM4: u32 = 1283; +pub const MINOR_EVENT_CUSTOM5: u32 = 1284; +pub const MINOR_EVENT_CUSTOM6: u32 = 1285; +pub const MINOR_EVENT_CUSTOM7: u32 = 1286; +pub const MINOR_EVENT_CUSTOM8: u32 = 1287; +pub const MINOR_EVENT_CUSTOM9: u32 = 1288; +pub const MINOR_EVENT_CUSTOM10: u32 = 1289; +pub const MINOR_EVENT_CUSTOM11: u32 = 1290; +pub const MINOR_EVENT_CUSTOM12: u32 = 1291; +pub const MINOR_EVENT_CUSTOM13: u32 = 1292; +pub const MINOR_EVENT_CUSTOM14: u32 = 1293; +pub const MINOR_EVENT_CUSTOM15: u32 = 1294; +pub const MINOR_EVENT_CUSTOM16: u32 = 1295; +pub const MINOR_EVENT_CUSTOM17: u32 = 1296; +pub const MINOR_EVENT_CUSTOM18: u32 = 1297; +pub const MINOR_EVENT_CUSTOM19: u32 = 1298; +pub const MINOR_EVENT_CUSTOM20: u32 = 1299; +pub const MINOR_EVENT_CUSTOM21: u32 = 1300; +pub const MINOR_EVENT_CUSTOM22: u32 = 1301; +pub const MINOR_EVENT_CUSTOM23: u32 = 1302; +pub const MINOR_EVENT_CUSTOM24: u32 = 1303; +pub const MINOR_EVENT_CUSTOM25: u32 = 1304; +pub const MINOR_EVENT_CUSTOM26: u32 = 1305; +pub const MINOR_EVENT_CUSTOM27: u32 = 1306; +pub const MINOR_EVENT_CUSTOM28: u32 = 1307; +pub const MINOR_EVENT_CUSTOM29: u32 = 1308; +pub const MINOR_EVENT_CUSTOM30: u32 = 1309; +pub const MINOR_EVENT_CUSTOM31: u32 = 1310; +pub const MINOR_EVENT_CUSTOM32: u32 = 1311; +pub const MINOR_EVENT_CUSTOM33: u32 = 1312; +pub const MINOR_EVENT_CUSTOM34: u32 = 1313; +pub const MINOR_EVENT_CUSTOM35: u32 = 1314; +pub const MINOR_EVENT_CUSTOM36: u32 = 1315; +pub const MINOR_EVENT_CUSTOM37: u32 = 1316; +pub const MINOR_EVENT_CUSTOM38: u32 = 1317; +pub const MINOR_EVENT_CUSTOM39: u32 = 1318; +pub const MINOR_EVENT_CUSTOM40: u32 = 1319; +pub const MINOR_EVENT_CUSTOM41: u32 = 1320; +pub const MINOR_EVENT_CUSTOM42: u32 = 1321; +pub const MINOR_EVENT_CUSTOM43: u32 = 1322; +pub const MINOR_EVENT_CUSTOM44: u32 = 1323; +pub const MINOR_EVENT_CUSTOM45: u32 = 1324; +pub const MINOR_EVENT_CUSTOM46: u32 = 1325; +pub const MINOR_EVENT_CUSTOM47: u32 = 1326; +pub const MINOR_EVENT_CUSTOM48: u32 = 1327; +pub const MINOR_EVENT_CUSTOM49: u32 = 1328; +pub const MINOR_EVENT_CUSTOM50: u32 = 1329; +pub const MINOR_EVENT_CUSTOM51: u32 = 1330; +pub const MINOR_EVENT_CUSTOM52: u32 = 1331; +pub const MINOR_EVENT_CUSTOM53: u32 = 1332; +pub const MINOR_EVENT_CUSTOM54: u32 = 1333; +pub const MINOR_EVENT_CUSTOM55: u32 = 1334; +pub const MINOR_EVENT_CUSTOM56: u32 = 1335; +pub const MINOR_EVENT_CUSTOM57: u32 = 1336; +pub const MINOR_EVENT_CUSTOM58: u32 = 1337; +pub const MINOR_EVENT_CUSTOM59: u32 = 1338; +pub const MINOR_EVENT_CUSTOM60: u32 = 1339; +pub const MINOR_EVENT_CUSTOM61: u32 = 1340; +pub const MINOR_EVENT_CUSTOM62: u32 = 1341; +pub const MINOR_EVENT_CUSTOM63: u32 = 1342; +pub const MINOR_EVENT_CUSTOM64: u32 = 1343; +pub const MINOR_ESD_OK: u32 = 1344; +pub const MINOR_ESD_LINKAGE_DISENABLE: u32 = 1345; +pub const MINOR_ESD_LINKAGE_ENABLE: u32 = 1346; +pub const MINOR_ESD_OVERTIME: u32 = 1347; +pub const MINOR_LOCK_FINGER_OPEN_DOOR: u32 = 1536; +pub const MINOR_LOCK_PASSWORD_OPEN_DOOR: u32 = 1537; +pub const MINOR_LOCK_CARD_OPEN_DOOR: u32 = 1538; +pub const MINOR_LOCK_CENTER_OPEN_DOOR: u32 = 1539; +pub const MINOR_LOCK_APP_OPEN_DOOR: u32 = 1540; +pub const MINOR_LOCK_KEY_OPEN_DOOR: u32 = 1541; +pub const MINOR_LOCK_REMOTE_DEVICE_OPEN_DOOR: u32 = 1542; +pub const MINOR_LOCK_TMP_PASSWORD_OPEN_DOOR: u32 = 1543; +pub const MINOR_LOCK_BLUETOOTH_OPEN_DOOR: u32 = 1544; +pub const MINOR_LOCK_MULTI_OPEN_DOOR: u32 = 1545; +pub const MINOR_VP_ANTI_SPOOFING_FAIL: u32 = 1792; +pub const MINOR_VP_VERIFY_FAIL: u32 = 1793; +pub const MINOR_ALARMHOST_SCHOOLTIME_IRGI_B: u32 = 4097; +pub const MINOR_ALARMHOST_SCHOOLTIME_SDK: u32 = 4098; +pub const MINOR_ALARMHOST_SCHOOLTIME_SELFTEST: u32 = 4099; +pub const MINOR_ALARMHOST_SUBSYSTEM_ABNORMALINSERT: u32 = 4100; +pub const MINOR_ALARMHOST_SUBSYSTEM_ABNORMALPULLOUT: u32 = 4101; +pub const MINOR_ALARMHOST_AUTO_ARM: u32 = 4102; +pub const MINOR_ALARMHOST_AUTO_DISARM: u32 = 4103; +pub const MINOR_ALARMHOST_TIME_TIGGER_ON: u32 = 4104; +pub const MINOR_ALARMHOST_TIME_TIGGER_OFF: u32 = 4105; +pub const MINOR_ALARMHOST_AUTO_ARM_FAILD: u32 = 4106; +pub const MINOR_ALARMHOST_AUTO_DISARM_FAILD: u32 = 4107; +pub const MINOR_ALARMHOST_TIME_TIGGER_ON_FAILD: u32 = 4108; +pub const MINOR_ALARMHOST_TIME_TIGGER_OFF_FAILD: u32 = 4109; +pub const MINOR_ALARMHOST_MANDATORY_ALARM: u32 = 4110; +pub const MINOR_ALARMHOST_KEYPAD_LOCKED: u32 = 4111; +pub const MINOR_ALARMHOST_USB_INSERT: u32 = 4112; +pub const MINOR_ALARMHOST_USB_PULLOUT: u32 = 4113; +pub const MINOR_ALARMHOST_4G_MODULS_ONLINE: u32 = 4114; +pub const MINOR_ALARMHOST_4G_MODULS_OFFLINE: u32 = 4115; +pub const MINOR_EZVIZ_CLOUD_ONLINE: u32 = 4116; +pub const MINOR_EZVIZ_CLOUD_OFFLINE: u32 = 4117; +pub const MINOR_SIPUA_GRID_ONLINE: u32 = 4118; +pub const MINOR_SIPUA_GRID_OFFLINE: u32 = 4119; +pub const MINOR_INTERNET_ACCESS_CONNECTED: u32 = 4120; +pub const MINOR_INTERNET_ACCESS_BREAK: u32 = 4121; +pub const MINOR_WIRELESS_CONNECTED: u32 = 4122; +pub const MINOR_WIRELESS_BREAK: u32 = 4123; +pub const MINOR_PORT_LINK_DOWN: u32 = 4124; +pub const MINOR_PORT_LINK_UP: u32 = 4125; +pub const MINOR_POE_PORT_POWER_ON: u32 = 4126; +pub const MINOR_POE_PORT_POWER_OFF: u32 = 4127; +pub const MINOR_POE_TOTAL_POWER_MAX: u32 = 4128; +pub const MINNOR_POE_TOTAL_POWER_RESUME: u32 = 4129; +pub const MINNOR_CARGO_ITEMS: u32 = 4130; +pub const PARA_VIDEOOUT: u32 = 1; +pub const PARA_IMAGE: u32 = 2; +pub const PARA_ENCODE: u32 = 4; +pub const PARA_NETWORK: u32 = 8; +pub const PARA_ALARM: u32 = 16; +pub const PARA_EXCEPTION: u32 = 32; +pub const PARA_DECODER: u32 = 64; +pub const PARA_RS232: u32 = 128; +pub const PARA_PREVIEW: u32 = 256; +pub const PARA_SECURITY: u32 = 512; +pub const PARA_DATETIME: u32 = 1024; +pub const PARA_FRAMETYPE: u32 = 2048; +pub const PARA_DETECTION: u32 = 4096; +pub const PARA_VCA_RULE: u32 = 4097; +pub const PARA_VCA_CTRL: u32 = 4098; +pub const PARA_VCA_PLATE: u32 = 4099; +pub const PARA_CODESPLITTER: u32 = 8192; +pub const PARA_RS485: u32 = 8193; +pub const PARA_DEVICE: u32 = 8194; +pub const PARA_HARDDISK: u32 = 8195; +pub const PARA_AUTOBOOT: u32 = 8196; +pub const PARA_HOLIDAY: u32 = 8197; +pub const PARA_IPC: u32 = 8198; +pub const NET_DVR_FILE_SUCCESS: u32 = 1000; +pub const NET_DVR_FILE_NOFIND: u32 = 1001; +pub const NET_DVR_ISFINDING: u32 = 1002; +pub const NET_DVR_NOMOREFILE: u32 = 1003; +pub const NET_DVR_FILE_EXCEPTION: u32 = 1004; +pub const NET_DVR_FIND_TIMEOUT: u32 = 1005; +pub const COMM_ALARM: u32 = 4352; +pub const COMM_ALARM_RULE: u32 = 4354; +pub const COMM_ALARM_PDC: u32 = 4355; +pub const COMM_ALARM_VIDEOPLATFORM: u32 = 4356; +pub const COMM_ALARM_ALARMHOST: u32 = 4357; +pub const COMM_ALARM_FACE: u32 = 4358; +pub const COMM_RULE_INFO_UPLOAD: u32 = 4359; +pub const COMM_ALARM_AID: u32 = 4368; +pub const COMM_ALARM_TPS: u32 = 4369; +pub const COMM_UPLOAD_FACESNAP_RESULT: u32 = 4370; +pub const COMM_ALARM_TFS: u32 = 4371; +pub const COMM_ALARM_TPS_V41: u32 = 4372; +pub const COMM_ALARM_AID_V41: u32 = 4373; +pub const COMM_ALARM_VQD_EX: u32 = 4374; +pub const COMM_ALARM_NOTIFICATION_REPORT: u32 = 4375; +pub const COMM_SENSOR_VALUE_UPLOAD: u32 = 4384; +pub const COMM_SENSOR_ALARM: u32 = 4385; +pub const COMM_SWITCH_ALARM: u32 = 4386; +pub const COMM_ALARMHOST_EXCEPTION: u32 = 4387; +pub const COMM_ALARMHOST_OPERATEEVENT_ALARM: u32 = 4388; +pub const COMM_ALARMHOST_SAFETYCABINSTATE: u32 = 4389; +pub const COMM_ALARMHOST_ALARMOUTSTATUS: u32 = 4390; +pub const COMM_ALARMHOST_CID_ALARM: u32 = 4391; +pub const COMM_ALARMHOST_EXTERNAL_DEVICE_ALARM: u32 = 4392; +pub const COMM_ALARMHOST_DATA_UPLOAD: u32 = 4393; +pub const COMM_FACECAPTURE_STATISTICS_RESULT: u32 = 4394; +pub const COMM_ALARM_WIRELESS_INFO: u32 = 4651; +pub const COMM_SCENECHANGE_DETECTION_UPLOAD: u32 = 4400; +pub const COMM_CROSSLINE_ALARM: u32 = 4401; +pub const COMM_UPLOAD_VIDEO_INTERCOM_EVENT: u32 = 4402; +pub const COMM_ALARM_VIDEO_INTERCOM: u32 = 4403; +pub const COMM_UPLOAD_NOTICE_DATA: u32 = 4404; +pub const COMM_ALARM_AUDIOEXCEPTION: u32 = 4432; +pub const COMM_ALARM_DEFOCUS: u32 = 4433; +pub const COMM_ALARM_BUTTON_DOWN_EXCEPTION: u32 = 4434; +pub const COMM_ALARM_ALARMGPS: u32 = 4610; +pub const COMM_TRADEINFO: u32 = 5376; +pub const COMM_UPLOAD_PLATE_RESULT: u32 = 10240; +pub const COMM_ITC_STATUS_DETECT_RESULT: u32 = 10256; +pub const COMM_IPC_AUXALARM_RESULT: u32 = 10272; +pub const COMM_UPLOAD_PICTUREINFO: u32 = 10496; +pub const COMM_SNAP_MATCH_ALARM: u32 = 10498; +pub const COMM_ITS_PLATE_RESULT: u32 = 12368; +pub const COMM_ITS_TRAFFIC_COLLECT: u32 = 12369; +pub const COMM_ITS_GATE_VEHICLE: u32 = 12370; +pub const COMM_ITS_GATE_FACE: u32 = 12371; +pub const COMM_ITS_GATE_COSTITEM: u32 = 12372; +pub const COMM_ITS_GATE_HANDOVER: u32 = 12373; +pub const COMM_ITS_PARK_VEHICLE: u32 = 12374; +pub const COMM_ITS_BLOCKLIST_ALARM: u32 = 12375; +pub const COMM_VEHICLE_CONTROL_LIST_DSALARM: u32 = 12376; +pub const COMM_VEHICLE_CONTROL_ALARM: u32 = 12377; +pub const COMM_FIRE_ALARM: u32 = 12384; +pub const COMM_ITS_GATE_ALARMINFO: u32 = 12385; +pub const COMM_VEHICLE_RECOG_RESULT: u32 = 12386; +pub const COMM_PLATE_RESULT_V50: u32 = 12387; +pub const COMM_GATE_CHARGEINFO_UPLOAD: u32 = 12388; +pub const COMM_TME_VEHICLE_INDENTIFICATION: u32 = 12389; +pub const COMM_GATE_CARDINFO_UPLOAD: u32 = 12390; +pub const COMM_LOADING_DOCK_OPERATEINFO: u32 = 12391; +pub const COMM_ALARM_SENSORINFO_UPLOAD: u32 = 12407; +pub const COMM_ALARM_CAPTURE_UPLOAD: u32 = 12408; +pub const COMM_ITS_RADARINFO: u32 = 12409; +pub const COMM_SIGNAL_LAMP_ABNORMAL: u32 = 12416; +pub const COMM_ALARM_TPS_REAL_TIME: u32 = 12417; +pub const COMM_ALARM_TPS_STATISTICS: u32 = 12418; +pub const COMM_ALARM_V30: u32 = 16384; +pub const COMM_IPCCFG: u32 = 16385; +pub const COMM_IPCCFG_V31: u32 = 16386; +pub const COMM_IPCCFG_V40: u32 = 16387; +pub const COMM_ALARM_DEVICE: u32 = 16388; +pub const COMM_ALARM_CVR: u32 = 16389; +pub const COMM_ALARM_HOT_SPARE: u32 = 16390; +pub const COMM_ALARM_V40: u32 = 16391; +pub const COMM_UPLOAD_HEATMAP_RESULT: u32 = 16392; +pub const COMM_ALARM_DEVICE_V40: u32 = 16393; +pub const COMM_ALARM_FACE_DETECTION: u32 = 16400; +pub const COMM_ALARM_TARGET_LEFT_REGION: u32 = 16401; +pub const COMM_GISINFO_UPLOAD: u32 = 16402; +pub const COMM_VANDALPROOF_ALARM: u32 = 16403; +pub const COMM_PEOPLE_DETECTION_UPLOAD: u32 = 16404; +pub const COMM_ALARM_STORAGE_DETECTION: u32 = 16405; +pub const COMM_MVM_REGISTER: u32 = 16406; +pub const COMM_MVM_STATUS_INFO: u32 = 16407; +pub const COMM_UPLOAD_HEATMAP_RESULT_PDC: u32 = 16408; +pub const COMM_UPLOAD_HEATMAP_RESULT_DURATION: u32 = 16409; +pub const COMM_UPLOAD_HEATMAP_RESULT_INTERSECTION: u32 = 16416; +pub const COMM_UPLOAD_AIOP_VIDEO: u32 = 16417; +pub const COMM_UPLOAD_AIOP_PICTURE: u32 = 16418; +pub const COMM_UPLOAD_AIOP_POLLING_SNAP: u32 = 16419; +pub const COMM_UPLOAD_AIOP_POLLING_VIDEO: u32 = 16420; +pub const COMM_UPLOAD_AIOP_HISTORY_VIDEO: u32 = 16421; +pub const COMM_ITS_ROAD_EXCEPTION: u32 = 17664; +pub const COMM_ITS_EXTERNAL_CONTROL_ALARM: u32 = 17696; +pub const COMM_ALARM_SHIPSDETECTION: u32 = 17697; +pub const COMM_VCA_DBD_ALARM: u32 = 17744; +pub const COMM_VCA_ADAS_ALARM: u32 = 17745; +pub const COMM_VEH_REALTIME_INFO: u32 = 17746; +pub const COMM_VCA_ATTEND_ALARM: u32 = 17747; +pub const COMM_FIREDETECTION_ALARM: u32 = 18833; +pub const COMM_ALARM_DENSEFOGDETECTION: u32 = 18834; +pub const COMM_VCA_ALARM: u32 = 18835; +pub const COMM_FACE_THERMOMETRY_ALARM: u32 = 18836; +pub const COMM_TAPE_ARCHIVE_ALARM: u32 = 18838; +pub const COMM_SCREEN_ALARM: u32 = 20480; +pub const COMM_DVCS_STATE_ALARM: u32 = 20481; +pub const COMM_ALARM_ACS: u32 = 20482; +pub const COMM_ALARM_FIBER_CONVERT: u32 = 20483; +pub const COMM_ALARM_SWITCH_CONVERT: u32 = 20484; +pub const COMM_ALARM_DEC_VCA: u32 = 20496; +pub const COMM_ALARM_LCD: u32 = 20497; +pub const COMM_CONFERENCE_CALL_ALARM: u32 = 20498; +pub const COMM_ALARM_WALL_CONFERNECE: u32 = 20501; +pub const COMM_DIAGNOSIS_UPLOAD: u32 = 20736; +pub const COMM_HIGH_DENSITY_UPLOAD: u32 = 20737; +pub const COMM_ID_INFO_ALARM: u32 = 20992; +pub const COMM_PASSNUM_INFO_ALARM: u32 = 20993; +pub const COMM_PASSPORT_ALARM: u32 = 20994; +pub const COMM_THERMOMETRY_DIFF_ALARM: u32 = 21009; +pub const COMM_THERMOMETRY_ALARM: u32 = 21010; +pub const COMM_PANORAMIC_LINKAGE_ALARM: u32 = 21011; +pub const COMM_TAG_INFO_ALARM: u32 = 21013; +pub const COMM_ALARM_VQD: u32 = 24576; +pub const COMM_PUSH_UPDATE_RECORD_INFO: u32 = 24577; +pub const COMM_SWITCH_LAMP_ALARM: u32 = 24578; +pub const COMM_INQUEST_ALARM: u32 = 24581; +pub const COMM_VIDEO_PARKING_POLE_ALARM: u32 = 24582; +pub const COMM_GPS_STATUS_ALARM: u32 = 24592; +pub const COMM_BASE_STATION_INFO_ALARM: u32 = 24593; +pub const COMM_ALARM_SUBSCRIBE_EVENT: u32 = 24594; +pub const COMM_FACESNAP_RAWDATA_ALARM: u32 = 24597; +pub const COMM_CLUSTER_ALARM: u32 = 24608; +pub const COMM_ISAPI_ALARM: u32 = 24585; +pub const COMM_FRAMES_PEOPLE_COUNTING_ALARM: u32 = 24681; +pub const COMM_SIGN_ABNORMAL_ALARM: u32 = 24864; +pub const COMM_HFPD_ALARM: u32 = 24865; +pub const COMM_HCU_ALARM: u32 = 24912; +pub const COMM_DEV_STATUS_CHANGED: u32 = 28672; +pub const COMM_ALARM_EXCEPTION: u32 = 32767; +pub const EXCEPTION_EXCHANGE: u32 = 32768; +pub const EXCEPTION_AUDIOEXCHANGE: u32 = 32769; +pub const EXCEPTION_ALARM: u32 = 32770; +pub const EXCEPTION_PREVIEW: u32 = 32771; +pub const EXCEPTION_SERIAL: u32 = 32772; +pub const EXCEPTION_RECONNECT: u32 = 32773; +pub const EXCEPTION_ALARMRECONNECT: u32 = 32774; +pub const EXCEPTION_SERIALRECONNECT: u32 = 32775; +pub const SERIAL_RECONNECTSUCCESS: u32 = 32776; +pub const EXCEPTION_PLAYBACK: u32 = 32784; +pub const EXCEPTION_DISKFMT: u32 = 32785; +pub const EXCEPTION_PASSIVEDECODE: u32 = 32786; +pub const EXCEPTION_EMAILTEST: u32 = 32787; +pub const EXCEPTION_BACKUP: u32 = 32788; +pub const PREVIEW_RECONNECTSUCCESS: u32 = 32789; +pub const ALARM_RECONNECTSUCCESS: u32 = 32790; +pub const RESUME_EXCHANGE: u32 = 32791; +pub const NETWORK_FLOWTEST_EXCEPTION: u32 = 32792; +pub const EXCEPTION_PICPREVIEWRECONNECT: u32 = 32793; +pub const PICPREVIEW_RECONNECTSUCCESS: u32 = 32800; +pub const EXCEPTION_PICPREVIEW: u32 = 32801; +pub const EXCEPTION_MAX_ALARM_INFO: u32 = 32802; +pub const EXCEPTION_LOST_ALARM: u32 = 32803; +pub const EXCEPTION_PASSIVETRANSRECONNECT: u32 = 32804; +pub const PASSIVETRANS_RECONNECTSUCCESS: u32 = 32805; +pub const EXCEPTION_PASSIVETRANS: u32 = 32806; +pub const SUCCESS_PUSHDEVLOGON: u32 = 32816; +pub const EXCEPTION_RELOGIN: u32 = 32832; +pub const RELOGIN_SUCCESS: u32 = 32833; +pub const EXCEPTION_PASSIVEDECODE_RECONNNECT: u32 = 32834; +pub const EXCEPTION_CLUSTER_CS_ARMFAILED: u32 = 32835; +pub const EXCEPTION_RELOGIN_FAILED: u32 = 32836; +pub const EXCEPTION_PREVIEW_RECONNECT_CLOSED: u32 = 32837; +pub const EXCEPTION_ALARM_RECONNECT_CLOSED: u32 = 32838; +pub const EXCEPTION_SERIAL_RECONNECT_CLOSED: u32 = 32839; +pub const EXCEPTION_PIC_RECONNECT_CLOSED: u32 = 32840; +pub const EXCEPTION_PASSIVE_DECODE_RECONNECT_CLOSED: u32 = 32841; +pub const EXCEPTION_PASSIVE_TRANS_RECONNECT_CLOSED: u32 = 32842; +pub const EXCEPTION_VIDEO_DOWNLOAD: u32 = 32843; +pub const NET_DVR_SYSHEAD: u32 = 1; +pub const NET_DVR_STREAMDATA: u32 = 2; +pub const NET_DVR_AUDIOSTREAMDATA: u32 = 3; +pub const NET_DVR_STD_VIDEODATA: u32 = 4; +pub const NET_DVR_STD_AUDIODATA: u32 = 5; +pub const NET_DVR_SDP: u32 = 6; +pub const NET_DVR_CHANGE_FORWARD: u32 = 10; +pub const NET_DVR_CHANGE_REVERSE: u32 = 11; +pub const NET_DVR_PLAYBACK_ALLFILEEND: u32 = 12; +pub const NET_DVR_VOD_DRAW_FRAME: u32 = 13; +pub const NET_DVR_VOD_DRAW_DATA: u32 = 14; +pub const NET_DVR_HLS_INDEX_DATA: u32 = 15; +pub const NET_DVR_PLAYBACK_NEW_POS: u32 = 16; +pub const NET_DVR_METADATA_DATA: u32 = 107; +pub const NET_DVR_PRIVATE_DATA: u32 = 112; +pub const DVR: u32 = 1; +pub const ATMDVR: u32 = 2; +pub const DVS: u32 = 3; +pub const DEC: u32 = 4; +pub const ENC_DEC: u32 = 5; +pub const DVR_HC: u32 = 6; +pub const DVR_HT: u32 = 7; +pub const DVR_HF: u32 = 8; +pub const DVR_HS: u32 = 9; +pub const DVR_HTS: u32 = 10; +pub const DVR_HB: u32 = 11; +pub const DVR_HCS: u32 = 12; +pub const DVS_A: u32 = 13; +pub const DVR_HC_S: u32 = 14; +pub const DVR_HT_S: u32 = 15; +pub const DVR_HF_S: u32 = 16; +pub const DVR_HS_S: u32 = 17; +pub const ATMDVR_S: u32 = 18; +pub const DVR_7000H: u32 = 19; +pub const DEC_MAT: u32 = 20; +pub const DVR_MOBILE: u32 = 21; +pub const DVR_HD_S: u32 = 22; +pub const DVR_HD_SL: u32 = 23; +pub const DVR_HC_SL: u32 = 24; +pub const DVR_HS_ST: u32 = 25; +pub const DVS_HW: u32 = 26; +pub const DS630X_D: u32 = 27; +pub const DS640X_HD: u32 = 28; +pub const DS610X_D: u32 = 29; +pub const IPCAM: u32 = 30; +pub const MEGA_IPCAM: u32 = 31; +pub const IPCAM_X62MF: u32 = 32; +pub const ITCCAM: u32 = 35; +pub const IVS_IPCAM: u32 = 36; +pub const ZOOMCAM: u32 = 38; +pub const IPDOME: u32 = 40; +pub const IPDOME_MEGA200: u32 = 41; +pub const IPDOME_MEGA130: u32 = 42; +pub const IPDOME_AI: u32 = 43; +pub const TII_IPCAM: u32 = 44; +pub const IPTC_DOME: u32 = 45; +pub const DS_2DP_Z: u32 = 46; +pub const DS_2DP: u32 = 47; +pub const ITS_WMS: u32 = 48; +pub const IPMOD: u32 = 50; +pub const TRAFFIC_YTDOME: u32 = 51; +pub const TRAFFIC_RDDOME: u32 = 52; +pub const IDS6501_HF_P: u32 = 60; +pub const IDS6101_HF_A: u32 = 61; +pub const IDS6002_HF_B: u32 = 62; +pub const IDS6101_HF_B: u32 = 63; +pub const IDS52XX: u32 = 64; +pub const IDS90XX: u32 = 65; +pub const IDS8104_AHL_S_HX: u32 = 66; +pub const IDS8104_AHL_S_H: u32 = 67; +pub const IDS91XX: u32 = 68; +pub const IIP_CAM_B: u32 = 69; +pub const IIP_CAM_F: u32 = 70; +pub const DS71XX_H: u32 = 71; +pub const DS72XX_H_S: u32 = 72; +pub const DS73XX_H_S: u32 = 73; +pub const DS72XX_HF_S: u32 = 74; +pub const DS73XX_HFI_S: u32 = 75; +pub const DS76XX_H_S: u32 = 76; +pub const DS76XX_N_S: u32 = 77; +pub const DS_TP3200_EC: u32 = 78; +pub const DS81XX_HS_S: u32 = 81; +pub const DS81XX_HL_S: u32 = 82; +pub const DS81XX_HC_S: u32 = 83; +pub const DS81XX_HD_S: u32 = 84; +pub const DS81XX_HE_S: u32 = 85; +pub const DS81XX_HF_S: u32 = 86; +pub const DS81XX_AH_S: u32 = 87; +pub const DS81XX_AHF_S: u32 = 88; +pub const DS90XX_HF_S: u32 = 90; +pub const DS91XX_HF_S: u32 = 91; +pub const DS91XX_HD_S: u32 = 92; +pub const IDS90XX_A: u32 = 93; +pub const IDS91XX_A: u32 = 94; +pub const DS95XX_N_S: u32 = 95; +pub const DS96XX_N_SH: u32 = 96; +pub const DS90XX_HF_SH: u32 = 97; +pub const DS91XX_HF_SH: u32 = 98; +pub const DS_B10_XY: u32 = 100; +pub const DS_6504HF_B10: u32 = 101; +pub const DS_6504D_B10: u32 = 102; +pub const DS_1832_B10: u32 = 103; +pub const DS_6401HFH_B10: u32 = 104; +pub const DS_65XXHC: u32 = 105; +pub const DS_65XXHC_S: u32 = 106; +pub const DS_65XXHF: u32 = 107; +pub const DS_65XXHF_S: u32 = 108; +pub const DS_6500HF_B: u32 = 109; +pub const IVMS_6200_C: u32 = 110; +pub const IVMS_6200_B: u32 = 111; +pub const DS_72XXHV_ST15: u32 = 112; +pub const DS_72XXHV_ST20: u32 = 113; +pub const IVMS_6200_T: u32 = 114; +pub const IVMS_6200_BP: u32 = 115; +pub const DS_81XXHC_ST: u32 = 116; +pub const DS_81XXHS_ST: u32 = 117; +pub const DS_81XXAH_ST: u32 = 118; +pub const DS_81XXAHF_ST: u32 = 119; +pub const DS_66XXDVS: u32 = 120; +pub const DS_1964_B10: u32 = 121; +pub const DS_B10N04_IN: u32 = 122; +pub const DS_B10N04_OUT: u32 = 123; +pub const DS_B10N04_INTEL: u32 = 124; +pub const DS_6408HFH_B10E_RM: u32 = 125; +pub const DS_B10N64F1_RTM: u32 = 126; +pub const DS_B10N64F1D_RTM: u32 = 127; +pub const DS_B10_SDS: u32 = 128; +pub const DS_B10_DS: u32 = 129; +pub const DS_6401HFH_B10V: u32 = 130; +pub const DS_6504D_B10B: u32 = 131; +pub const DS_6504D_B10H: u32 = 132; +pub const DS_6504D_B10V: u32 = 133; +pub const DS_6408HFH_B10S: u32 = 134; +pub const DS_18XX_N: u32 = 135; +pub const DS_6504HF_B10F_CLASS: u32 = 136; +pub const DS_18XX_PTZ: u32 = 141; +pub const DS_19AXX: u32 = 142; +pub const DS_19BXX: u32 = 143; +pub const DS_19CXX: u32 = 144; +pub const DS_19DXX: u32 = 145; +pub const DS_19XX: u32 = 146; +pub const DS_19SXX: u32 = 147; +pub const DS_1HXX: u32 = 148; +pub const DS_PEAXX: u32 = 149; +pub const DS_PWXX: u32 = 150; +pub const DS_PMXX: u32 = 151; +pub const DS_19DXX_S: u32 = 152; +pub const DS_PWAXX: u32 = 153; +pub const DS_PHAXX: u32 = 154; +pub const DS_PHAProXX: u32 = 155; +pub const DS_C10H: u32 = 161; +pub const DS_C10N_BI: u32 = 162; +pub const DS_C10N_DI: u32 = 163; +pub const DS_C10N_SI: u32 = 164; +pub const DS_C10N_DO: u32 = 165; +pub const DS_C10N_SERVER: u32 = 166; +pub const IDS_8104_AHFL_S_H: u32 = 171; +pub const IDS_65XX_HF_A: u32 = 172; +pub const IDS90XX_HF_RH: u32 = 173; +pub const IDS91XX_HF_RH: u32 = 174; +pub const IDS_65XX_HF_B: u32 = 175; +pub const IDS_65XX_HF_P: u32 = 176; +pub const IVMS_6200_F: u32 = 177; +pub const IVMS_6200_A: u32 = 178; +pub const IVMS_6200_F_S: u32 = 179; +pub const DS90XX_HF_RH: u32 = 181; +pub const DS91XX_HF_RH: u32 = 182; +pub const DS78XX_S: u32 = 183; +pub const DS81XXHW_S: u32 = 185; +pub const DS81XXHW_ST: u32 = 186; +pub const DS91XXHW_ST: u32 = 187; +pub const DS91XX_ST: u32 = 188; +pub const DS81XX_ST: u32 = 189; +pub const DS81XXHX_ST: u32 = 190; +pub const DS73XXHX_ST: u32 = 191; +pub const DS81XX_SH: u32 = 192; +pub const DS81XX_SN: u32 = 193; +pub const DS96XXN_ST: u32 = 194; +pub const DS86XXN_ST: u32 = 195; +pub const DS80XXHF_ST: u32 = 196; +pub const DS90XXHF_ST: u32 = 197; +pub const DS76XXN_ST: u32 = 198; +pub const DS_9664N_RX: u32 = 199; +pub const ENCODER_SERVER: u32 = 200; +pub const DECODER_SERVER: u32 = 201; +pub const PCNVR_SERVER: u32 = 202; +pub const CVR_SERVER: u32 = 203; +pub const DS_91XXHFH_ST: u32 = 204; +pub const DS_66XXHFH: u32 = 205; +pub const TRAFFIC_TS_SERVER: u32 = 210; +pub const TRAFFIC_VAR: u32 = 211; +pub const IPCALL: u32 = 212; +pub const SAN_SERVER: u32 = 213; +pub const DS_B11_M_CLASS: u32 = 301; +pub const DS_B12_M_CLASS: u32 = 302; +pub const DS_6504HF_B11_CLASS: u32 = 303; +pub const DS_6504HF_B12_CLASS: u32 = 304; +pub const DS_6401HFH_B11V_CLASS: u32 = 305; +pub const DS_6401HFH_B12V_CLASS: u32 = 306; +pub const DS_6408HFH_B11S_CLASS: u32 = 307; +pub const DS_6408HFH_B12S_CLASS: u32 = 308; +pub const DS_6504D_B11H_CLASS: u32 = 309; +pub const DS_6504D_B11B_CLASS: u32 = 310; +pub const DS_6504D_B12B_CLASS: u32 = 311; +pub const DS_6504D_B11V_CLASS: u32 = 312; +pub const DS_6504D_B12V_CLASS: u32 = 313; +pub const DS_6401HFH_B10R_CLASS: u32 = 314; +pub const DS_6401HFH_B10D_CLASS: u32 = 315; +pub const DS_6401HFH_B10H_CLASS: u32 = 316; +pub const DS_6401HFH_B11R_CLASS: u32 = 317; +pub const DS_6401HFH_B11D_CLASS: u32 = 318; +pub const DS_6401HFH_B11H_CLASS: u32 = 319; +pub const DS_6401HFH_B12R_CLASS: u32 = 320; +pub const DS_6401HFH_B12D_CLASS: u32 = 321; +pub const DS_6401HFH_B12H_CLASS: u32 = 322; +pub const DS_65XXD_B10Ex_CLASS: u32 = 323; +pub const DS_6516HW_B10_CLASS: u32 = 324; +pub const DS_6401HFH_B10F_RX_CLASS: u32 = 326; +pub const DS_6502HW_B10F_RX_CLASS: u32 = 327; +pub const DS_6504D_B11Ex_CLASS: u32 = 328; +pub const DS_6504D_B12Ex_CLASS: u32 = 329; +pub const DS_6512_B11_CLASS: u32 = 330; +pub const DS_6512_B12_CLASS: u32 = 331; +pub const DS_6504D_B10H_CLASS: u32 = 332; +pub const DS_65XXT_B10_CLASS: u32 = 333; +pub const DS_65XXD_B10_CLASS: u32 = 335; +pub const DS_IVMSE_B10X_CLASS: u32 = 336; +pub const DS_6532D_B10ES_CLASS: u32 = 337; +pub const DS_6508HFH_B10ES_CLASS: u32 = 338; +pub const DS_82NCG_CLASS: u32 = 340; +pub const DS_82VAG_CLASS: u32 = 341; +pub const DS_1802XXF_B10_CLASS: u32 = 342; +pub const iDS_6504_B10EVAC_CLASS: u32 = 343; +pub const iDS_6504_B10EDEC_CLASS: u32 = 344; +pub const DS_6402HFH_B10EV_CLASS: u32 = 345; +pub const DS_6402HFH_B10ED_CLASS: u32 = 346; +pub const DS_6402HFH_B10EH_CLASS: u32 = 347; +pub const DS_6404HFH_B10T_RX_CLASS: u32 = 348; +pub const DS_6504D_AIO_CLASS: u32 = 349; +pub const DS_IVMST_B10_CLASS: u32 = 350; +pub const DS_6402_AIO_CLASS: u32 = 351; +pub const DS_iVMSE_AIO_CLASS: u32 = 352; +pub const DS_AIO_M_CLASS: u32 = 353; +pub const DS_6508HF_B10E_CLASS: u32 = 355; +pub const DS_6404HFH_B10ES_CLASS: u32 = 356; +pub const DS_6402HFH_B10ER_CLASS: u32 = 358; +pub const DS_6404HFH_B10T_RM_CLASS: u32 = 361; +pub const DS_6516D_B10EB_CLASS: u32 = 362; +pub const DS_6516D_B10ES_CLASS: u32 = 363; +pub const DS_6508D_B10FH_CLASS: u32 = 364; +pub const DS_6508D_B10FD_CLASS: u32 = 364; +pub const DS_6508D_B10FV_CLASS: u32 = 364; +pub const DS_6508_B11E_CLASS: u32 = 365; +pub const DS_6402_B11ES_CLASS: u32 = 366; +pub const DS_6402_B11EV_CLASS: u32 = 367; +pub const DS_6402_B11ER_CLASS: u32 = 368; +pub const DS_6402_B11ED_CLASS: u32 = 369; +pub const DS_6402_B11EH_CLASS: u32 = 370; +pub const DS_6516D_B11EB_CLASS: u32 = 371; +pub const DS_6516D_B11ES_CLASS: u32 = 372; +pub const DS_6508_B12E_CLASS: u32 = 373; +pub const DS_6402_B12ES_CLASS: u32 = 375; +pub const DS_6402_B12EV_CLASS: u32 = 376; +pub const DS_6402_B12ER_CLASS: u32 = 377; +pub const DS_6402_B12ED_CLASS: u32 = 378; +pub const DS_6402_B12EH_CLASS: u32 = 379; +pub const DS_6516D_B12EB_CLASS: u32 = 380; +pub const DS_iVMSE_AIO_8100x_CLASS: u32 = 381; +pub const DS_iVMSE_AIO_87x_CLASS: u32 = 382; +pub const DS_6532D_B11ES_CLASS: u32 = 384; +pub const DS_6532D_B12ES_CLASS: u32 = 385; +pub const DS_B20_MSU_NP: u32 = 400; +pub const DS_6416HFH_B20S: u32 = 401; +pub const DS_6416HFH_B20_RM: u32 = 402; +pub const DS_6564D_B20D: u32 = 403; +pub const DS_6564D_B20H: u32 = 404; +pub const DS_6564D_B20V: u32 = 405; +pub const DS_B20_6516D_DEV_CLASS: u32 = 406; +pub const DS_6408HFH_B20V: u32 = 407; +pub const DS_MMC_B20_CLASS: u32 = 408; +pub const DS_CARD_CHIP_B20_CLASS: u32 = 409; +pub const DS_6564D_B20B_DEV_CLASS: u32 = 410; +pub const DS_6564D_B20S_DEV_CLASS: u32 = 411; +pub const DS_6532HF_B20B_DEV_CLASS: u32 = 412; +pub const DS_6408HFH_B20D_DEV_CLASS: u32 = 413; +pub const DS_6408HFH_B20H_DEV_CLASS: u32 = 414; +pub const DS_IVMSE_B20_CLASS: u32 = 415; +pub const DS_6402HFH_B20Y_DEV_CLASS: u32 = 416; +pub const DS_6508HW_B20_DEV_CLASS: u32 = 417; +pub const DS_B20N128Fx_B20_DEV_CLASS: u32 = 418; +pub const DS_AIO_MCU_NP_DEV_CLASS: u32 = 419; +pub const DS_6402_AIO_EV_DEV_CLASS: u32 = 420; +pub const DS_6508D_AIO_EV_DEV_CLASS: u32 = 421; +pub const DS_6508D_AIO_ED_DEV_CLASS: u32 = 422; +pub const DS_6508D_AIO_EH_DEV_CLASS: u32 = 423; +pub const DS_6508HD_B20F_DEV_CLASS: u32 = 424; +pub const DS_6402HFH_B20ES_DEV_CLASS: u32 = 425; +pub const DS_6532D_B20_DEV_CLASS: u32 = 426; +pub const DS_IVMST_B20_DEV_CLASS: u32 = 427; +pub const DS_6416HFH_B20DD_DEV_CLASS: u32 = 428; +pub const DS_6441VS_B20_DEV_CLASS: u32 = 429; +pub const DS_6404HFH_B20T_CLASS: u32 = 431; +pub const DS_FS22_B20_DEV_CLASS: u32 = 432; +pub const DS_IVMSE_B20UH_DEV_CLASS: u32 = 433; +pub const IDS_6524J_B20_DEV_CLASS: u32 = 434; +pub const IDS_6532B_B20_DEV_CLASS: u32 = 435; +pub const DS_6404HFH_B20Fx_DEV_CLASS: u32 = 436; +pub const DS_N128x_B20Fy_CLASS: u32 = 437; +pub const DS_181600F_B20_CLASS: u32 = 438; +pub const DS_6904UD_B20H_CLASS: u32 = 439; +pub const DS_B21_MCU_NP_CLASS: u32 = 440; +pub const DS_B21_S10_x_CLASS: u32 = 441; +pub const DS_6402HFH_B21D_CLASS: u32 = 442; +pub const DS_6508HD_B21D_CLASS: u32 = 443; +pub const DS_iVMSE_B21HW_CLASS: u32 = 444; +pub const DS_C10S: u32 = 501; +pub const DS_C3X: u32 = 502; +pub const DS_C10N_SDI: u32 = 551; +pub const DS_C10N_BIW: u32 = 552; +pub const DS_C10N_DON: u32 = 553; +pub const DS_C10N_TVI: u32 = 554; +pub const DS_C10N_DI2: u32 = 555; +pub const DS_C10N_AUDIO_OUT: u32 = 556; +pub const DS_C10N_AUDIO_IN: u32 = 557; +pub const DS_C20N: u32 = 570; +pub const DS_C20N_BNC: u32 = 571; +pub const DS_C20N_DVI: u32 = 572; +pub const DS_C20N_DP: u32 = 573; +pub const DS_C20N_OUT: u32 = 574; +pub const DS_C30: u32 = 5301; +pub const DS_C31: u32 = 5302; +pub const DS_M0804: u32 = 5303; +pub const DS_C20N_VWMS: u32 = 5351; +pub const DS_C20N_DI2: u32 = 5352; +pub const DS_C20N_DO2: u32 = 5353; +pub const DS_C20N_UHDI: u32 = 5354; +pub const DS_C20N_YI2: u32 = 5355; +pub const DS_C12N_VWMS: u32 = 5356; +pub const DS_C12N_DO: u32 = 5357; +pub const DS_C12N_HOE: u32 = 5358; +pub const DS_C20N_HI2: u32 = 5359; +pub const DS_C20N_VI2: u32 = 5360; +pub const DS_C20N_SI2: u32 = 5361; +pub const DS_C20N_HO2: u32 = 5362; +pub const DS_C20N_S24G: u32 = 5363; +pub const DS_C20N_S24X: u32 = 5364; +pub const DS_C12A_0104H: u32 = 5365; +pub const DS_C20N_DO2_V2: u32 = 5366; +pub const DS_C20N_HO2_V2: u32 = 5367; +pub const DS_C21N: u32 = 5368; +pub const DS_C21K: u32 = 5369; +pub const DS_68TS_A: u32 = 5370; +pub const DS_C22N_UHDI: u32 = 5371; +pub const DS_C21N_UHDI_T: u32 = 5372; +pub const DS_C22N_HI1: u32 = 5373; +pub const DS_C22N_HO1: u32 = 5374; +pub const DS_D1HXX: u32 = 5591; +pub const DS_60SDL_X: u32 = 5592; +pub const DS_6043DL_B: u32 = 5593; +pub const DS_6049DL_B: u32 = 5594; +pub const DS_6055DL_B: u32 = 5595; +pub const ELEVATO_BRIDGE: u32 = 5751; +pub const DS_3WF01S_5NG_M: u32 = 5752; +pub const DS_3WF0EC_2N_D: u32 = 5753; +pub const DS_3WF0EC_5ACT: u32 = 5754; +pub const DS_3WF03S_5AC: u32 = 5755; +pub const DS_3WF0ES_5AC_H: u32 = 5756; +pub const DS_3WF05S_5AC_H: u32 = 5765; +pub const DS_3WSXXX: u32 = 5766; +pub const DS_3WAXXX: u32 = 5767; +pub const DS_3WAXXXP: u32 = 5768; +pub const DS_3WRXXX: u32 = 5769; +pub const DS_3WMRXXX: u32 = 5770; +pub const DS_3WAX18: u32 = 5881; +pub const DS_3CXXXX: u32 = 5891; +pub const DS_19M00_MN: u32 = 601; +pub const DS_KH8302_A: u32 = 602; +pub const DS_KD8101_2: u32 = 603; +pub const DS_KM8301: u32 = 604; +pub const DS_KVXXXX_XX: u32 = 605; +pub const DS_LHPM1D_C: u32 = 606; +pub const DS_KAM03: u32 = 607; +pub const DS_KDXXX: u32 = 608; +pub const DS64XXHD_T: u32 = 701; +pub const DS_65XXD: u32 = 703; +pub const DS63XXD_T: u32 = 704; +pub const SCE_SERVER: u32 = 705; +pub const DS_64XXHD_S: u32 = 706; +pub const DS_68XXT: u32 = 707; +pub const DS_65XXD_T: u32 = 708; +pub const DS_65XXHD_T: u32 = 709; +pub const DS_69XXUD: u32 = 710; +pub const DS_65XXUD: u32 = 711; +pub const DS_65XXUD_L: u32 = 712; +pub const DS_65XXUD_T: u32 = 713; +pub const DS_D20XX: u32 = 750; +pub const DS_C50S: u32 = 751; +pub const DS_D50XX: u32 = 752; +pub const DS_D40: u32 = 760; +pub const DS_65VMXX: u32 = 770; +pub const DS_65VTXX: u32 = 771; +pub const DS_65VTA: u32 = 772; +pub const DS_65VT_RX: u32 = 773; +pub const DS_65VM_MCU_NP: u32 = 774; +pub const DS_CS_SERVER: u32 = 800; +pub const DS_68GAP_MCU: u32 = 831; +pub const DS_K260X: u32 = 850; +pub const DS_K1TXXX: u32 = 851; +pub const DS_K280X: u32 = 852; +pub const DS_K1T80X: u32 = 854; +pub const RAC_6X00: u32 = 856; +pub const DS_K2602_AX: u32 = 857; +pub const DS_K1T803F: u32 = 858; +pub const DS_K2700: u32 = 859; +pub const DS_K270X: u32 = 860; +pub const DS_K1T500S: u32 = 861; +pub const DS_K1A801F: u32 = 862; +pub const DS_K1T600X: u32 = 863; +pub const DS_K22X: u32 = 864; +pub const DS_K2M0016AX: u32 = 865; +pub const DS_K2602S_AX: u32 = 867; +pub const DS_K560XX: u32 = 870; +pub const DS_K260X_E: u32 = 873; +pub const DS_K5603X: u32 = 874; +pub const DS_K3M200X: u32 = 875; +pub const DS_K3M100X: u32 = 879; +pub const DS_K1T8101XT: u32 = 881; +pub const DS_K1T8101XX: u32 = 882; +pub const DS_K5604: u32 = 883; +pub const DS_K1T607XXXX: u32 = 884; +pub const DS_K1A850X: u32 = 885; +pub const DS_K1T800X: u32 = 886; +pub const DS_K1T610XXXX: u32 = 887; +pub const DS_K1T8115X: u32 = 888; +pub const DS_K1T815LC_M: u32 = 889; +pub const DS_K1T606M_Z: u32 = 890; +pub const DS_K5607_XXX: u32 = 891; +pub const DS_K1T950MX: u32 = 893; +pub const DS_K1T331XX: u32 = 894; +pub const DS_K1T671T: u32 = 895; +pub const DS_K1T671: u32 = 896; +pub const DS_K5671: u32 = 897; +pub const DS_K1T640: u32 = 898; +pub const DS_K1A802A: u32 = 899; +pub const DS_6800M: u32 = 900; +pub const DS_68NTH: u32 = 901; +pub const DS_D60S: u32 = 902; +pub const DS_D60W: u32 = 903; +pub const DS_D10: u32 = 931; +pub const DS_3K0X_NM: u32 = 951; +pub const DS_3E2328: u32 = 952; +pub const DS_3E1528: u32 = 953; +pub const SCREEN_LINK_SERVER: u32 = 971; +pub const DS_D51OPSXX: u32 = 972; +pub const IP_PTSYS_MEGA200: u32 = 1001; +pub const IPCAM_FISHEYE: u32 = 1002; +pub const IPCAM_FISHEYE_E: u32 = 1003; +pub const IPCAM_BINOCULAR: u32 = 1004; +pub const IPCAM_365: u32 = 1010; +pub const IPCAM_R0: u32 = 1011; +pub const IPCAM_R1: u32 = 1012; +pub const IPCAM_R2: u32 = 1013; +pub const IPCAM_R3: u32 = 1014; +pub const IPCAM_R4: u32 = 1015; +pub const IPDOME_365: u32 = 1110; +pub const IPDOME_R0: u32 = 1111; +pub const IPDOME_R1: u32 = 1112; +pub const IPDOME_R2: u32 = 1113; +pub const IPDOME_R3: u32 = 1114; +pub const IPDOME_R4: u32 = 1115; +pub const ITCCAM_R3: u32 = 1211; +pub const UAV_S: u32 = 1300; +pub const TRAFFIC_ECT: u32 = 1400; +pub const TRAFFIC_PARKING_SERVER: u32 = 1401; +pub const TRAFFIC_TME: u32 = 1402; +pub const DS90XXHW_ST: u32 = 2001; +pub const DS72XXHX_SH: u32 = 2002; +pub const DS_92XX_HF_ST: u32 = 2003; +pub const DS_91XX_HF_XT: u32 = 2004; +pub const DS_90XX_HF_XT: u32 = 2005; +pub const DS_73XXHX_SH: u32 = 2006; +pub const DS_72XXHFH_ST: u32 = 2007; +pub const DS_67XXHF_SATA: u32 = 2008; +pub const DS_67XXHW: u32 = 2009; +pub const DS_67XXHW_SATA: u32 = 2010; +pub const DS_67XXHF: u32 = 2011; +pub const DS_72XXHF_SV: u32 = 2012; +pub const DS_72XXHW_SV: u32 = 2013; +pub const DS_81XXHX_SH: u32 = 2014; +pub const DS_71XXHX_SL: u32 = 2015; +pub const DS_76XXH_ST: u32 = 2016; +pub const DS_73XXHFH_ST: u32 = 2017; +pub const DS_81XXHFH_ST: u32 = 2018; +pub const DS_72XXHFH_SL: u32 = 2019; +pub const DS_FDXXCGA_FLT: u32 = 2020; +pub const IDS_91XX_HF_ST_A: u32 = 2100; +pub const IDS_91XX_HF_ST_B: u32 = 2101; +pub const IDS_90XX_HF_ST_A: u32 = 2102; +pub const IDS_90XX_HF_ST_B: u32 = 2103; +pub const IDS_81XX_HF_ST_A: u32 = 2104; +pub const IDS_81XX_HF_ST_B: u32 = 2105; +pub const IDS_80XX_HF_ST_A: u32 = 2106; +pub const IDS_80XX_HF_ST_B: u32 = 2107; +pub const IDS_8104_AHFL_ST: u32 = 2108; +pub const IDS_2CD6812F_C: u32 = 2109; +pub const DS_77XXN_ST: u32 = 2201; +pub const DS_95XX_N_ST: u32 = 2202; +pub const DS_85XX_N_ST: u32 = 2203; +pub const DS_96XX_N_XT: u32 = 2204; +pub const DS_76XX_N_SE: u32 = 2205; +pub const DS_86XXSN_SX: u32 = 2206; +pub const DS_71XXN_SL: u32 = 2208; +pub const CS_N1_1XX: u32 = 2209; +pub const DS_71XXN_SN: u32 = 2210; +pub const CS_N1_2XX: u32 = 2211; +pub const DS_76XX_N_SHT: u32 = 2212; +pub const DS_96XXX_N_E: u32 = 2213; +pub const DS_76XXN_EX: u32 = 2214; +pub const DS_77XXN_E4: u32 = 2215; +pub const DS_86XXN_E8: u32 = 2216; +pub const DS_9616N_H8: u32 = 2217; +pub const DS_72XXHX_EX_GXY: u32 = 2218; +pub const DS_76XXN_EX_GXY: u32 = 2219; +pub const DS_72XXHXH_SH_21: u32 = 2220; +pub const DS_72XXHXH_SH_31: u32 = 2221; +pub const DS_73XXHXH_SH_31: u32 = 2222; +pub const DS_81XXHXH_SH_31: u32 = 2223; +pub const DS_71XXHXH_SH_21: u32 = 2224; +pub const DS_71XXHXH_SH_31: u32 = 2225; +pub const DS_NBXX_N_E1_X: u32 = 2226; +pub const DS_96XXN_FX: u32 = 2230; +pub const DS_86XXN_FX: u32 = 2231; +pub const DS_96XXXN_HX: u32 = 2232; +pub const DS_86XXN_I: u32 = 2233; +pub const DS_77XX_N_I: u32 = 2234; +pub const DS_76XX_N_I: u32 = 2235; +pub const DS_78XX_N_I: u32 = 2236; +pub const DS_96XXXN_IX: u32 = 2237; +pub const DS_90XXHXH_XT: u32 = 2238; +pub const DS_NVR_ALL: u32 = 2239; +pub const DS_DVR_ALL: u32 = 2240; +pub const PCNVR_IVMS_4200: u32 = 2301; +pub const IVMS_6200_TP: u32 = 2401; +pub const IVMS_6200_TF: u32 = 2402; +pub const IVMS_6200_D: u32 = 2403; +pub const IDS_81XXAHW_ST: u32 = 2405; +pub const IDS_81XXAHW_SP: u32 = 2406; +pub const IDS_81XXAHWL_ST: u32 = 2407; +pub const IDS_81XXAHWL_SP: u32 = 2408; +pub const IDS_9616N_H8: u32 = 2409; +pub const IVMS_6200_SMD: u32 = 2500; +pub const DS_81XXAHW_ST: u32 = 2501; +pub const DS_81XXAHW_SP: u32 = 2502; +pub const DS_81XXAHWL_ST: u32 = 2503; +pub const DS_81XXAHWL_SP: u32 = 2504; +pub const DS_81XXAHGH_E4: u32 = 2601; +pub const DS_6904UD_AIOE_H_CLASS: u32 = 4002; +pub const DS_6402HFH_B21B_CLASS: u32 = 4005; +pub const DS_6902UD_B21H_CLASS: u32 = 4006; +pub const DS_6902UD_B21D_CLASS: u32 = 4007; +pub const DS_6902UD_B21V_CLASS: u32 = 4008; +pub const DS_6904UD_B20D_CLASS: u32 = 4010; +pub const DS_6904UD_B20V_CLASS: u32 = 4011; +pub const DS_B30_MCU: u32 = 4012; +pub const DS_B30_SW: u32 = 4013; +pub const DS_B30_04XI: u32 = 4014; +pub const DS_B30_04XO: u32 = 4015; +pub const DS_B31: u32 = 4016; +pub const DS_AIOH_MCU_NP: u32 = 4042; +pub const DS_6404HFH_AIOH_D: u32 = 4043; +pub const DS_6908UD_AIOH_D: u32 = 4044; +pub const DS_6908UD_AIOH_H: u32 = 4045; +pub const DS_69XXUD_B: u32 = 4046; +pub const DS_6404HFH_I: u32 = 4047; +pub const DS_6904UD_O: u32 = 4048; +pub const DS_C12L_0204H: u32 = 4060; +pub const DS_D1A24FDI: u32 = 4101; +pub const DS_69XXHD: u32 = 5001; +pub const DS_69UD_V2: u32 = 5002; +pub const DS_69UD_T: u32 = 5003; +pub const DS_6AUD: u32 = 5004; +pub const DS_68VTG: u32 = 5401; +pub const DS_65VT0010: u32 = 5571; +pub const DS_65VM_MCU: u32 = 5572; +pub const DS_65VM_MPC: u32 = 5573; +pub const DS_65VT2XXYR_SF: u32 = 5574; +pub const DS_65VT0XXY: u32 = 5575; +pub const DS_65VT0010Z: u32 = 5576; +pub const DS_65VT0050Z: u32 = 5577; +pub const DS_65VS0XXXS: u32 = 5878; +pub const DS_65VS0XXXM: u32 = 5579; +pub const DS_65VM00XX_X: u32 = 5580; +pub const DS_65VA800_BOX: u32 = 5581; +pub const DS_65VT0020S: u32 = 5582; +pub const DS_65VT0020D: u32 = 5583; +pub const DS_65VM00XX_G: u32 = 5584; +pub const DS_65VM0000_GPU: u32 = 5585; +pub const DS_65VTA011: u32 = 5586; +pub const DS_65VCP1100M_S: u32 = 5587; +pub const Z_MINISMC_01: u32 = 5588; +pub const DS_65VCAXX: u32 = 5590; +pub const DS_65VTR00X0: u32 = 5791; +pub const DS_65VA800AM_S: u32 = 5792; +pub const DS_65VAM0100UB: u32 = 5793; +pub const DS_65VA800SW: u32 = 5794; +pub const DS_65VTA22XX_X: u32 = 5795; +pub const DS_65VCAXXXX: u32 = 5796; +pub const DS_Y10_MCU: u32 = 5771; +pub const DS_Y10_SW1: u32 = 5772; +pub const DS_6516UD_Y10D: u32 = 5773; +pub const DS_6532UD_Y10D: u32 = 5774; +pub const DS_6E2724_Y10: u32 = 5775; +pub const DS_68SAA_AA_Y10: u32 = 5776; +pub const DS_68SBA_AA_Y10: u32 = 5777; +pub const DS_68SCA_AA_Y10: u32 = 5778; +pub const DS_68GPU_A1_Y10: u32 = 5779; +pub const DS_CPU_SERVER: u32 = 5780; +pub const DS_GPU_SERVER: u32 = 5781; +pub const DS_BIGDATA_SERVER: u32 = 5782; +pub const DS_B80_MCU: u32 = 5821; +pub const DS_B80_SW: u32 = 5822; +pub const DS_B80_SR_01: u32 = 5823; +pub const DS_B80_AI04: u32 = 5824; +pub const DS_B80_ST: u32 = 5825; +pub const DS_B80_D04: u32 = 5826; +pub const DS_B80_BNC08: u32 = 5827; +pub const DS_B80_SDI08: u32 = 5828; +pub const DS_B80_VP: u32 = 5829; +pub const DS_B80_VO02: u32 = 5830; +pub const DS_B81_MCU: u32 = 5831; +pub const DS_B81_AI: u32 = 5832; +pub const DS_B81_TVI: u32 = 5833; +pub const DS_B81_APL: u32 = 5834; +pub const DS_B81_D08T: u32 = 5835; +pub const DS_B85: u32 = 5836; +pub const DS_B86: u32 = 5837; +pub const AX_GW100_V16A00M: u32 = 5838; +pub const DS_B81_AT_M: u32 = 5839; +pub const DS_3LGCX: u32 = 5841; +pub const DS_3LGRX: u32 = 5842; +pub const DS_3LGT4: u32 = 5843; +pub const DS_3LGT40_N: u32 = 5844; +pub const DS_3LGS_I: u32 = 5845; +pub const DS_3E11XX: u32 = 5681; +pub const DS_3E13XX: u32 = 5682; +pub const DS_3E15XX: u32 = 5683; +pub const DS_3E11XXP: u32 = 5684; +pub const DS_3E13XXP: u32 = 5685; +pub const DS_3E15XXP: u32 = 5686; +pub const DS_3E1520U: u32 = 5687; +pub const DS_3EODM_H: u32 = 5688; +pub const DS_3EODM_W: u32 = 5689; +pub const DS_3T1XXX: u32 = 5690; +pub const DS_3E2XXX: u32 = 5861; +pub const DS_3E2XXXP: u32 = 5862; +pub const DS_3E3XXX: u32 = 5863; +pub const DS_3E3XXXP: u32 = 5864; +pub const DS_3D01R_NM: u32 = 5691; +pub const DS_3D01T_NM: u32 = 5692; +pub const DS_3K02_RNM: u32 = 5693; +pub const IDS_90XX_HXH_XX_S: u32 = 6001; +pub const IDS_90XX_HXH_XX_FA: u32 = 6002; +pub const DS_81XX_SHXL_K4: u32 = 6101; +pub const DS_8116THFHL_F4: u32 = 6201; +pub const DS_81XXAHQ_E4: u32 = 6301; +pub const IDS_81XXAHQ_E4: u32 = 6302; +pub const IDS_86XX_NX_A: u32 = 7501; +pub const IDS_96XX_NX_S: u32 = 7502; +pub const IDS_96XX_NX_V: u32 = 7503; +pub const IDS_96XX_NX_FA: u32 = 7504; +pub const IDS_86XX_NX_IX_B: u32 = 7505; +pub const IDS_67XX_NX_S_X: u32 = 7506; +pub const NP_ST204_X_: u32 = 7507; +pub const NP_ST_ANJIAN: u32 = 7508; +pub const IDS_ECDXX_HE: u32 = 8001; +pub const IDS_ECDXX_HT: u32 = 8002; +pub const IDS_ECDXX_E: u32 = 8101; +pub const IDS_EPTXX_HF: u32 = 8201; +pub const DS_2CD69XXX_I: u32 = 8351; +pub const DS_TRIXX: u32 = 8471; +pub const DS_K1F600_D6EXX: u32 = 10501; +pub const DS_K1T341: u32 = 10502; +pub const DS_K1T641XXX: u32 = 10503; +pub const DS_K1T642XXX: u32 = 10504; +pub const DS_K1T601: u32 = 10505; +pub const DS_K1T672XXX: u32 = 10506; +pub const DS_K56A0X: u32 = 10507; +pub const DS_K56Q_F70: u32 = 10508; +pub const DS_K1T6Q_F70M: u32 = 10509; +pub const DS_K1T6Q_F40X: u32 = 10510; +pub const DS_K5604A_XXX: u32 = 10511; +pub const DS_K1A330X: u32 = 10512; +pub const DS_K1T804A: u32 = 10513; +pub const DS_K1T202: u32 = 10514; +pub const DS_K1T343MX: u32 = 10515; +pub const DS_K1T331W_D: u32 = 10516; +pub const DS_K1T671WX_D: u32 = 10517; +pub const DS_K1T680X: u32 = 10518; +pub const DS_K1T640A: u32 = 10519; +pub const DS_K1F600U_D6E_X: u32 = 10520; +pub const DS_K1T671AMX: u32 = 10521; +pub const DS_VISITORXX: u32 = 10530; +pub const DS_FACE_PAYMENT_TERMINALXX: u32 = 10531; +pub const DS_K1T341B_T: u32 = 10532; +pub const DS_K1T343: u32 = 10533; +pub const DS_K1T673: u32 = 10534; +pub const DS_K1T981: u32 = 10535; +pub const DS_K5680X: u32 = 10536; +pub const DS_K5022A_X: u32 = 10537; +pub const DS_K1T342: u32 = 10538; +pub const DS_K1T690: u32 = 10539; +pub const DS_K1T340: u32 = 10540; +pub const DS_K1T6QT_F72: u32 = 10541; +pub const DS_K1T641A: u32 = 10542; +pub const DS_K1TACS: u32 = 10543; +pub const DS_K1T6_GS3: u32 = 10544; +pub const DS_K1T6Q_F41_3XF: u32 = 10545; +pub const DS_K56A1X: u32 = 10546; +pub const DS_K1T320MFW: u32 = 10547; +pub const DS_K5033X: u32 = 10548; +pub const DS_K1T681X: u32 = 10550; +pub const DS_K5670X: u32 = 10551; +pub const DS_K3501: u32 = 10601; +pub const DS_K6600X: u32 = 10651; +pub const DS_KL_CABINET: u32 = 10701; +pub const DS_K3B961: u32 = 10801; +pub const DS_KBS6XXX_WX: u32 = 11001; +pub const DS_KBC6XXX_X: u32 = 11002; +pub const DS_KBI6000_P: u32 = 11003; +pub const DS_KBA6XXX: u32 = 11004; +pub const DS_IEXX_E_J: u32 = 11501; +pub const IDS_67XX_NX_A: u32 = 12501; +pub const IDS_67XX_NX_L: u32 = 12502; +pub const IDS_ENIXX_XHE: u32 = 12503; +pub const IDS_67XX_NX_V: u32 = 12504; +pub const IDS_67XX_NX_B: u32 = 12505; +pub const DS_IE63XX_E_FA: u32 = 13001; +pub const DS_DS_GPKIA: u32 = 13002; +pub const DS_DS_PURE: u32 = 13003; +pub const DS_DS_FS: u32 = 13004; +pub const DS_DS_FD: u32 = 13005; +pub const DS_DS_BLADE: u32 = 13006; +pub const DS_DS_HMCP: u32 = 13007; +pub const DS_LNX_RF: u32 = 13501; +pub const DS_PA_RADAR: u32 = 13551; +pub const DS_PERIMETER_RADAR: u32 = 13552; +pub const DS_SECURITY_RADAR: u32 = 13553; +pub const DS_IMAGING_RADAR_PANEL: u32 = 13554; +pub const DS_N1104X: u32 = 14001; +pub const DS_N1103X: u32 = 14002; +pub const NP_FSC201: u32 = 14003; +pub const NP_FDC240: u32 = 14004; +pub const DS_N1107: u32 = 14005; +pub const NP_FAXXX: u32 = 14006; +pub const NP_FVY100: u32 = 14007; +pub const NP_FVW100: u32 = 14008; +pub const NP_FVG100: u32 = 14009; +pub const NP_FVY300: u32 = 14010; +pub const NP_FVR212_P: u32 = 14011; +pub const NP_FVR213_P: u32 = 14012; +pub const NP_ST204_X: u32 = 14501; +pub const ISD_SG2XXL_X: u32 = 14502; +pub const ISD_SL300T: u32 = 14503; +pub const IPA: u32 = 15001; +pub const DEV_CLASS_DVR: u32 = 1; +pub const DEV_CLASS_INTERROGATION: u32 = 2; +pub const DEV_CLASS_SIMPLE_TRAIL: u32 = 3; +pub const DEV_CLASS_TRAIL: u32 = 4; +pub const DEV_CLASS_RECORD_PLAY: u32 = 5; +pub const DEV_CLASS_ATM: u32 = 6; +pub const DEV_CLASS_DVS: u32 = 51; +pub const DEV_CLASS_NVR: u32 = 101; +pub const DEV_CLASS_GUN: u32 = 151; +pub const DEV_CLASS_BALL: u32 = 152; +pub const DEV_CLASS_SNAP: u32 = 153; +pub const DEV_CLASS_INTELLI_TILT: u32 = 154; +pub const DEV_CLASS_FISH_EYE: u32 = 155; +pub const DEV_CLASS_2DP_Z: u32 = 156; +pub const DEV_CLASS_2DP: u32 = 157; +pub const DEV_CLASS_PT: u32 = 158; +pub const DEV_CLASS_TRI: u32 = 159; +pub const DEV_CLASS_CVR: u32 = 201; +pub const DEV_CLASS_B20: u32 = 251; +pub const DEV_CLASS_B10: u32 = 252; +pub const DEV_CLASS_DECODER: u32 = 253; +pub const DEV_CLASS_MATRIXMANAGEDEVICE: u32 = 254; +pub const DEV_CLASS_OTICAL: u32 = 255; +pub const DEV_CLASS_CODESPITTER: u32 = 256; +pub const DEV_CLASS_ALARMHOST: u32 = 257; +pub const DEV_CLASS_MOVING_RING: u32 = 258; +pub const DEV_CLASS_CVCS: u32 = 259; +pub const DEV_CLASS_DVCS: u32 = 260; +pub const DEV_CLASS_TRANSCODER: u32 = 261; +pub const DEV_CLASS_LCD_SCREEN: u32 = 262; +pub const DEV_CLASS_LED_SCREEN: u32 = 263; +pub const DEV_CLASS_MATRIX: u32 = 264; +pub const DEV_CLASS_CONFERENCE_SYSTEM: u32 = 265; +pub const DEV_CLASS_INFORMATION_RELEASE_EQUIPMENT: u32 = 266; +pub const DEV_CLASS_NET_GAP: u32 = 267; +pub const DEV_CLASS_MERGE: u32 = 268; +pub const DEV_CLASS_REAR_PROJECTION: u32 = 269; +pub const DEV_CLASS_SWITCH: u32 = 270; +pub const DEV_CLASS_FIBER_CONVERTER: u32 = 271; +pub const DEV_CLASS_SCREEN_SERVER: u32 = 272; +pub const DEV_CLASS_SCE_SERVER: u32 = 273; +pub const DEV_CLASS_WIRELESS_TRANS: u32 = 274; +pub const DEV_CLASS_Y10_SERIES: u32 = 275; +pub const DEV_CLASS_SAFETY_MAVHINE: u32 = 276; +pub const DEV_CLASS_IOTGATEWAY: u32 = 277; +pub const DEV_CLASS_NET_MANAGEMENT_EQUIPMENT: u32 = 278; +pub const DEV_CLASS_PUBLISH_SIGNAGE: u32 = 279; +pub const DEV_CLASS_AR_MACHINE: u32 = 280; +pub const DEV_CLASS_VIDEO_ALARM_HOST: u32 = 301; +pub const DEV_CLASS_NET_ALARM_HOST: u32 = 302; +pub const DEV_CLASS_ONE_KEY_ALARM: u32 = 303; +pub const DEV_CLASS_WIRELESS_ALARM_HOST: u32 = 304; +pub const DEV_CLASS_ALARM_MODULE: u32 = 305; +pub const DEV_CLASS_HOME_ALARM_HOST: u32 = 306; +pub const DEV_CLASS_HYBRID_ALARM_HOST: u32 = 307; +pub const DEV_CLASS_NETWORK_RECEIVER: u32 = 308; +pub const DEV_CLASS_ACCESS_CONTROL: u32 = 351; +pub const DEV_CLASS_VISITOR: u32 = 352; +pub const DEV_CLASS_FACE_PAYMENT_TERMINALXX: u32 = 353; +pub const DEV_CLASS_CABINET: u32 = 354; +pub const DEV_CLASS_LADDER_CONTROL: u32 = 355; +pub const DEV_CLASS_PERSONNEL_CHANNEL: u32 = 356; +pub const DEV_CLASS_VIDEO_INTERCOM: u32 = 401; +pub const DEV_CLASS_UMMANNED_AERIAL_VEHICLE: u32 = 451; +pub const DEV_CLASS_MOBILE: u32 = 501; +pub const DEV_CLASS_MOBILE_VEHICLE: u32 = 551; +pub const DEV_CLASS_INTELLIGENT_ANALYZER: u32 = 601; +pub const DEV_CLASS_INTELLIGENT_TRAFFIC_SERVER: u32 = 651; +pub const DS_TP2200_EC: u32 = 652; +pub const DEV_CLASS_NVS: u32 = 701; +pub const DS_TRI21A_1_P: u32 = 751; +pub const DS_CLASS_FA: u32 = 801; +pub const DS_CLASS_PURE: u32 = 802; +pub const DS_CLASS_FS: u32 = 803; +pub const DS_CLASS_FD: u32 = 804; +pub const DS_CLASS_HAWK: u32 = 805; +pub const DS_CLASS_BLADE: u32 = 806; +pub const DS_CLASS_HMCP: u32 = 807; +pub const DEV_CLASS_SMART_LOCK: u32 = 851; +pub const DEV_CLASS_RADAR: u32 = 901; +pub const DEV_CLASS_FIRE_CONTROL: u32 = 951; +pub const DEV_CLASS_SECURITY_CHECK: u32 = 1001; +pub const DEV_CLASS_CONFERENCE_TABLET: u32 = 1051; +pub const DEV_CLASS_JUDICIAL_TABLET: u32 = 1101; +pub const iDS_PT: u32 = 8451; +pub const DS_XCM1_IP: u32 = 9851; +pub const DEV_CLASS_DEFAULT: u32 = 65534; +pub const DEVICE_SOFTHARDWARE_ABILITY: u32 = 1; +pub const DEVICE_NETWORK_ABILITY: u32 = 2; +pub const DEVICE_ENCODE_ALL_ABILITY: u32 = 3; +pub const DEVICE_ENCODE_CURRENT: u32 = 4; +pub const IPC_FRONT_PARAMETER: u32 = 5; +pub const IPC_UPGRADE_DESCRIPTION: u32 = 6; +pub const DEVICE_RAID_ABILITY: u32 = 7; +pub const DEVICE_ENCODE_ALL_ABILITY_V20: u32 = 8; +pub const IPC_FRONT_PARAMETER_V20: u32 = 9; +pub const DEVICE_ALARM_ABILITY: u32 = 10; +pub const DEVICE_DYNCHAN_ABILITY: u32 = 11; +pub const DEVICE_USER_ABILITY: u32 = 12; +pub const DEVICE_NETAPP_ABILITY: u32 = 13; +pub const DEVICE_VIDEOPIC_ABILITY: u32 = 14; +pub const DEVICE_JPEG_CAP_ABILITY: u32 = 15; +pub const DEVICE_SERIAL_ABILITY: u32 = 16; +pub const DEVICE_ABILITY_INFO: u32 = 17; +pub const STREAM_ABILITY: u32 = 18; +pub const SYSTEM_MANAGEMENT_ABILITY: u32 = 19; +pub const IP_VIEW_DEV_ABILITY: u32 = 20; +pub const VCA_DEV_ABILITY: u32 = 256; +pub const VCA_CHAN_ABILITY: u32 = 272; +pub const TRANSFER_ABILITY: u32 = 288; +pub const MATRIXDECODER_ABILITY: u32 = 512; +pub const VIDEOPLATFORM_ABILITY: u32 = 528; +pub const VIDEOPLATFORM_SBUCODESYSTEM_ABILITY: u32 = 529; +pub const WALL_ABILITY: u32 = 530; +pub const MATRIX_ABILITY: u32 = 531; +pub const DECODECARD_ABILITY: u32 = 544; +pub const VIDEOPLATFORM_ABILITY_V40: u32 = 560; +pub const MATRIXMANAGEDEVICE_ABILITY: u32 = 576; +pub const MATRIXDECODER_ABILITY_V41: u32 = 608; +pub const DECODER_ABILITY: u32 = 609; +pub const DECODECARD_ABILITY_V41: u32 = 624; +pub const CODECARD_ABILITY: u32 = 625; +pub const SNAPCAMERA_ABILITY: u32 = 768; +pub const ITC_TRIGGER_MODE_ABILITY: u32 = 769; +pub const COMPRESSIONCFG_ABILITY: u32 = 1024; +pub const COMPRESSION_LIMIT: u32 = 1025; +pub const PIC_CAPTURE_ABILITY: u32 = 1026; +pub const ALARMHOST_ABILITY: u32 = 1280; +pub const IT_DEVICE_ABILITY: u32 = 1281; +pub const SCREENCONTROL_ABILITY: u32 = 1536; +pub const SCREENSERVER_ABILITY: u32 = 1552; +pub const FISHEYE_ABILITY: u32 = 1792; +pub const LCD_SCREEN_ABILITY: u32 = 2048; +pub const ACS_ABILITY: u32 = 2049; +pub const MERGEDEV_ABILITY: u32 = 2050; +pub const CAM_FUSION_ABILITY: u32 = 2051; +pub const OPTICAL_DEV_ACCESS_ABILITY: u32 = 2053; +pub const NET_RING_ABILITY: u32 = 2054; +pub const LED_ABILITY: u32 = 2055; +pub const PUBLISHDEV_ABILITY: u32 = 2058; +pub const SCREEN_EXCHANGE_ABILITY: u32 = 2059; +pub const REMOTE_NETMGR_FOT_ABILITY: u32 = 2062; +pub const EXCEPTION_MAJOR_MAINBOARD_BOOT: u32 = 1; +pub const EXCEPTION_MINOR_PCIE_SCAN: u32 = 1; +pub const EXCEPTION_MINOR_DOWNLOAD_SUBBOARD: u32 = 10; +pub const EXCEPTION_MAJOR_SUBBOARD_BOOT: u32 = 2; +pub const EXCEPTION_MINOR_INEXISTENCE: u32 = 1; +pub const EXCEPTION_MINOR_UBOOT_DOWNLOAD: u32 = 10; +pub const EXCEPTION_MINOR_UBOOT_INIT: u32 = 14; +pub const EXCEPTION_MINOR_ROOTFS_DOWNLOAD: u32 = 20; +pub const EXCEPTION_MINOR_UIMAGE_DOWNLOAD: u32 = 25; +pub const EXCEPTION_MINOR_UBOOT_SETBOOTFLAG: u32 = 30; +pub const EXCEPTION_MINOR_ROOTFS_BOOT_SUBBOARD: u32 = 35; +pub const EXCEPTION_MINOR_NEED_FILE_FINISH: u32 = 40; +pub const EXCEPTION_MAJOR_SUBBOARD_HARDWARE: u32 = 3; +pub const EXCEPTION_MINOR_AD: u32 = 1; +pub const EXCEPTION_MINOR_DA: u32 = 10; +pub const EXCEPTION_MINOR_TIMER: u32 = 11; +pub const EXCEPTION_MAJOR_FPGA: u32 = 4; +pub const EXCEPTION_MINOR_IDLE: u32 = 1; +pub const EXCEPTION_MINOR_LANE: u32 = 10; +pub const EXCEPTION_MINOR_REGISTER_ALL_F: u32 = 14; +pub const EXCEPTION_MINOR_MEMORY_INIT_FAIL: u32 = 20; +pub const EXCEPTION_MAJOR_DSP: u32 = 5; +pub const EXCEPTION_MAJOR_ARM: u32 = 6; +pub const EXCEPTION_MAJOR_BACKBOARD: u32 = 7; +pub const EXCEPTION_MINOR_BACKBOARD_TYPE: u32 = 1; +pub const EXCEPTION_MINOR_SERDES: u32 = 10; +pub const EXCEPTION_MINOR_CLOCK: u32 = 14; +pub const EXCEPTION_MINOR_SYNCH: u32 = 20; +pub const EXCEPTION_MAJOR_SUBBOARD_NET: u32 = 8; +pub const EXCEPTION_MINOR_IP_CONFLICT: u32 = 1; +pub const EXCEPTION_MINOR_DISCONNECT: u32 = 20; +pub const MAX_FIRE_ALARM_ZONE: u32 = 12; +pub const MAX_FIRE_ALARM_POINT_ZONE: u32 = 32; +pub const MAX_TIMESIGN_LEN: u32 = 32; +pub const NOACTION: u32 = 0; +pub const WARNONMONITOR: u32 = 1; +pub const WARNONAUDIOOUT: u32 = 2; +pub const UPTOCENTER: u32 = 4; +pub const TRIGGERALARMOUT: u32 = 8; +pub const TRIGGERCATPIC: u32 = 16; +pub const SEND_PIC_FTP: u32 = 512; +pub const NET_SDK_MAX_EVENT_NUM: u32 = 64; +pub const DEV_ID_LEN: u32 = 32; +pub const URL_LEN: u32 = 240; +pub const MAX_ID_COUNT: u32 = 256; +pub const MAX_STREAM_ID_COUNT: u32 = 1024; +pub const STREAM_ID_LEN: u32 = 32; +pub const PLAN_ID_LEN: u32 = 32; +pub const DEVICE_NO_LEN: u32 = 24; +pub const MAX_VOLUMENAME_LEN: u32 = 32; +pub const MAX_VAG_CHANNO_LEN: u32 = 32; +pub const MAX_STREAM_ID_NUM: u32 = 30; +pub const NCR: u32 = 0; +pub const DIEBOLD: u32 = 1; +pub const WINCOR_NIXDORF: u32 = 2; +pub const SIEMENS: u32 = 3; +pub const OLIVETTI: u32 = 4; +pub const FUJITSU: u32 = 5; +pub const HITACHI: u32 = 6; +pub const SMI: u32 = 7; +pub const IBM: u32 = 8; +pub const BULL: u32 = 9; +pub const YiHua: u32 = 10; +pub const LiDe: u32 = 11; +pub const GDYT: u32 = 12; +pub const Mini_Banl: u32 = 13; +pub const GuangLi: u32 = 14; +pub const DongXin: u32 = 15; +pub const ChenTong: u32 = 16; +pub const NanTian: u32 = 17; +pub const XiaoXing: u32 = 18; +pub const GZYY: u32 = 19; +pub const QHTLT: u32 = 20; +pub const DRS918: u32 = 21; +pub const KALATEL: u32 = 22; +pub const NCR_2: u32 = 23; +pub const NXS: u32 = 24; +pub const NET_DEC_STARTDEC: u32 = 1; +pub const NET_DEC_STOPDEC: u32 = 2; +pub const NET_DEC_STOPCYCLE: u32 = 3; +pub const NET_DEC_CONTINUECYCLE: u32 = 4; +pub const MAX_RESOLUTIONNUM: u32 = 64; +pub const NET_DVR_ENCODER_UNKOWN: u32 = 0; +pub const NET_DVR_ENCODER_H264: u32 = 1; +pub const NET_DVR_ENCODER_S264: u32 = 2; +pub const NET_DVR_ENCODER_MPEG4: u32 = 3; +pub const NET_DVR_ORIGINALSTREAM: u32 = 4; +pub const NET_DVR_PICTURE: u32 = 5; +pub const NET_DVR_ENCODER_MJPEG: u32 = 6; +pub const NET_DVR_ENCODER_MPEG2: u32 = 7; +pub const NET_DVR_ENCODER_H265: u32 = 8; +pub const NET_DVR_ENCODER_SVAC: u32 = 9; +pub const NET_DVR_ENCODER_SMART264: u32 = 10; +pub const NET_DVR_ENCODER_SMART265: u32 = 11; +pub const NET_DVR_STREAM_TYPE_UNKOWN: u32 = 0; +pub const NET_DVR_STREAM_TYPE_PRIVT: u32 = 1; +pub const NET_DVR_STREAM_TYPE_TS: u32 = 7; +pub const NET_DVR_STREAM_TYPE_PS: u32 = 8; +pub const NET_DVR_STREAM_TYPE_RTP: u32 = 9; +pub const NET_DVR_STREAM_TYPE_ORIGIN: u32 = 10; +pub const NET_DVR_MAX_DISPREGION: u32 = 16; +pub const LOW_DEC_FPS_1_2: u32 = 51; +pub const LOW_DEC_FPS_1_4: u32 = 52; +pub const LOW_DEC_FPS_1_8: u32 = 53; +pub const LOW_DEC_FPS_1_16: u32 = 54; +pub const MAX_DECODECHANNUM: u32 = 32; +pub const MAX_DISPCHANNUM: u32 = 24; +pub const PASSIVE_DEC_PAUSE: u32 = 1; +pub const PASSIVE_DEC_RESUME: u32 = 2; +pub const PASSIVE_DEC_FAST: u32 = 3; +pub const PASSIVE_DEC_SLOW: u32 = 4; +pub const PASSIVE_DEC_NORMAL: u32 = 5; +pub const PASSIVE_DEC_ONEBYONE: u32 = 6; +pub const PASSIVE_DEC_AUDIO_ON: u32 = 7; +pub const PASSIVE_DEC_AUDIO_OFF: u32 = 8; +pub const PASSIVE_DEC_RESETBUFFER: u32 = 9; +pub const MAX_SUBSYSTEM_NUM: u32 = 80; +pub const MAX_SERIALLEN: u32 = 36; +pub const MAX_LOOPPLANNUM: u32 = 16; +pub const DECODE_TIMESEGMENT: u32 = 4; +pub const NET_DVR_DEV_ADDRESS_MAX_LEN: u32 = 129; +pub const NET_DVR_LOGIN_USERNAME_MAX_LEN: u32 = 64; +pub const NET_DVR_LOGIN_PASSWD_MAX_LEN: u32 = 64; +pub const WIFI_WEP_MAX_KEY_COUNT: u32 = 4; +pub const WIFI_WEP_MAX_KEY_LENGTH: u32 = 33; +pub const WIFI_WPA_PSK_MAX_KEY_LENGTH: u32 = 63; +pub const WIFI_WPA_PSK_MIN_KEY_LENGTH: u32 = 8; +pub const WIFI_MAX_AP_COUNT: u32 = 20; +pub const WIFI_WPA_PSK_MAX_HEXKEY_LENGTH: u32 = 68; +pub const VCA_MAX_POLYGON_POINT_NUM: u32 = 10; +pub const MAX_RULE_NUM: u32 = 8; +pub const MAX_RULE_NUM_V42: u32 = 16; +pub const MAX_TARGET_NUM: u32 = 30; +pub const MAX_CALIB_PT: u32 = 6; +pub const MIN_CALIB_PT: u32 = 4; +pub const MAX_TIMESEGMENT_2: u32 = 2; +pub const DATA_INDEX_LEN: u32 = 64; +pub const MAX_DEV_DATAINDEX_LEN: u32 = 64; +pub const MAX_TRAFFIC_PICTURE_NUM: u32 = 8; +pub const MAX_LICENSE_LEN: u32 = 16; +pub const MAX_LICENSE_LEN_EX: u32 = 32; +pub const MAX_CARDNO_LEN: u32 = 48; +pub const MAX_OPERATE_INDEX_LEN: u32 = 32; +pub const MAX_PLATE_NUM: u32 = 3; +pub const MAX_MASK_REGION_NUM: u32 = 4; +pub const MAX_SEGMENT_NUM: u32 = 6; +pub const MIN_SEGMENT_NUM: u32 = 3; +pub const MAX_REL_SNAPCHAN_NUM: u32 = 3; +pub const MAX_PIC_SWITCH_STORAGE_SERVER: u32 = 64; +pub const MAX_INFO_SWITCH_STORAGE_SERVER: u32 = 64; +pub const RTMP_URL_LEN: u32 = 128; +pub const MAX_ID_LEN_128: u32 = 128; +pub const MAX_DEBUGCMD_LEN: u32 = 1024; +pub const MAX_DEBUGINFO_LEN: u32 = 1400; +pub const MAX_VEHICLE_ID_LEN: u32 = 32; +pub const LEN_PROPERTY: u32 = 128; +pub const MAX_VCA_CHAN: u32 = 16; +pub const VCA_ATTEND_MAX_PIC_NUM: u32 = 3; +pub const VCA_ATTEND_DRIVER_NAME_LEN: u32 = 64; +pub const VCA_ATTEND_CARD_ID_LEN: u32 = 32; +pub const VCA_ATTEND_MAX_ALARM_ID_LEN: u32 = 32; +pub const MAX_NET_DISK: u32 = 16; +pub const INQUEST_START_INFO: u32 = 4097; +pub const INQUEST_STOP_INFO: u32 = 4098; +pub const INQUEST_TAG_INFO: u32 = 4099; +pub const INQUEST_SEGMENT_INFO: u32 = 4100; +pub const INQUEST_CASE_INFO: u32 = 4101; +pub const SEARCH_EVENT_INFO_LEN: u32 = 300; +pub const CASE_NO_LEN: u32 = 64; +pub const CASE_NAME_LEN: u32 = 128; +pub const LITIGANT_LEN: u32 = 32; +pub const CHIEF_JUDGE_LEN: u32 = 32; +pub const SEARCH_CASE_NO_LEN: u32 = 56; +pub const SEARCH_CASE_NAME_LEN: u32 = 100; +pub const SEARCH_LITIGANT_LEN: u32 = 32; +pub const SEARCH_CHIEF_JUDGE_LEN: u32 = 32; +pub const CASE_NO_RET_LEN: u32 = 52; +pub const CASE_NAME_RET_LEN: u32 = 64; +pub const LITIGANT_RET_LEN: u32 = 24; +pub const CHIEF_JUDGE_RET_LEN: u32 = 24; +pub const NET_SDK_CASETYPE_LEN: u32 = 32; +pub const MAX_POS_KEYWORDS_NUM: u32 = 3; +pub const MAX_POS_KEYWORD_LEN: u32 = 128; +pub const SEARCH_EVENT_INFO_LEN_V40: u32 = 800; +pub const NET_SDK_MAX_TAPE_INDEX_LEN: u32 = 32; +pub const NET_SDK_MAX_FILE_LEN: u32 = 256; +pub const MAX_RECT_NUM: u32 = 6; +pub const MAX_LINE_SEG_NUM: u32 = 8; +pub const MAX_SAMPLE_NUM: u32 = 5; +pub const MAX_SAMPLE_NUM_EX: u32 = 7; +pub const CALIB_PT_NUM: u32 = 4; +pub const NET_SDK_MAX_RELATED_CHAN_NUM: u32 = 4; +pub const MAX_POSITION_NUM: u32 = 10; +pub const MAX_REGION_NUM: u32 = 8; +pub const MAX_TPS_RULE: u32 = 8; +pub const MAX_AID_RULE: u32 = 8; +pub const MAX_LANE_NUM: u32 = 8; +pub const XXX_MAJOR_VERSION: u32 = 2; +pub const XXX_SUB_VERSION: u32 = 3; +pub const XXX_REVISION_VERSION: u32 = 4; +pub const PICNAME_ITEM_DEV_NAME: u32 = 1; +pub const PICNAME_ITEM_DEV_NO: u32 = 2; +pub const PICNAME_ITEM_DEV_IP: u32 = 3; +pub const PICNAME_ITEM_CHAN_NAME: u32 = 4; +pub const PICNAME_ITEM_CHAN_NO: u32 = 5; +pub const PICNAME_ITEM_TIME: u32 = 6; +pub const PICNAME_ITEM_CARDNO: u32 = 7; +pub const PICNAME_ITEM_PLATE_NO: u32 = 8; +pub const PICNAME_ITEM_PLATE_COLOR: u32 = 9; +pub const PICNAME_ITEM_CAR_CHAN: u32 = 10; +pub const PICNAME_ITEM_CAR_SPEED: u32 = 11; +pub const PICNAME_ITEM_CARCHAN: u32 = 12; +pub const PICNAME_ITEM_PIC_NUMBER: u32 = 13; +pub const PICNAME_ITEM_CAR_NUMBER: u32 = 14; +pub const PICNAME_MAXITEM: u32 = 15; +pub const PICNAME_ITEM_SPEED_LIMIT_VALUES: u32 = 15; +pub const PICNAME_ITEM_ILLEGAL_CODE: u32 = 16; +pub const PICNAME_ITEM_CROSS_NUMBER: u32 = 17; +pub const PICNAME_ITEM_DIRECTION_NUMBER: u32 = 18; +pub const PICNAME_ITEM_CAR_COLOR: u32 = 19; +pub const PICNAME_ITEM_PLATE_COORDINATE: u32 = 20; +pub const PICNAME_ITEM_CAR_TYPE: u32 = 21; +pub const PICNAME_ITEM_VIOLATION_TYPE: u32 = 22; +pub const PICNAME_ITEM_CUSTOM: u32 = 255; +pub const PICNAME_ITEM_PARK_DEV_IP: u32 = 1; +pub const PICNAME_ITEM_PARK_PLATE_NO: u32 = 2; +pub const PICNAME_ITEM_PARK_TIME: u32 = 3; +pub const PICNAME_ITEM_PARK_INDEX: u32 = 4; +pub const PICNAME_ITEM_PARK_STATUS: u32 = 5; +pub const PICNAME_ITEM_BUILDING_NUMBER: u32 = 6; +pub const PICNAME_ITEM_OUTDOOR_UNIT_ID: u32 = 7; +pub const PICNAME_ITEM_UNLOCK_TYPE: u32 = 8; +pub const PICNAME_ITEM_DEVICE_NAME: u32 = 9; +pub const PICNAME_ITEM_PERIOD_NO: u32 = 10; +pub const PICNAME_ITEM_DEV_INDEX: u32 = 11; +pub const PICNAME_PREFIX: u32 = 32; +pub const MAX_ALERTLINE_NUM: u32 = 8; +pub const MAX_INTRUSIONREGION_NUM: u32 = 8; +pub const MAX_ZEROCHAN_NUM: u32 = 16; +pub const DESC_LEN_64: u32 = 64; +pub const PROCESSING: u32 = 0; +pub const PROCESS_SUCCESS: u32 = 100; +pub const PROCESS_EXCEPTION: u32 = 400; +pub const PROCESS_FAILED: u32 = 500; +pub const PROCESS_QUICK_SETUP_PD_COUNT: u32 = 501; +pub const SOFTWARE_VERSION_LEN: u32 = 48; +pub const NET_SDK_DEVICE_MODEL_LEN: u32 = 24; +pub const MAX_SADP_NUM: u32 = 256; +pub const DESC_LEN_32: u32 = 32; +pub const MAX_NODE_NUM: u32 = 256; +pub const BACKUP_SUCCESS: u32 = 100; +pub const BACKUP_CHANGE_DEVICE: u32 = 101; +pub const BACKUP_SEARCH_DEVICE: u32 = 300; +pub const BACKUP_SEARCH_FILE: u32 = 301; +pub const BACKUP_SEARCH_LOG_FILE: u32 = 302; +pub const BACKUP_CHANGE_DISK: u32 = 303; +pub const BACKUP_EXCEPTION: u32 = 400; +pub const BACKUP_FAIL: u32 = 500; +pub const BACKUP_TIME_SEG_NO_FILE: u32 = 501; +pub const BACKUP_NO_RESOURCE: u32 = 502; +pub const BACKUP_DEVICE_LOW_SPACE: u32 = 503; +pub const BACKUP_DISK_FINALIZED: u32 = 504; +pub const BACKUP_DISK_EXCEPTION: u32 = 505; +pub const BACKUP_DEVICE_NOT_EXIST: u32 = 506; +pub const BACKUP_OTHER_BACKUP_WORK: u32 = 507; +pub const BACKUP_USER_NO_RIGHT: u32 = 508; +pub const BACKUP_OPERATE_FAIL: u32 = 509; +pub const BACKUP_NO_LOG_FILE: u32 = 510; +pub const MAX_ABILITYTYPE_NUM: u32 = 12; +pub const SUPPORT_PD_NUM: u32 = 16; +pub const SUPPORT_ARRAY_NUM: u32 = 8; +pub const SUPPORT_VD_NUM: u32 = 128; +pub const SUPPORT_PD_NUM_: u32 = 16; +pub const SUPPORT_PD_NUM_PARTTWO: u32 = 8; +pub const INIT_QUICK: u32 = 0; +pub const INIT_FULLFOREGROUND: u32 = 1; +pub const INIT_FULLBACKGROUND: u32 = 2; +pub const MATRIX_MAXDECSUBSYSTEMCHAN: u32 = 4; +pub const MAX_INQUEST_PIP_NUM: u32 = 3; +pub const MAX_INQUEST_CDRW_NUM: u32 = 4; +pub const MAX_INQUEST_PIP_NUM_EX: u32 = 16; +pub const MAX_BIGSCREENNUM: u32 = 100; +pub const DECODEPIC_LEFTADJUST: u32 = 1; +pub const DECODEPIC_RIGHTADJUST: u32 = 2; +pub const DECODEPIC_UPADJUST: u32 = 3; +pub const DECODEPIC_DOWNADJUST: u32 = 4; +pub const DECODEPIC_REDUCEADJUST: u32 = 5; +pub const DECODEPIC_FULL_SCREEN_ADJUST: u32 = 6; +pub const DECODEPIC_CANCEL_FULL_SCREEN_ADJUST: u32 = 7; +pub const DECODEPIC_AUTOADJUST: u32 = 8; +pub const DECODEPIC_HEIGHTADJUST: u32 = 9; +pub const DECODEPIC_WIDTHADJUST: u32 = 10; +pub const MAX_UNITEDMATRIX_NUM: u32 = 8; +pub const MAX_SUBDOMAIN_NUM: u32 = 4; +pub const DIALPASSWD_LEN: u32 = 32; +pub const MAX_PHONE_NUM: u32 = 32; +pub const MAX_ALLOWLIST_NUM: u32 = 8; +pub const NET_SDK_MAX_ALLOWLIST_NUM_32: u32 = 32; +pub const HARDDISKFULL_EXCEPTION: u32 = 0; +pub const HARDDISKERROR_EXCEPTION: u32 = 1; +pub const ETHERNETBROKEN_EXCEPTION: u32 = 2; +pub const IPADDRCONFLICT_EXCEPTION: u32 = 3; +pub const ILLEGALACCESS_EXCEPTION: u32 = 4; +pub const VI_EXCEPTION: u32 = 5; +pub const VS_MISMATCH_EXCEPTION: u32 = 6; +pub const VIDEOCABLELOSE_EXCEPTION: u32 = 7; +pub const AUDIOCABLELOSE_EXCEPTION: u32 = 8; +pub const ALARMIN_EXCEPTION: u32 = 9; +pub const MASKALARM_EXCEPTION: u32 = 10; +pub const MOTDET_EXCEPTION: u32 = 11; +pub const RECORDING_EXCEPTION: u32 = 12; +pub const WIRELESS_EXCEPTION: u32 = 13; +pub const PIR_EXCEPTION: u32 = 14; +pub const CALLHELP_EXCEPTION: u32 = 15; +pub const AUDIO_DETECTION_EXCEPTION: u32 = 16; +pub const SCENECHANGE_DETECTION_EXCEPTION: u32 = 17; +pub const DEFOCUS_DETECTION_EXCEPTION: u32 = 18; +pub const FACE_DETECTION_ENTRANCE_EXCEPTION: u32 = 19; +pub const LINE_DETECTION_ENTRANCE_EXCEPTION: u32 = 20; +pub const FIELD_DETECTION_ENTRANCE_EXCEPTION: u32 = 21; +pub const REGION_EXITING_EXCEPTION: u32 = 22; +pub const REGION_ENTRANCE_EXCEPTION: u32 = 23; +pub const LOITERING_EXCEPTION: u32 = 24; +pub const GROUP_EXCEPTION: u32 = 25; +pub const RAPIDMOVE_EXCEPTION: u32 = 26; +pub const PARKING_EXCEPTION: u32 = 27; +pub const UNATTENDEDBAGGAGE_EXCEPTION: u32 = 28; +pub const ATTENDEDBAGGAGE_EXCEPTION: u32 = 29; +pub const DATATRAFFIC_EXCESS: u32 = 30; +pub const VOLTAGEINSTABLE_EXCEPTION: u32 = 31; +pub const ALL_EXCEPTION: u32 = 255; +pub const PHONECFG_RECEIVE_SMS: u32 = 0; +pub const PHONECFG_SMS_CONTROL: u32 = 1; +pub const PHONECFG_CALL_CONTROL: u32 = 2; +pub const PHONECFG_SMS_REBOOT: u32 = 3; +pub const PHONECFG_DOOR_CONTROL: u32 = 4; +pub const PHONECFG_SMS_GET_DAIL_STATUS: u32 = 5; +pub const NET_SDK_MONITOR_ID_LEN: u32 = 64; +pub const MAX_SMSCONTENT_LEN: u32 = 140; +pub const MAX_PIN_LEN: u32 = 12; +pub const COM_PUSHALARM: u32 = 4608; +pub const COM_PUSHALARM_V30: u32 = 4609; +pub const SENSOR_IN_NUMBER: u32 = 8; +pub const MAX_ALARMHOST_ALARMIN_NUM: u32 = 512; +pub const MAX_ALARMHOST_ALARMOUT_NUM: u32 = 512; +pub const ALARMHOST_MAX_AUDIOOUT_NUM: u32 = 32; +pub const ALARMHOST_MAX_ELECTROLOCK_NUM: u32 = 32; +pub const ALARMHOST_MAX_MOBILEGATE_NUM: u32 = 32; +pub const ALARMHOST_MAX_SIREN_NUM: u32 = 8; +pub const MAX_ALARMHOST_SUBSYSTEM: u32 = 32; +pub const ALARMHOST_DETECTOR_SERIAL_LEN: u32 = 9; +pub const ALARMHOST_DETECTOR_SERIAL_LEN_V50: u32 = 16; +pub const MAX_DETECTOR_NUM: u32 = 128; +pub const MAX_DETECTOR_NUM_V51: u32 = 256; +pub const MAX_REPEATER_NUM: u32 = 16; +pub const MAX_OUTPUT_MODULE_NUM: u32 = 64; +pub const MAX_ELECTRIC_LOCK_NUM: u32 = 64; +pub const MAX_MAX_ALARMIN_NUM: u32 = 64; +pub const MAX_485CHAN: u32 = 256; +pub const MAX_485SLOT: u32 = 256; +pub const MAX_DEVICE_PROTO_NUM: u32 = 256; +pub const MAX_DEVICE_TYPE_NUM: u32 = 256; +pub const MAX_ALARMHOST_VIDEO_CHAN: u32 = 64; +pub const PROTOCOL_VERTION_LEN: u32 = 32; +pub const MAX_CENTERNUM: u32 = 4; +pub const MAX_PU_CHAN_NUM: u32 = 512; +pub const MAX_ALARM_CAM_NUM: u32 = 32; +pub const MAX_GATEWAY_NUM: u32 = 8; +pub const MAX_CONTENT_LEN: u32 = 512; +pub const LED_TIMER_NUM: u32 = 3; +pub const TIME_SEGMENT_A_DAY: u32 = 48; +pub const MAX_DECODE_CARD_NUM: u32 = 6; +pub const MAX_SUBMATRIX_NUM: u32 = 8; +pub const MAX_GATEWAYTRUNKNUM: u32 = 1024; +pub const MAX_SUBSYSTEM_NUM_V40: u32 = 120; +pub const MAX_OPTICALFIBER_NUM: u32 = 16; +pub const MAX_HOLIDAY_NUM: u32 = 32; +pub const MAX_LINK_V30: u32 = 128; +pub const MAX_BOND_NUM: u32 = 2; +pub const MAX_PIC_EVENT_NUM: u32 = 32; +pub const MAX_ALARMIN_CAPTURE: u32 = 16; +pub const LABEL_NAME_LEN: u32 = 40; +pub const LABEL_IDENTIFY_LEN: u32 = 64; +pub const MAX_DEL_LABEL_IDENTIFY: u32 = 20; +pub const CARDNUM_LEN_V30: u32 = 40; +pub const PICTURE_NAME_LEN: u32 = 64; +pub const PICTURE_INFO_MAX_SIZE: f64 = 921600.0; +pub const MAX_RECORD_PICTURE_NUM: u32 = 50; +pub const STEP_READY: u32 = 0; +pub const STEP_RECV_DATA: u32 = 1; +pub const STEP_UPGRADE: u32 = 2; +pub const STEP_BACKUP: u32 = 3; +pub const STEP_SEARCH: u32 = 255; +pub const MAX_REDAREA_NUM: u32 = 6; +pub const INQUEST_MESSAGE_LEN: u32 = 44; +pub const INQUEST_MAX_ROOM_NUM: u32 = 2; +pub const MAX_RESUME_SEGMENT: u32 = 2; +pub const UPLOAD_CERTIFICATE: u32 = 1; +pub const MAX_LAYERNUMS: u32 = 32; +pub const MATRIX_PROTOCOL_NUM: u32 = 20; +pub const KEYBOARD_PROTOCOL_NUM: u32 = 20; +pub const MAX_HUMAN_PICTURE_NUM: u32 = 10; +pub const MAX_HUMAN_BIRTHDATE_LEN: u32 = 10; +pub const MAX_FACE_PIC_LEN: u32 = 6144; +pub const MAX_WINDOWS_NUM: u32 = 12; +pub const MAX_SUPPORT_RES: u32 = 32; +pub const MAX_DISPNUM_V41: u32 = 32; +pub const MAX_SDI_RES: u32 = 16; +pub const MAX_WINDOWS_V41: u32 = 36; +pub const STARTDISPCHAN_VGA: u32 = 1; +pub const STARTDISPCHAN_BNC: u32 = 9; +pub const STARTDISPCHAN_HDMI: u32 = 25; +pub const STARTDISPCHAN_DVI: u32 = 29; +pub const MAX_BIGSCREENNUM_SCENE: u32 = 100; +pub const MAX_WIN_COUNT: u32 = 224; +pub const MAX_LAYOUT_COUNT: u32 = 16; +pub const MAX_CAM_COUNT: u32 = 224; +pub const MAX_CAM_COUNT_V50: u32 = 512; +pub const SCREEN_PROTOCOL_NUM: u32 = 20; +pub const MAX_OSDCHAR_NUM: u32 = 256; +pub const MAX_PLAN_ACTION_NUM: u32 = 32; +pub const DAYS_A_WEEK: u32 = 7; +pub const MAX_PLAN_COUNT: u32 = 16; +pub const PULL_DISK_SUCCESS: u32 = 1; +pub const PULL_DISK_FAIL: u32 = 2; +pub const PULL_DISK_PROCESSING: u32 = 3; +pub const PULL_DISK_NO_ARRAY: u32 = 4; +pub const PULL_DISK_NOT_SUPPORT: u32 = 5; +pub const SCAN_RAID_SUC: u32 = 1; +pub const SCAN_RAID_FAIL: u32 = 2; +pub const SCAN_RAID_PROCESSING: u32 = 3; +pub const SCAN_RAID_NOT_SUPPORT: u32 = 4; +pub const SET_CAMERA_TYPE_SUCCESS: u32 = 1; +pub const SET_CAMERA_TYPE_FAIL: u32 = 2; +pub const SET_CAMERA_TYPE_PROCESSING: u32 = 3; +pub const MAX_PRO_PATH: u32 = 256; +pub const MAX_ALARMHOSTKEYBOARD: u32 = 64; +pub const MAX_SUBSYSTEM_ID_LEN: u32 = 16; +pub const ACCOUNTNUM_LEN: u32 = 6; +pub const ACCOUNTNUM_LEN_32: u32 = 32; +pub const ACCOUNTNUM_LEN_V40: u32 = 9; +pub const APN_NAME_LEN: u32 = 32; +pub const APN_USERNAME_LEN: u32 = 24; +pub const APN_USERPASSWORD_LEN: u32 = 16; +pub const MAX_KEYBOARD_USER_NUM: u32 = 256; +pub const MAX_REPORTCHAN_NUM: u32 = 4; +pub const MAX_CENTERGROUP_NUM: u32 = 16; +pub const MAX_EVENT_NUM: u32 = 32; +pub const CID_CODE_LEN: u32 = 4; +pub const DEV_SERIAL_LEN: u32 = 9; +pub const MAX_DECODE_CARD_SUPPORTDISPNUMS: u32 = 8; +pub const CHAN_NO_LEN: u32 = 24; +pub const MAX_IOSPEED_GROUP_NUM: u32 = 4; +pub const MAX_IOOUT_NUM: u32 = 4; +pub const MAX_IOIN_NUM: u32 = 8; +pub const MAX_RELAY_NUM: u32 = 12; +pub const MAX_VEHICLE_TYPE_NUM: u32 = 8; +pub const MAX_IOIN_NUMEX: u32 = 10; +pub const MAX_ITC_LANE_NUM: u32 = 6; +pub const MAX_LANEAREA_NUM: u32 = 2; +pub const ITC_MAX_POLYGON_POINT_NUM: u32 = 20; +pub const MAX_ITC_SERIALCHECK_NUM: u32 = 8; +pub const MAX_LIGHT_NUM: u32 = 6; +pub const MAX_VIDEO_INTERVAL_NUM: u32 = 2; +pub const MAX_VIDEO_DETECT_LIGHT_NUM: u32 = 12; +pub const MAX_CALIB_RECOG_NUM: u32 = 2; +pub const MAX_RS485_NUM: u32 = 12; +pub const MAX_MOBILE_POLYGON_NUM: u32 = 3; +pub const MAX_MOBILE_DETECTLINE_NUM: u32 = 3; +pub const MAX_IOOUT_K_NUM: u32 = 8; +pub const MAX_AUX_ALARM_NUM: u32 = 8; +pub const MAX_WIRELESS_ALARM_NUM: u32 = 8; +pub const DVCS_DEVICEID_LEN: u32 = 16; +pub const DEVICEID_LEN: u32 = 32; +pub const MAX_ESATA_NUM: u32 = 16; +pub const MAX_MINISAS_NUM: u32 = 96; +pub const MAX_DISK_NUM: u32 = 128; +pub const VERSION_LEN: u32 = 32; +pub const MAX_OVERLAP_ITEM_NUM: u32 = 50; +pub const ITS_MAX_DEVICE_NUM: u32 = 32; +pub const MAX_PTZCRUISE_POINT_NUM: u32 = 32; +pub const NET_DVR_GPS_FINDING: u32 = 0; +pub const NET_DVR_GPS_RECV: u32 = 1; +pub const NET_DVR_GPS_OVER: u32 = 2; +pub const NET_DVR_GPS_EXCEPTION: u32 = 3; +pub const IP_ADDR_LEN: u32 = 16; +pub const NET_DVR_GPS_STATUS: u32 = 0; +pub const NET_DVR_GSENSOR_STATUS: u32 = 1; +pub const NET_DVR_WIFI_STATUS: u32 = 2; +pub const NET_DVR_PLATFORM_STATUS: u32 = 3; +pub const NET_SDK_MAX_CARD_LEN: u32 = 32; +pub const MAX_CERTIFICATE_ISSUER_LEN: u32 = 64; +pub const MAX_CERTIFICATE_VALIDITY_LEN: u32 = 128; +pub const MAX_CERTIFICATE_SUBJECT_LEN: u32 = 64; +pub const MAX_FILE_PATH_LEN: u32 = 256; +pub const MAX_ETHERNET_PORT_NUM: u32 = 8; +pub const NET_SDK_OKC_STATUS_SUCCESS: u32 = 1000; +pub const NET_SDK_OKC_STATUS_FAILED: u32 = 1002; +pub const NET_SDK_OKC_STATUS_START_CONFIG: u32 = 1003; +pub const NET_SDK_OKC_CHECK_HD: u32 = 1004; +pub const NET_SDK_OKC_INIT_HD: u32 = 1005; +pub const NET_SDK_OKC_CREATE_RAID_OR_SINGLE_DISK: u32 = 1006; +pub const NET_SDK_OKC_INIT_CVR_SERVICE: u32 = 1007; +pub const NET_SDK_OKC_CREATE_RECORD_VOLUME: u32 = 1008; +pub const NET_SDK_OKC_ERR_LOAD_CONF_FAILED: u32 = 1009; +pub const NET_SDK_OKC_ERR_NOT_SUPPORT_RAID_LEVLE: u32 = 1010; +pub const NET_SDK_OKC_ERR_CONFIGURATION_CONFLICT: u32 = 1011; +pub const NET_SDK_OKC_ERR_GET_DISK_INFO_FAILED: u32 = 1012; +pub const NET_SDK_OKC_ERR_CHECK_DISK_FAILED: u32 = 1013; +pub const NET_SDK_OKC_ERR_INIT_DISK_FAILED: u32 = 1014; +pub const NET_SDK_OKC_ERR_DISK_CAPACITY_SMALL: u32 = 1015; +pub const NET_SDK_OKC_ERR_BOTH_SV_NS: u32 = 1016; +pub const NET_SDK_OKC_ERR_CREATE_RAID_FAILED: u32 = 1017; +pub const NET_SDK_OKC_ERR_GET_RAID_FAILED: u32 = 1018; +pub const NET_SDK_OKC_ERR_CREATE_SPARE_FAILED: u32 = 1019; +pub const NET_SDK_OKC_ERR_CREATE_STORAGE_POOL_FAILED: u32 = 1020; +pub const NET_SDK_OKC_ERR_GET_POOL_INFO_FAILED: u32 = 1021; +pub const NET_SDK_OKC_ERR_CREATE_LUN_FAILED: u32 = 1022; +pub const NET_SDK_OKC_ERR_GET_LUN_INFO_FAILED: u32 = 1023; +pub const NET_SDK_OKC_ERR_CREATE_BACKUP_FAILED: u32 = 1024; +pub const NET_SDK_OKC_ERR_GET_BACKUP_FAILED: u32 = 1025; +pub const NET_SDK_OKC_ERR_CREATE_PRIVATE_LUN_FAILED: u32 = 1026; +pub const NET_SDK_OKC_ERR_CREATE_RV_FAILED: u32 = 1027; +pub const NET_SDK_OKC_ERR_CREATE_ARCH_RV_FAILED: u32 = 1028; +pub const NET_SDK_OKC_ERR_START_CVR_SERVICE_FAILED: u32 = 1029; +pub const NET_SDK_OKC_CREATING_ARRAY: u32 = 1030; +pub const NET_SDK_OKC_CREATING_STORAGE_POOL: u32 = 1031; +pub const NET_SDK_OKC_CREATING_LUN_VOL: u32 = 1032; +pub const NET_SDK_OKC_CREATING_ISCSI: u32 = 1033; +pub const NET_SDK_OKC_ERR_HOT_SPARE_CONFICT: u32 = 1034; +pub const NET_SDK_OKC_ERR_STORAGE_POOL_CONFICT: u32 = 1035; +pub const NET_SDK_OKC_ERR_RAID_CONFLICT: u32 = 1036; +pub const NET_SDK_OKC_ERR_OPEN_ISCSI_FAILED: u32 = 1037; +pub const NET_SDK_OKC_ERR_DEVICE_NOSUPPORT_SAN: u32 = 1038; +pub const NET_SDK_OKC_ERR_SAPRE_NUM_EXCEED: u32 = 1101; +pub const NET_SDK_OKC_ERR_CREATE_PIC_VOLUME_FAILED: u32 = 1102; +pub const MAX_CODE_CARD_SUPPORTDISPNUMS: u32 = 8; +pub const MAX_CODE_CARD_NUM: u32 = 8; +pub const NET_DVR_FIND_NAS_DIRECTORY: u32 = 6161; +pub const NET_DVR_NAS_FINDING: u32 = 0; +pub const NET_DVR_NAS_RECV: u32 = 1; +pub const NET_DVR_NAS_OVER: u32 = 2; +pub const NET_DVR_NAS_EXCEPTION: u32 = 3; +pub const NET_SDK_ACCESS_KEY_LEN: u32 = 64; +pub const NET_SDK_SECRET_KEY_LEN: u32 = 64; +pub const MAX_INPUTNUMS: u32 = 1024; +pub const MAX_OUTPUTNUMS: u32 = 256; +pub const MAX_MATRIX_CASCADE: u32 = 32; +pub const ALARMHOST_ALARMOUT_NUM: u32 = 64; +pub const MAX_OSD_UNIT_LEN: u32 = 8; +pub const UPLOAD_POS_INFO: u32 = 1001; +pub const MAX_IGNORE_STRING_NUM: u32 = 4; +pub const FILTERRULE_NUM: u32 = 4; +pub const MAX_POS_FILTER_DATA_LEN: u32 = 128; +pub const SERIAL_NUM_LEN: u32 = 8; +pub const MAX_LAN_ENCODE_LEN: u32 = 32; +pub const IPC_PARAM_AGING_TRICK_SCAN: u32 = 1; +pub const MAX_DEVMODULE_NUM: u32 = 8; +pub const MATRIX_MAX_OUTPUT_NUM: u32 = 256; +pub const MAX_HEATMAPREGION_NUM: u32 = 8; +pub const MAX_CAMERAID_LEN: u32 = 64; +pub const MAX_DISPLAY_NUM: u32 = 512; +pub const MAX_LEDCONTENT_NUM: u32 = 512; +pub const MAX_PPT_CHAN: u32 = 128; +pub const MAX_SUBBOARD_NUM: u32 = 42; +pub const MAX_SINGLE_BOARD_EXCEPTION_NUM: u32 = 16; +pub const MAX_VARIABLE_DATA_NUM: u32 = 65535; +pub const CARD_PARAM_CARD_VALID: u32 = 1; +pub const CARD_PARAM_VALID: u32 = 2; +pub const CARD_PARAM_CARD_TYPE: u32 = 4; +pub const CARD_PARAM_DOOR_RIGHT: u32 = 8; +pub const CARD_PARAM_LEADER_CARD: u32 = 16; +pub const CARD_PARAM_SWIPE_NUM: u32 = 32; +pub const CARD_PARAM_GROUP: u32 = 64; +pub const CARD_PARAM_PASSWORD: u32 = 128; +pub const CARD_PARAM_RIGHT_PLAN: u32 = 256; +pub const CARD_PARAM_SWIPED_NUM: u32 = 512; +pub const ACS_PARAM_DOOR_STATUS_WEEK_PLAN: u32 = 1; +pub const ACS_PARAM_VERIFY_WEEK_PALN: u32 = 2; +pub const ACS_PARAM_CARD_RIGHT_WEEK_PLAN: u32 = 4; +pub const ACS_PARAM_DOOR_STATUS_HOLIDAY_PLAN: u32 = 8; +pub const ACS_PARAM_VERIFY_HOLIDAY_PALN: u32 = 16; +pub const ACS_PARAM_CARD_RIGHT_HOLIDAY_PLAN: u32 = 32; +pub const ACS_PARAM_DOOR_STATUS_HOLIDAY_GROUP: u32 = 64; +pub const ACS_PARAM_VERIFY_HOLIDAY_GROUP: u32 = 128; +pub const ACS_PARAM_CARD_RIGHT_HOLIDAY_GROUP: u32 = 256; +pub const ACS_PARAM_DOOR_STATUS_PLAN_TEMPLATE: u32 = 512; +pub const ACS_PARAM_VERIFY_PALN_TEMPLATE: u32 = 1024; +pub const ACS_PARAM_CARD_RIGHT_PALN_TEMPLATE: u32 = 2048; +pub const ACS_PARAM_CARD: u32 = 4096; +pub const ACS_PARAM_GROUP: u32 = 8192; +pub const ACS_PARAM_ANTI_SNEAK_CFG: u32 = 16384; +pub const ACS_PAPAM_EVENT_CARD_LINKAGE: u32 = 32768; +pub const ACS_PAPAM_CARD_PASSWD_CFG: u32 = 65536; +pub const ACS_PARAM_PERSON_STATISTICS_CFG: u32 = 131072; +pub const ACS_PARAM_BLOCKLIST_PICTURE: u32 = 262144; +pub const ACS_PARAM_ID_BLOCKLIST: u32 = 524288; +pub const ACS_PARAM_EXAM_INFO: u32 = 1048576; +pub const ACS_PARAM_EXAMINEE_INFO: u32 = 2097152; +pub const ACS_PARAM_FAILED_FACE_INFO: u32 = 4194304; +pub const UNLOCK_PASSWORD_LEN: u32 = 8; +pub const LOCAL_CONTROLLER_NAME_LEN: u32 = 32; +pub const MAX_SERVER_DEVICE_NUMBER: u32 = 16; +pub const MAX_SCREEN_ADDRESS_LEN: u32 = 16; +pub const MAX_DAY_TIME_POINT: u32 = 8; +pub const MAX_TIME_POINT: u32 = 16; +pub const MAX_CHECK_485CHAN: u32 = 64; +pub const MAX_UPLOADFILE_URL_LEN: u32 = 240; +pub const MAX_DIALNUM_LENGTH: u32 = 32; +pub const MAX_LENGTH_32: u32 = 32; +pub const CARD_PARAM_EMPLOYEE_NO: u32 = 1024; +pub const CARD_PARAM_NAME: u32 = 2048; +pub const CARD_PARAM_DEPARTMENT_NO: u32 = 4096; +pub const CARD_SCHEDULE_PLAN_NO: u32 = 8192; +pub const CARD_SCHEDULE_PLAN_TYPE: u32 = 16384; +pub const CARD_ROOM_NUMBER: u32 = 32768; +pub const CARD_SIM_NO: u32 = 65536; +pub const CARD_FLOOR_NUMBER: u32 = 131072; +pub const CARD_USER_TYPE: u32 = 262144; +pub const JUDGE_MAX_VIDEOOUT_NUM: u32 = 9; +pub const MAX_IR_CMD_NAME_LEN: u32 = 32; +pub const MAX_IR_CMD_NUM: u32 = 32; +pub const MAX_VIDEOIN_TYPE_NUM: u32 = 10; +pub const MICROPHONE_NUM: u32 = 16; +pub const FAN_NUM: u32 = 8; +pub const FPGA_NUM: u32 = 8; +pub const MAIN_BOARD: u32 = 8; +pub const LOCAL_INPUT_NUM: u32 = 24; +pub const LAMP_STATE_NAME: u32 = 32; +pub const LAMP_NAME: u32 = 32; +pub const FILE_NAME_LEN: u32 = 32; +pub const DPC_CORRECT: u32 = 1; +pub const DPC_CORRECT_CANCEL: u32 = 2; +pub const DPC_CROSS_DISPALY_OPEN: u32 = 3; +pub const DPC_CROSS_DISPALY_CLOSE: u32 = 4; +pub const DPC_POINT: u32 = 5; +pub const DPC_UP: u32 = 6; +pub const DPC_DOWN: u32 = 7; +pub const DPC_RIGHT: u32 = 8; +pub const DPC_LEFT: u32 = 9; +pub const DPC_ALL_CORRECT: u32 = 10; +pub const DPC_SAVE: u32 = 11; +pub const MAX_OSD_LEN: u32 = 64; +pub const MAX_AUDIOOUT_PRO_TYPE: u32 = 8; +pub const MAX_CENTERNUM_V40: u32 = 6; +pub const MAX_FINGER_PRINT_LEN: u32 = 768; +pub const MAX_ZONE_LINKAGE_CHAN_NUM: u32 = 4; +pub const MAX_MASK_AREA_NUM: u32 = 8; +pub const MAX_PLAYLIST_NUM: u32 = 50; +pub const MAX_PLAYPLAN_NUM: u32 = 50; +pub const MAX_LEN_256: u32 = 256; +pub const MAX_GROUP_RECORD_NUM: u32 = 10; +pub const MAX_MATRIX_SUBBOARD_NUM: u32 = 16; +pub const MAX_MATRIX_SUBBOARD_NUM_V51: u32 = 32; +pub const MAX_BOARD_SUBSYSTEM_NUM: u32 = 12; +pub const MAX_FIRESHIELDMASK_REGION: u32 = 24; +pub const MAX_SMOKESHIELDMASK_REGION: u32 = 24; +pub const MAX_SIGNAL_JOINT_NUM: u32 = 64; +pub const MAX_ALLOWLIST_PHONE_NUM: u32 = 16; +pub const PRIOR_SCHEDTIME: u32 = 30; +pub const MAX_SSID_LEN: u32 = 32; +pub const MAX_WS_PASSWD_LEN: u32 = 64; +pub const NET_SDK_MAX_FILE_NAME: u32 = 100; +pub const CLIENT_VERSION_LEN: u32 = 64; +pub const MAX_OPTICAL_DEV_NODE: u32 = 32; +pub const MAX_ID_NUM_LEN: u32 = 32; +pub const MAX_ID_NAME_LEN: u32 = 128; +pub const MAX_ID_ADDR_LEN: u32 = 280; +pub const MAX_ID_ISSUING_AUTHORITY_LEN: u32 = 128; +pub const MAX_PROXY_COUNT: u32 = 32; +pub const COURSE_NAME_LEN_128: u32 = 128; +pub const INSTRUCTOR_NAME_LEN_64: u32 = 64; +pub const MAX_UUID_LEN: u32 = 64; +pub const MAX_RING_NAME_LEN_128: u32 = 128; +pub const NET_SDK_MAX_INDENTITY_KEY_LEN: u32 = 64; +pub const NET_SDK_MAX_EXAM_ROUND_NO: u32 = 64; +pub const NET_SDK_MAX_EXAM_NO: u32 = 64; +pub const NET_SDK_MAX_EXAM_SUBJECT: u32 = 64; +pub const NET_SDK_MAX_TEACHER_NO: u32 = 64; +pub const NET_SDK_MAX_TEACHER_NAME: u32 = 64; +pub const NET_SDK_MAX_EXAMINEE_NO: u32 = 64; +pub const NET_SDK_MAX_ADMISSION_TICKET: u32 = 64; +pub const MAX_FILE_NAME_LEN: u32 = 100; +pub const AUDIO_FILE_NAME_LEN: u32 = 32; +pub const EZVIZ_CLASSSESSION_LEN: u32 = 64; +pub const EZVIZ_DEVICEID_LEN: u32 = 32; +pub const EZVIZ_REQURL_LEN: u32 = 64; +pub const EZVIZ_ACCESSTOKEN_LEN: u32 = 128; +pub const EZVIZ_CLIENTTYPE_LEN: u32 = 32; +pub const EZVIZ_FEATURECODE_LEN: u32 = 64; +pub const EZVIZ_OSVERSION_LEN: u32 = 32; +pub const EZVIZ_NETTYPE_LEN: u32 = 32; +pub const EZVIZ_SDKVERSION_LEN: u32 = 32; +pub const EZVIZ_APPID_LEN: u32 = 64; +pub const MAX_ERROR_MSG_LEN: u32 = 256; +pub const NET_DVR_SHOWLOGO: u32 = 1; +pub const NET_DVR_HIDELOGO: u32 = 2; +pub const DISP_CMD_ENLARGE_WINDOW: u32 = 1; +pub const DISP_CMD_RENEW_WINDOW: u32 = 2; +pub const DISP_CMD_OPENAUDIO: u32 = 3; +pub const DISP_CMD_CLOSEAUDIO: u32 = 4; +pub const NET_DVR_PDC_VERIFY_CALIBRATION: u32 = 1; +pub const NET_DVR_VERIFY_BEHAVIOR_CALIBRATION: u32 = 2; +pub const NET_DVR_VERIFY_ITS_CALIBRATION: u32 = 3; +pub const NET_DVR_VERIFY_BV_CALIBRATION: u32 = 5; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __PLAYRECT { + pub x: ::std::os::raw::c_int, + pub y: ::std::os::raw::c_int, + pub uWidth: ::std::os::raw::c_int, + pub uHeight: ::std::os::raw::c_int, +} +#[test] +fn bindgen_test_layout___PLAYRECT() { + const UNINIT: ::std::mem::MaybeUninit<__PLAYRECT> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<__PLAYRECT>(), + 16usize, + concat!("Size of: ", stringify!(__PLAYRECT)) + ); + assert_eq!( + ::std::mem::align_of::<__PLAYRECT>(), + 4usize, + concat!("Alignment of ", stringify!(__PLAYRECT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(__PLAYRECT), + "::", + stringify!(x) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).y) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(__PLAYRECT), + "::", + stringify!(y) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uWidth) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(__PLAYRECT), + "::", + stringify!(uWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uHeight) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(__PLAYRECT), + "::", + stringify!(uHeight) + ) + ); +} +pub type PLAYRECT = __PLAYRECT; +pub type DWORD = ::std::os::raw::c_uint; +pub type WORD = ::std::os::raw::c_ushort; +pub type USHORT = ::std::os::raw::c_ushort; +pub type SHORT = ::std::os::raw::c_short; +pub type LONG = ::std::os::raw::c_int; +pub type BYTE = ::std::os::raw::c_uchar; +pub type UINT = ::std::os::raw::c_uint; +pub type LPVOID = *mut ::std::os::raw::c_void; +pub type HANDLE = *mut ::std::os::raw::c_void; +pub type LPDWORD = *mut ::std::os::raw::c_uint; +pub type UINT64 = ::std::os::raw::c_ulonglong; +pub type INT64 = ::std::os::raw::c_longlong; +pub type COLORKEY = ::std::os::raw::c_uint; +pub type COLORREF = ::std::os::raw::c_uint; +pub type HWND = *mut ::std::os::raw::c_void; +pub type HDC = *mut ::std::os::raw::c_void; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagInitInfo { + pub uWidth: ::std::os::raw::c_int, + pub uHeight: ::std::os::raw::c_int, +} +#[test] +fn bindgen_test_layout_tagInitInfo() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagInitInfo)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagInitInfo)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uWidth) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagInitInfo), + "::", + stringify!(uWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uHeight) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagInitInfo), + "::", + stringify!(uHeight) + ) + ); +} +pub type INITINFO = tagInitInfo; +pub const tagALARMHOST_MAJOR_TYPE_MAJOR_ALARMHOST_ALARM: tagALARMHOST_MAJOR_TYPE = 1; +pub const tagALARMHOST_MAJOR_TYPE_MAJOR_ALARMHOST_EXCEPTION: tagALARMHOST_MAJOR_TYPE = 2; +pub const tagALARMHOST_MAJOR_TYPE_MAJOR_ALARMHOST_OPERATION: tagALARMHOST_MAJOR_TYPE = 3; +pub const tagALARMHOST_MAJOR_TYPE_MAJ0R_ALARMHOST_EVENT: tagALARMHOST_MAJOR_TYPE = 4; +pub type tagALARMHOST_MAJOR_TYPE = ::std::os::raw::c_uint; +pub use self::tagALARMHOST_MAJOR_TYPE as ALARMHOST_MAJOR_TYPE; +pub const tagALARMHOST_MINOR_TYPE_MINOR_SHORT_CIRCUIT: tagALARMHOST_MINOR_TYPE = 1; +pub const tagALARMHOST_MINOR_TYPE_MINOR_BROKEN_CIRCUIT: tagALARMHOST_MINOR_TYPE = 2; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARM_RESET: tagALARMHOST_MINOR_TYPE = 3; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARM_NORMAL: tagALARMHOST_MINOR_TYPE = 4; +pub const tagALARMHOST_MINOR_TYPE_MINOR_PASSWORD_ERROR: tagALARMHOST_MINOR_TYPE = 5; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ID_CARD_ILLEGALLY: tagALARMHOST_MINOR_TYPE = 6; +pub const tagALARMHOST_MINOR_TYPE_MINOR_KEYPAD_REMOVE: tagALARMHOST_MINOR_TYPE = 7; +pub const tagALARMHOST_MINOR_TYPE_MINOR_KEYPAD_REMOVE_RESTORE: tagALARMHOST_MINOR_TYPE = 8; +pub const tagALARMHOST_MINOR_TYPE_MINOR_DEV_REMOVE: tagALARMHOST_MINOR_TYPE = 9; +pub const tagALARMHOST_MINOR_TYPE_MINOR_DEV_REMOVE_RESTORE: tagALARMHOST_MINOR_TYPE = 10; +pub const tagALARMHOST_MINOR_TYPE_MINOR_BELOW_ALARM_LIMIT1: tagALARMHOST_MINOR_TYPE = 11; +pub const tagALARMHOST_MINOR_TYPE_MINOR_BELOW_ALARM_LIMIT2: tagALARMHOST_MINOR_TYPE = 12; +pub const tagALARMHOST_MINOR_TYPE_MINOR_BELOW_ALARM_LIMIT3: tagALARMHOST_MINOR_TYPE = 13; +pub const tagALARMHOST_MINOR_TYPE_MINOR_BELOW_ALARM_LIMIT4: tagALARMHOST_MINOR_TYPE = 14; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ABOVE_ALARM_LIMIT1: tagALARMHOST_MINOR_TYPE = 15; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ABOVE_ALARM_LIMIT2: tagALARMHOST_MINOR_TYPE = 16; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ABOVE_ALARM_LIMIT3: tagALARMHOST_MINOR_TYPE = 17; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ABOVE_ALARM_LIMIT4: tagALARMHOST_MINOR_TYPE = 18; +pub const tagALARMHOST_MINOR_TYPE_MINOR_URGENCYBTN_ON: tagALARMHOST_MINOR_TYPE = 19; +pub const tagALARMHOST_MINOR_TYPE_MINOR_URGENCYBTN_OFF: tagALARMHOST_MINOR_TYPE = 20; +pub const tagALARMHOST_MINOR_TYPE_MINOR_VIRTUAL_DEFENCE_BANDIT: tagALARMHOST_MINOR_TYPE = 21; +pub const tagALARMHOST_MINOR_TYPE_MINOR_VIRTUAL_DEFENCE_FIRE: tagALARMHOST_MINOR_TYPE = 22; +pub const tagALARMHOST_MINOR_TYPE_MINOR_VIRTUAL_DEFENCE_URGENT: tagALARMHOST_MINOR_TYPE = 23; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_MOTDET_START: tagALARMHOST_MINOR_TYPE = 24; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_MOTDET_STOP: tagALARMHOST_MINOR_TYPE = 25; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_HIDE_ALARM_START: tagALARMHOST_MINOR_TYPE = 26; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_HIDE_ALARM_STOP: tagALARMHOST_MINOR_TYPE = 27; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_UPS_ALARM: tagALARMHOST_MINOR_TYPE = 28; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_ELECTRICITY_METER_ALARM: tagALARMHOST_MINOR_TYPE = + 29; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_SWITCH_POWER_ALARM: tagALARMHOST_MINOR_TYPE = 30; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_GAS_DETECT_SYS_ALARM: tagALARMHOST_MINOR_TYPE = + 31; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_TRANSFORMER_TEMPRATURE_ALARM: + tagALARMHOST_MINOR_TYPE = 32; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_TEMP_HUMI_ALARM: tagALARMHOST_MINOR_TYPE = 33; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_UPS_ALARM_RESTORE: tagALARMHOST_MINOR_TYPE = 34; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_ELECTRICITY_METER_ALARM_RESTORE: + tagALARMHOST_MINOR_TYPE = 35; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_SWITCH_POWER_ALARM_RESTORE: + tagALARMHOST_MINOR_TYPE = 36; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_GAS_DETECT_SYS_ALARM_RESTORE: + tagALARMHOST_MINOR_TYPE = 37; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_TRANSFORMER_TEMPRATURE_ALARM_RESTORE: + tagALARMHOST_MINOR_TYPE = 38; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_TEMP_HUMI_ALARM_RESTORE: tagALARMHOST_MINOR_TYPE = + 39; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_WATER_LEVEL_SENSOR_ALARM: + tagALARMHOST_MINOR_TYPE = 40; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_WATER_LEVEL_SENSOR_ALARM_RESTORE: + tagALARMHOST_MINOR_TYPE = 41; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_DUST_NOISE_ALARM: tagALARMHOST_MINOR_TYPE = 42; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_DUST_NOISE_ALARM_RESTORE: + tagALARMHOST_MINOR_TYPE = 43; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_ENVIRONMENTAL_LOGGER_ALARM: + tagALARMHOST_MINOR_TYPE = 44; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_ENVIRONMENTAL_LOGGER_ALARM_RESTORE: + tagALARMHOST_MINOR_TYPE = 45; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_TRIGGER_TAMPER: tagALARMHOST_MINOR_TYPE = 46; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_TRIGGER_TAMPER_RESTORE: tagALARMHOST_MINOR_TYPE = + 47; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_EMERGENCY_CALL_HELP_ALARM: + tagALARMHOST_MINOR_TYPE = 48; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_EMERGENCY_CALL_HELP_ALARM_RESTORE: + tagALARMHOST_MINOR_TYPE = 49; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_CONSULTING_ALARM: tagALARMHOST_MINOR_TYPE = 50; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_CONSULTING_ALARM_RESTORE: + tagALARMHOST_MINOR_TYPE = 51; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ZONE_MODULE_REMOVE: tagALARMHOST_MINOR_TYPE = 52; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ZONE_MODULE_RESET: tagALARMHOST_MINOR_TYPE = 53; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARM_WIND_SPEED_ALARM: tagALARMHOST_MINOR_TYPE = 54; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARM_WIND_SPEED_ALARM_RESTORE: tagALARMHOST_MINOR_TYPE = + 55; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARM_GENERATE_OUTPUT_ALARM: tagALARMHOST_MINOR_TYPE = 56; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARM_GENERATE_OUTPUT_RESTORE: tagALARMHOST_MINOR_TYPE = 57; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARM_SOAK_ALARM: tagALARMHOST_MINOR_TYPE = 58; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARM_SOAK_ALARM_RESTORE: tagALARMHOST_MINOR_TYPE = 59; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARM_SOLAR_POWER_ALARM: tagALARMHOST_MINOR_TYPE = 60; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARM_SOLAR_POWER_ALARM_RESTORE: tagALARMHOST_MINOR_TYPE = + 61; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARM_SF6_ALARM: tagALARMHOST_MINOR_TYPE = 62; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARM_SF6_ALARM_RESTORE: tagALARMHOST_MINOR_TYPE = 63; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARM_WEIGHT_ALARM: tagALARMHOST_MINOR_TYPE = 64; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARM_WEIGHT_ALARM_RESTORE: tagALARMHOST_MINOR_TYPE = 65; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARM_WEATHER_ALARM: tagALARMHOST_MINOR_TYPE = 66; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARM_WEATHER_ALARM_RESTORE: tagALARMHOST_MINOR_TYPE = 67; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARM_FUEL_GAS_ALARM: tagALARMHOST_MINOR_TYPE = 68; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARM_FUEL_GAS_ALARM_RESTORE: tagALARMHOST_MINOR_TYPE = 69; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARM_FIRE_ALARM: tagALARMHOST_MINOR_TYPE = 70; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARM_FIRE_ALARM_RESTORE: tagALARMHOST_MINOR_TYPE = 71; +pub const tagALARMHOST_MINOR_TYPE_MINOR_WIRELESS_OUTPUT_MODULE_REMOVE: tagALARMHOST_MINOR_TYPE = 72; +pub const tagALARMHOST_MINOR_TYPE_MINOR_WIRELESS_OUTPUT_MODULE_RESET: tagALARMHOST_MINOR_TYPE = 73; +pub const tagALARMHOST_MINOR_TYPE_MINOR_WIRELESS_REPEATER_MODULE_REMOVE: tagALARMHOST_MINOR_TYPE = + 74; +pub const tagALARMHOST_MINOR_TYPE_MINOR_WIRELESS_REPEATER_MODULE_RESET: tagALARMHOST_MINOR_TYPE = + 75; +pub const tagALARMHOST_MINOR_TYPE_MINOR_WIRELESS_SIREN_MODULE_REMOVE: tagALARMHOST_MINOR_TYPE = 76; +pub const tagALARMHOST_MINOR_TYPE_MINOR_WIRELESS_SIREN_MODULE_RESET: tagALARMHOST_MINOR_TYPE = 77; +pub const tagALARMHOST_MINOR_TYPE_MINOR_SOUND_INTENSITY_RISE: tagALARMHOST_MINOR_TYPE = 78; +pub const tagALARMHOST_MINOR_TYPE_MINOR_SOUND_INTENSITY_RISE_RESET: tagALARMHOST_MINOR_TYPE = 79; +pub const tagALARMHOST_MINOR_TYPE_MINOR_SOUND_INTENSITY_DROP: tagALARMHOST_MINOR_TYPE = 80; +pub const tagALARMHOST_MINOR_TYPE_MINOR_SOUND_INTENSITY_DROP_RESET: tagALARMHOST_MINOR_TYPE = 81; +pub const tagALARMHOST_MINOR_TYPE_MINOR_AUDIO_INPUT_EXCEPTION: tagALARMHOST_MINOR_TYPE = 82; +pub const tagALARMHOST_MINOR_TYPE_MINOR_AUDIO_INPUT_EXCEPTION_RESET: tagALARMHOST_MINOR_TYPE = 83; +pub const tagALARMHOST_MINOR_TYPE_MINOR_FACE_DETECTION_ALARM: tagALARMHOST_MINOR_TYPE = 84; +pub const tagALARMHOST_MINOR_TYPE_MINOR_FACE_DETECTION_ALARM_RESTORE: tagALARMHOST_MINOR_TYPE = 85; +pub const tagALARMHOST_MINOR_TYPE_MINOR_POWER_ON: tagALARMHOST_MINOR_TYPE = 1; +pub const tagALARMHOST_MINOR_TYPE_MINOR_POWER_OFF: tagALARMHOST_MINOR_TYPE = 2; +pub const tagALARMHOST_MINOR_TYPE_MINOR_WDT_RESET: tagALARMHOST_MINOR_TYPE = 3; +pub const tagALARMHOST_MINOR_TYPE_MINOR_LOW_BATTERY_VOLTAGE: tagALARMHOST_MINOR_TYPE = 4; +pub const tagALARMHOST_MINOR_TYPE_MINOR_AC_LOSS: tagALARMHOST_MINOR_TYPE = 5; +pub const tagALARMHOST_MINOR_TYPE_MINOR_AC_RESTORE: tagALARMHOST_MINOR_TYPE = 6; +pub const tagALARMHOST_MINOR_TYPE_MINOR_RTC_EXCEPTION: tagALARMHOST_MINOR_TYPE = 7; +pub const tagALARMHOST_MINOR_TYPE_MINOR_NETWORK_CONNECT_FAILURE: tagALARMHOST_MINOR_TYPE = 8; +pub const tagALARMHOST_MINOR_TYPE_MINOR_NETWORK_CONNECT_RESTORE: tagALARMHOST_MINOR_TYPE = 9; +pub const tagALARMHOST_MINOR_TYPE_MINOR_TEL_LINE_CONNECT_FAILURE: tagALARMHOST_MINOR_TYPE = 10; +pub const tagALARMHOST_MINOR_TYPE_MINOR_TEL_LINE_CONNECT_RESTORE: tagALARMHOST_MINOR_TYPE = 11; +pub const tagALARMHOST_MINOR_TYPE_MINOR_EXPANDER_BUS_LOSS: tagALARMHOST_MINOR_TYPE = 12; +pub const tagALARMHOST_MINOR_TYPE_MINOR_EXPANDER_BUS_RESTORE: tagALARMHOST_MINOR_TYPE = 13; +pub const tagALARMHOST_MINOR_TYPE_MINOR_KEYPAD_BUS_LOSS: tagALARMHOST_MINOR_TYPE = 14; +pub const tagALARMHOST_MINOR_TYPE_MINOR_KEYPAD_BUS_RESTORE: tagALARMHOST_MINOR_TYPE = 15; +pub const tagALARMHOST_MINOR_TYPE_MINOR_SENSOR_FAILURE: tagALARMHOST_MINOR_TYPE = 16; +pub const tagALARMHOST_MINOR_TYPE_MINOR_SENSOR_RESTORE: tagALARMHOST_MINOR_TYPE = 17; +pub const tagALARMHOST_MINOR_TYPE_MINOR_RS485_CONNECT_FAILURE: tagALARMHOST_MINOR_TYPE = 18; +pub const tagALARMHOST_MINOR_TYPE_MINOR_RS485_CONNECT_RESTORE: tagALARMHOST_MINOR_TYPE = 19; +pub const tagALARMHOST_MINOR_TYPE_MINOR_BATTERT_VOLTAGE_RESTORE: tagALARMHOST_MINOR_TYPE = 20; +pub const tagALARMHOST_MINOR_TYPE_MINOR_WIRED_NETWORK_ABNORMAL: tagALARMHOST_MINOR_TYPE = 21; +pub const tagALARMHOST_MINOR_TYPE_MINOR_WIRED_NETWORK_RESTORE: tagALARMHOST_MINOR_TYPE = 22; +pub const tagALARMHOST_MINOR_TYPE_MINOR_GPRS_ABNORMAL: tagALARMHOST_MINOR_TYPE = 23; +pub const tagALARMHOST_MINOR_TYPE_MINOR_GPRS_RESTORE: tagALARMHOST_MINOR_TYPE = 24; +pub const tagALARMHOST_MINOR_TYPE_MINOR_3G_ABNORMAL: tagALARMHOST_MINOR_TYPE = 25; +pub const tagALARMHOST_MINOR_TYPE_MINOR_3G_RESTORE: tagALARMHOST_MINOR_TYPE = 26; +pub const tagALARMHOST_MINOR_TYPE_MINOR_SIM_CARD_ABNORMAL: tagALARMHOST_MINOR_TYPE = 27; +pub const tagALARMHOST_MINOR_TYPE_MINOR_SIM_CARD_RESTORE: tagALARMHOST_MINOR_TYPE = 28; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_VI_LOST: tagALARMHOST_MINOR_TYPE = 29; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_ILLEGAL_ACCESS: tagALARMHOST_MINOR_TYPE = 30; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_HD_FULL: tagALARMHOST_MINOR_TYPE = 31; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_HD_ERROR: tagALARMHOST_MINOR_TYPE = 32; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_DCD_LOST: tagALARMHOST_MINOR_TYPE = 33; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_IP_CONFLICT: tagALARMHOST_MINOR_TYPE = 34; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_NET_BROKEN: tagALARMHOST_MINOR_TYPE = 35; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_REC_ERROR: tagALARMHOST_MINOR_TYPE = 36; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_VI_EXCEPTION: tagALARMHOST_MINOR_TYPE = 37; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_FORMAT_HDD_ERROR: tagALARMHOST_MINOR_TYPE = 38; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_USB_ERROR: tagALARMHOST_MINOR_TYPE = 39; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_USB_RESTORE: tagALARMHOST_MINOR_TYPE = 40; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_PRINT_ERROR: tagALARMHOST_MINOR_TYPE = 41; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_PRINT_RESTORE: tagALARMHOST_MINOR_TYPE = 42; +pub const tagALARMHOST_MINOR_TYPE_MINOR_SUBSYSTEM_COMMUNICATION_ERROR: tagALARMHOST_MINOR_TYPE = 43; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_IPC_NO_LINK: tagALARMHOST_MINOR_TYPE = 44; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_IPC_IP_CONFLICT: tagALARMHOST_MINOR_TYPE = 45; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_VI_MISMATCH: tagALARMHOST_MINOR_TYPE = 46; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_MCU_RESTART: tagALARMHOST_MINOR_TYPE = 47; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_GPRS_MODULE_FAULT: tagALARMHOST_MINOR_TYPE = 48; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_TELEPHONE_MODULE_FAULT: tagALARMHOST_MINOR_TYPE = + 49; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_WIFI_ABNORMAL: tagALARMHOST_MINOR_TYPE = 50; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_WIFI_RESTORE: tagALARMHOST_MINOR_TYPE = 51; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_RF_ABNORMAL: tagALARMHOST_MINOR_TYPE = 52; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_RF_RESTORE: tagALARMHOST_MINOR_TYPE = 53; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_DETECTOR_ONLINE: tagALARMHOST_MINOR_TYPE = 54; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_DETECTOR_OFFLINE: tagALARMHOST_MINOR_TYPE = 55; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_DETECTOR_BATTERY_NORMAL: tagALARMHOST_MINOR_TYPE = + 56; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_DETECTOR_BATTERY_LOW: tagALARMHOST_MINOR_TYPE = + 57; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_DATA_TRAFFIC_OVERFLOW: tagALARMHOST_MINOR_TYPE = + 58; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ZONE_MODULE_LOSS: tagALARMHOST_MINOR_TYPE = 59; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ZONE_MODULE_RESTORE: tagALARMHOST_MINOR_TYPE = 60; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_WIRELESS_OUTPUT_LOSS: tagALARMHOST_MINOR_TYPE = + 61; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_WIRELESS_OUTPUT_RESTORE: tagALARMHOST_MINOR_TYPE = + 62; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_WIRELESS_REPEATER_LOSS: tagALARMHOST_MINOR_TYPE = + 63; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_WIRELESS_REPEATER_RESTORE: + tagALARMHOST_MINOR_TYPE = 64; +pub const tagALARMHOST_MINOR_TYPE_MINOR_TRIGGER_MODULE_LOSS: tagALARMHOST_MINOR_TYPE = 65; +pub const tagALARMHOST_MINOR_TYPE_MINOR_TRIGGER_MODULE_RESTORE: tagALARMHOST_MINOR_TYPE = 66; +pub const tagALARMHOST_MINOR_TYPE_MINOR_WIRELESS_SIREN_LOSS: tagALARMHOST_MINOR_TYPE = 67; +pub const tagALARMHOST_MINOR_TYPE_MINOR_WIRELESS_SIREN_RESTORE: tagALARMHOST_MINOR_TYPE = 68; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_WIRELESS_RS485_LOSS: tagALARMHOST_MINOR_TYPE = 69; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_WIRELESS_RS485_RESTORE: tagALARMHOST_MINOR_TYPE = + 70; +pub const tagALARMHOST_MINOR_TYPE_MINOR_GUARD: tagALARMHOST_MINOR_TYPE = 1; +pub const tagALARMHOST_MINOR_TYPE_MINOR_UNGUARD: tagALARMHOST_MINOR_TYPE = 2; +pub const tagALARMHOST_MINOR_TYPE_MINOR_BYPASS: tagALARMHOST_MINOR_TYPE = 3; +pub const tagALARMHOST_MINOR_TYPE_MINOR_DURESS_ACCESS: tagALARMHOST_MINOR_TYPE = 4; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_LOCAL_REBOOT: tagALARMHOST_MINOR_TYPE = 5; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_REMOTE_REBOOT: tagALARMHOST_MINOR_TYPE = 6; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_LOCAL_UPGRADE: tagALARMHOST_MINOR_TYPE = 7; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_REMOTE_UPGRADE: tagALARMHOST_MINOR_TYPE = 8; +pub const tagALARMHOST_MINOR_TYPE_MINOR_RECOVERY_DEFAULT_PARAM: tagALARMHOST_MINOR_TYPE = 9; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARM_OUTPUT: tagALARMHOST_MINOR_TYPE = 10; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ACCESS_OPEN: tagALARMHOST_MINOR_TYPE = 11; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ACCESS_CLOSE: tagALARMHOST_MINOR_TYPE = 12; +pub const tagALARMHOST_MINOR_TYPE_MINOR_SIREN_OPEN: tagALARMHOST_MINOR_TYPE = 13; +pub const tagALARMHOST_MINOR_TYPE_MINOR_SIREN_CLOSE: tagALARMHOST_MINOR_TYPE = 14; +pub const tagALARMHOST_MINOR_TYPE_MINOR_MOD_ZONE_CONFIG: tagALARMHOST_MINOR_TYPE = 15; +pub const tagALARMHOST_MINOR_TYPE_MINOR_MOD_ALARMOUT_CONIFG: tagALARMHOST_MINOR_TYPE = 16; +pub const tagALARMHOST_MINOR_TYPE_MINOR_MOD_ANALOG_CONFIG: tagALARMHOST_MINOR_TYPE = 17; +pub const tagALARMHOST_MINOR_TYPE_MINOR_RS485_CONFIG: tagALARMHOST_MINOR_TYPE = 18; +pub const tagALARMHOST_MINOR_TYPE_MINOR_PHONE_CONFIG: tagALARMHOST_MINOR_TYPE = 19; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ADD_ADMIN: tagALARMHOST_MINOR_TYPE = 20; +pub const tagALARMHOST_MINOR_TYPE_MINOR_MOD_ADMIN_PARAM: tagALARMHOST_MINOR_TYPE = 21; +pub const tagALARMHOST_MINOR_TYPE_MINOR_DEL_ADMIN: tagALARMHOST_MINOR_TYPE = 22; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ADD_NETUSER: tagALARMHOST_MINOR_TYPE = 23; +pub const tagALARMHOST_MINOR_TYPE_MINOR_MOD_NETUSER_PARAM: tagALARMHOST_MINOR_TYPE = 24; +pub const tagALARMHOST_MINOR_TYPE_MINOR_DEL_NETUSER: tagALARMHOST_MINOR_TYPE = 25; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ADD_OPERATORUSER: tagALARMHOST_MINOR_TYPE = 26; +pub const tagALARMHOST_MINOR_TYPE_MINOR_MOD_OPERATORUSER_PW: tagALARMHOST_MINOR_TYPE = 27; +pub const tagALARMHOST_MINOR_TYPE_MINOR_DEL_OPERATORUSER: tagALARMHOST_MINOR_TYPE = 28; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ADD_KEYPADUSER: tagALARMHOST_MINOR_TYPE = 29; +pub const tagALARMHOST_MINOR_TYPE_MINOR_DEL_KEYPADUSER: tagALARMHOST_MINOR_TYPE = 30; +pub const tagALARMHOST_MINOR_TYPE_MINOR_REMOTEUSER_LOGIN: tagALARMHOST_MINOR_TYPE = 31; +pub const tagALARMHOST_MINOR_TYPE_MINOR_REMOTEUSER_LOGOUT: tagALARMHOST_MINOR_TYPE = 32; +pub const tagALARMHOST_MINOR_TYPE_MINOR_REMOTE_GUARD: tagALARMHOST_MINOR_TYPE = 33; +pub const tagALARMHOST_MINOR_TYPE_MINOR_REMOTE_UNGUARD: tagALARMHOST_MINOR_TYPE = 34; +pub const tagALARMHOST_MINOR_TYPE_MINOR_MOD_HOST_CONFIG: tagALARMHOST_MINOR_TYPE = 35; +pub const tagALARMHOST_MINOR_TYPE_MINOR_RESTORE_BYPASS: tagALARMHOST_MINOR_TYPE = 36; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMOUT_OPEN: tagALARMHOST_MINOR_TYPE = 37; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMOUT_CLOSE: tagALARMHOST_MINOR_TYPE = 38; +pub const tagALARMHOST_MINOR_TYPE_MINOR_MOD_SUBSYSTEM_PARAM: tagALARMHOST_MINOR_TYPE = 39; +pub const tagALARMHOST_MINOR_TYPE_MINOR_GROUP_BYPASS: tagALARMHOST_MINOR_TYPE = 40; +pub const tagALARMHOST_MINOR_TYPE_MINOR_RESTORE_GROUP_BYPASS: tagALARMHOST_MINOR_TYPE = 41; +pub const tagALARMHOST_MINOR_TYPE_MINOR_MOD_GRPS_PARAM: tagALARMHOST_MINOR_TYPE = 42; +pub const tagALARMHOST_MINOR_TYPE_MINOR_MOD_NET_REPORT_PARAM: tagALARMHOST_MINOR_TYPE = 43; +pub const tagALARMHOST_MINOR_TYPE_MINOR_MOD_REPORT_MOD: tagALARMHOST_MINOR_TYPE = 44; +pub const tagALARMHOST_MINOR_TYPE_MINOR_MOD_GATEWAY_PARAM: tagALARMHOST_MINOR_TYPE = 45; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_REMOTE_START_REC: tagALARMHOST_MINOR_TYPE = 46; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_REMOTE_STOP_REC: tagALARMHOST_MINOR_TYPE = 47; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_START_TRANS_CHAN: tagALARMHOST_MINOR_TYPE = 48; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_STOP_TRANS_CHAN: tagALARMHOST_MINOR_TYPE = 49; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_START_VT: tagALARMHOST_MINOR_TYPE = 50; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_STOP_VTM: tagALARMHOST_MINOR_TYPE = 51; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_REMOTE_PLAYBYFILE: tagALARMHOST_MINOR_TYPE = 52; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_REMOTE_PLAYBYTIME: tagALARMHOST_MINOR_TYPE = 53; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_REMOTE_PTZCTRL: tagALARMHOST_MINOR_TYPE = 54; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_REMOTE_FORMAT_HDD: tagALARMHOST_MINOR_TYPE = 55; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_REMOTE_LOCKFILE: tagALARMHOST_MINOR_TYPE = 56; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_REMOTE_UNLOCKFILE: tagALARMHOST_MINOR_TYPE = 57; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_REMOTE_CFGFILE_OUTPUT: tagALARMHOST_MINOR_TYPE = + 58; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_REMOTE_CFGFILE_INTPUT: tagALARMHOST_MINOR_TYPE = + 59; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_REMOTE_RECFILE_OUTPUT: tagALARMHOST_MINOR_TYPE = + 60; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_STAY_ARM: tagALARMHOST_MINOR_TYPE = 61; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_QUICK_ARM: tagALARMHOST_MINOR_TYPE = 62; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_AUTOMATIC_ARM: tagALARMHOST_MINOR_TYPE = 63; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_AUTOMATIC_DISARM: tagALARMHOST_MINOR_TYPE = 64; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_KEYSWITCH_ARM: tagALARMHOST_MINOR_TYPE = 65; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_KEYSWITCH_DISARM: tagALARMHOST_MINOR_TYPE = 66; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_CLEAR_ALARM: tagALARMHOST_MINOR_TYPE = 67; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_MOD_FAULT_CFG: tagALARMHOST_MINOR_TYPE = 68; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_MOD_EVENT_TRIGGER_ALARMOUT_CFG: + tagALARMHOST_MINOR_TYPE = 69; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_SEARCH_EXTERNAL_MODULE: tagALARMHOST_MINOR_TYPE = + 70; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_REGISTER_EXTERNAL_MODULE: + tagALARMHOST_MINOR_TYPE = 71; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_CLOSE_KEYBOARD_ALARM: tagALARMHOST_MINOR_TYPE = + 72; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_MOD_3G_PARAM: tagALARMHOST_MINOR_TYPE = 73; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_MOD_PRINT_PARAM: tagALARMHOST_MINOR_TYPE = 74; +pub const tagALARMHOST_MINOR_TYPE_MINOR_SD_CARD_FORMAT: tagALARMHOST_MINOR_TYPE = 75; +pub const tagALARMHOST_MINOR_TYPE_MINOR_SUBSYSTEM_UPGRADE: tagALARMHOST_MINOR_TYPE = 76; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_PLAN_ARM_CFG: tagALARMHOST_MINOR_TYPE = 77; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_PHONE_ARM: tagALARMHOST_MINOR_TYPE = 78; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_PHONE_STAY_ARM: tagALARMHOST_MINOR_TYPE = 79; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_PHONE_QUICK_ARM: tagALARMHOST_MINOR_TYPE = 80; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_PHONE_DISARM: tagALARMHOST_MINOR_TYPE = 81; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_PHONE_CLEAR_ALARM: tagALARMHOST_MINOR_TYPE = 82; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_ALLOWLIST_CFG: tagALARMHOST_MINOR_TYPE = 83; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_TIME_TRIGGER_CFG: tagALARMHOST_MINOR_TYPE = 84; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_CAPTRUE_CFG: tagALARMHOST_MINOR_TYPE = 85; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_TAMPER_CFG: tagALARMHOST_MINOR_TYPE = 86; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_REMOTE_KEYPAD_UPGRADE: tagALARMHOST_MINOR_TYPE = + 87; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_ONETOUCH_AWAY_ARMING: tagALARMHOST_MINOR_TYPE = + 88; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_ONETOUCH_STAY_ARMING: tagALARMHOST_MINOR_TYPE = + 89; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_SINGLE_PARTITION_ARMING_OR_DISARMING: + tagALARMHOST_MINOR_TYPE = 90; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_CARD_CONFIGURATION: tagALARMHOST_MINOR_TYPE = 91; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_CARD_ARMING_OR_DISARMING: + tagALARMHOST_MINOR_TYPE = 92; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_EXPENDING_NETCENTER_CONFIGURATION: + tagALARMHOST_MINOR_TYPE = 93; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_NETCARD_CONFIGURATION: tagALARMHOST_MINOR_TYPE = + 94; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_DDNS_CONFIGURATION: tagALARMHOST_MINOR_TYPE = 95; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_RS485BUS_CONFIGURATION: tagALARMHOST_MINOR_TYPE = + 96; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_RS485BUS_RE_REGISTRATION: + tagALARMHOST_MINOR_TYPE = 97; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_REMOTE_OPEN_ELECTRIC_LOCK: + tagALARMHOST_MINOR_TYPE = 98; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_REMOTE_CLOSE_ELECTRIC_LOCK: + tagALARMHOST_MINOR_TYPE = 99; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_LOCAL_OPEN_ELECTRIC_LOCK: + tagALARMHOST_MINOR_TYPE = 100; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_LOCAL_CLOSE_ELECTRIC_LOCK: + tagALARMHOST_MINOR_TYPE = 101; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_OPEN_ALARM_LAMP: tagALARMHOST_MINOR_TYPE = 102; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_CLOSE_ALARM_LAMP: tagALARMHOST_MINOR_TYPE = 103; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_TEMPORARY_PASSWORD: tagALARMHOST_MINOR_TYPE = 104; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_ONEKEY_AWAY_ARM: tagALARMHOST_MINOR_TYPE = 105; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_ONEKEY_STAY_ARM: tagALARMHOST_MINOR_TYPE = 106; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_SINGLE_ZONE_ARM: tagALARMHOST_MINOR_TYPE = 107; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_SINGLE_ZONE_DISARM: tagALARMHOST_MINOR_TYPE = 108; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_HIDDNS_CONFIG: tagALARMHOST_MINOR_TYPE = 109; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_REMOTE_KEYBOARD_UPDATA: tagALARMHOST_MINOR_TYPE = + 110; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_ZONE_ADD_DETECTOR: tagALARMHOST_MINOR_TYPE = 111; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_ZONE_DELETE_DETECTOR: tagALARMHOST_MINOR_TYPE = + 112; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_QUERY_DETECTOR_SIGNAL: tagALARMHOST_MINOR_TYPE = + 113; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_QUERY_DETECTOR_BATTERY: tagALARMHOST_MINOR_TYPE = + 114; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_SET_DETECTOR_GUARD: tagALARMHOST_MINOR_TYPE = 115; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_SET_DETECTOR_UNGUARD: tagALARMHOST_MINOR_TYPE = + 116; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_SET_WIFI_PARAMETER: tagALARMHOST_MINOR_TYPE = 117; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_OPEN_VOICE: tagALARMHOST_MINOR_TYPE = 118; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_CLOSE_VOICE: tagALARMHOST_MINOR_TYPE = 119; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_ENABLE_FUNCTION_KEY: tagALARMHOST_MINOR_TYPE = + 120; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_DISABLE_FUNCTION_KEY: tagALARMHOST_MINOR_TYPE = + 121; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_READ_CARD: tagALARMHOST_MINOR_TYPE = 122; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_START_BROADCAST: tagALARMHOST_MINOR_TYPE = 123; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_STOP_BROADCAST: tagALARMHOST_MINOR_TYPE = 124; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_REMOTE_ZONE_MODULE_UPGRADE: + tagALARMHOST_MINOR_TYPE = 125; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_NETWORK_MODULE_EXTEND: tagALARMHOST_MINOR_TYPE = + 126; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_ADD_CONTROLLER: tagALARMHOST_MINOR_TYPE = 127; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_DELETE_CONTORLLER: tagALARMHOST_MINOR_TYPE = 128; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_REMOTE_NETWORKMODULE_UPGRADE: + tagALARMHOST_MINOR_TYPE = 129; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_WIRELESS_OUTPUT_ADD: tagALARMHOST_MINOR_TYPE = + 130; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_WIRELESS_OUTPUT_DEL: tagALARMHOST_MINOR_TYPE = + 131; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_WIRELESS_REPEATER_ADD: tagALARMHOST_MINOR_TYPE = + 132; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_WIRELESS_REPEATER_DEL: tagALARMHOST_MINOR_TYPE = + 133; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_PHONELIST_CFG: tagALARMHOST_MINOR_TYPE = 134; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_RF_SIGNAL_CHECK: tagALARMHOST_MINOR_TYPE = 135; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_USB_UPGRADE: tagALARMHOST_MINOR_TYPE = 136; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_DOOR_TIME_REMINDER_CFG: tagALARMHOST_MINOR_TYPE = + 137; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_WIRELESS_SIREN_ADD: tagALARMHOST_MINOR_TYPE = 138; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_WIRELESS_SIREN_DEL: tagALARMHOST_MINOR_TYPE = 139; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_OUT_SCALE_OPEN: tagALARMHOST_MINOR_TYPE = 140; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_OUT_SCALE_CLOSE: tagALARMHOST_MINOR_TYPE = 141; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_TIME_ZONE_CFG: tagALARMHOST_MINOR_TYPE = 142; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_NTP_START_AND_PARAMETERS_CFG: + tagALARMHOST_MINOR_TYPE = 143; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_DST_START_AND_PARAMETERS_CFG: + tagALARMHOST_MINOR_TYPE = 144; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_DEVINFO_CFG: tagALARMHOST_MINOR_TYPE = 145; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_VIDEO_OVERLAP_CFG: tagALARMHOST_MINOR_TYPE = 146; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_SSH_CFG: tagALARMHOST_MINOR_TYPE = 147; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_PASSWORD_MANAGE_CFG: tagALARMHOST_MINOR_TYPE = + 148; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_RESTORE_DEFAULT_PARAMETERS: + tagALARMHOST_MINOR_TYPE = 149; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_RESTORECOMPLETELY_DEFAULT_PARAMETERS: + tagALARMHOST_MINOR_TYPE = 150; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_AUDIO_AUTO_DETECT_CFG: tagALARMHOST_MINOR_TYPE = + 151; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_AUDIO_MANUAL_DETECT_CFG: tagALARMHOST_MINOR_TYPE = + 152; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_NET_PARAMETERS_CFG: tagALARMHOST_MINOR_TYPE = 153; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_MTU_CFG: tagALARMHOST_MINOR_TYPE = 154; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_PORT_CFG: tagALARMHOST_MINOR_TYPE = 155; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_DEFAULT_ROUTER_CFG: tagALARMHOST_MINOR_TYPE = 156; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_DNS_PARAMETERS_CFG: tagALARMHOST_MINOR_TYPE = 157; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_UNPNP_PARAMETERS_CFG: tagALARMHOST_MINOR_TYPE = + 158; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_SIP_PARAMETERS_CFG: tagALARMHOST_MINOR_TYPE = 159; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_FLOW_LIMIT_CFG: tagALARMHOST_MINOR_TYPE = 160; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_APN_PARAMETERS_CFG: tagALARMHOST_MINOR_TYPE = 161; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_MESSAGE_TELEPHONENO_CFG: tagALARMHOST_MINOR_TYPE = + 162; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_EZVIZ_PARAMATERS_CFG: tagALARMHOST_MINOR_TYPE = + 163; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_ISUP_PARAMATERS_CFG: tagALARMHOST_MINOR_TYPE = + 164; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_SIP_SWITCH_CFG: tagALARMHOST_MINOR_TYPE = 165; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_INFO_UPLOAD_TO_PLATFORM_CFG: + tagALARMHOST_MINOR_TYPE = 166; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_ONVIF_CONTROL: tagALARMHOST_MINOR_TYPE = 167; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_ONVIF_USER_ADD: tagALARMHOST_MINOR_TYPE = 168; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_ONVIF_USER_MOD: tagALARMHOST_MINOR_TYPE = 169; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_ONVIF_USER_DELETE: tagALARMHOST_MINOR_TYPE = 170; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_TIME_OF_BELLS_CFG: tagALARMHOST_MINOR_TYPE = 171; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_CALL_WAITTIME_CFG: tagALARMHOST_MINOR_TYPE = 172; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_PROMPT_PARAMATERS_CFG: tagALARMHOST_MINOR_TYPE = + 173; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_MUTEPLAN_PARAMATERS_CFG: tagALARMHOST_MINOR_TYPE = + 174; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_SD_PARTITION_CFG: tagALARMHOST_MINOR_TYPE = 175; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_AUDIO_PARAMETERS_CFG: tagALARMHOST_MINOR_TYPE = + 176; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_VOICETALK_AUDIO_ENCODING_CFG: + tagALARMHOST_MINOR_TYPE = 177; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_RECORD_PLAN_PARAMETERS_CFG: + tagALARMHOST_MINOR_TYPE = 178; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_RECORD_ADVANCE_PARAMETERS_CFG: + tagALARMHOST_MINOR_TYPE = 179; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_PICTURE_PLAN_PARAMETERS_CFG: + tagALARMHOST_MINOR_TYPE = 180; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_PICTURE_ADVANCE_PARAMETERS_CFG: + tagALARMHOST_MINOR_TYPE = 181; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_AUDIO_EXCEPTION_PARAMETERS_CFG: + tagALARMHOST_MINOR_TYPE = 182; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_PATROL_CARD_CFG: tagALARMHOST_MINOR_TYPE = 183; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_VOICE_VOLUME_CFG: tagALARMHOST_MINOR_TYPE = 184; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_VOICE_MODE_CFG: tagALARMHOST_MINOR_TYPE = 185; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_AUDIO_OR_MATERIALS_UPLOAD: + tagALARMHOST_MINOR_TYPE = 186; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_AUDIO_OR_MATERIALS_DELETE: + tagALARMHOST_MINOR_TYPE = 187; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_ALARM_LAMP_FLASH_TIME_CFG: + tagALARMHOST_MINOR_TYPE = 188; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_ALARM_LAMP_FLASH_PLAN_CFG: + tagALARMHOST_MINOR_TYPE = 189; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_FRONT_END_VIDEO_PARAMETERS_CFG: + tagALARMHOST_MINOR_TYPE = 190; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_WDR_CFG: tagALARMHOST_MINOR_TYPE = 191; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_BPFRAME_CFG: tagALARMHOST_MINOR_TYPE = 192; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_PASSWORD_RESET_CFG: tagALARMHOST_MINOR_TYPE = 193; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_ACCOUNT_LOCK: tagALARMHOST_MINOR_TYPE = 194; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_ACCOUNT_UNLOCK: tagALARMHOST_MINOR_TYPE = 195; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_START_LIVEVIEW_REMOTELY: tagALARMHOST_MINOR_TYPE = + 196; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_STOP_LIVEVIEW_REMOTELT: tagALARMHOST_MINOR_TYPE = + 197; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_TELEPHONE_CENTER_SETTINGS: + tagALARMHOST_MINOR_TYPE = 198; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_NATIONAL_STANDARD_CFG: tagALARMHOST_MINOR_TYPE = + 199; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_SUPPLEMENTLIGHT_CFG: tagALARMHOST_MINOR_TYPE = + 200; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_FACESNAP_CFG: tagALARMHOST_MINOR_TYPE = 201; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_PUBLISHMANAGE_CFG: tagALARMHOST_MINOR_TYPE = 202; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_KEYDIAL_CFG: tagALARMHOST_MINOR_TYPE = 203; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_VOICETALK_SILENT_CFG: tagALARMHOST_MINOR_TYPE = + 204; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_START_VIDEO_PROTECT: tagALARMHOST_MINOR_TYPE = + 205; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_START_AUDIO_PROTECT: tagALARMHOST_MINOR_TYPE = + 206; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_START_MANUAL_ANSWER: tagALARMHOST_MINOR_TYPE = + 207; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_START_LOG_SERVER: tagALARMHOST_MINOR_TYPE = 208; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_ADD_CARD: tagALARMHOST_MINOR_TYPE = 209; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_DELETE_CARD: tagALARMHOST_MINOR_TYPE = 210; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_MOTION_DETECTION_CFG: tagALARMHOST_MINOR_TYPE = + 211; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_VIDEO_BLOCK_CFG: tagALARMHOST_MINOR_TYPE = 212; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_FACE_DETECTION_CFG: tagALARMHOST_MINOR_TYPE = 213; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_LOG_BACKUP: tagALARMHOST_MINOR_TYPE = 214; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_LOCAL_SET_DEVICE_ACTIVE: tagALARMHOST_MINOR_TYPE = + 240; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_REMOTE_SET_DEVICE_ACTIVE: + tagALARMHOST_MINOR_TYPE = 241; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_LOCAL_PARA_FACTORY_DEFAULT: + tagALARMHOST_MINOR_TYPE = 242; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_REMOTE_PARA_FACTORY_DEFAULT: + tagALARMHOST_MINOR_TYPE = 243; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ADD_IPC: tagALARMHOST_MINOR_TYPE = 244; +pub const tagALARMHOST_MINOR_TYPE_MINOR_MODIFY_IPC: tagALARMHOST_MINOR_TYPE = 245; +pub const tagALARMHOST_MINOR_TYPE_MINOR_DELETE_IPC: tagALARMHOST_MINOR_TYPE = 246; +pub const tagALARMHOST_MINOR_TYPE_MINOR_SYS_CHECK_START: tagALARMHOST_MINOR_TYPE = 247; +pub const tagALARMHOST_MINOR_TYPE_MINOR_SYS_CHECK_STOP: tagALARMHOST_MINOR_TYPE = 248; +pub const tagALARMHOST_MINOR_TYPE_MINOR_SYS_CHECK_FINISH: tagALARMHOST_MINOR_TYPE = 249; +pub const tagALARMHOST_MINOR_TYPE_MINOR_DEVICE_TAMPER_CFG: tagALARMHOST_MINOR_TYPE = 250; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_INDICATORLIGHT_CFG: tagALARMHOST_MINOR_TYPE = 251; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_WIRELESSBUTTON_CFG: tagALARMHOST_MINOR_TYPE = 252; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_IRCUTFILTER_CFG: tagALARMHOST_MINOR_TYPE = 253; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_KEYWORD_AUDIO_RECOGNITION_CFG: + tagALARMHOST_MINOR_TYPE = 254; +pub const tagALARMHOST_MINOR_TYPE_MINOR_ALARMHOST_DEVICE_POWER_MODE_SWITCH_CFG: + tagALARMHOST_MINOR_TYPE = 255; +pub const tagALARMHOST_MINOR_TYPE_MINOR_SCHOOLTIME_IRGI_B: tagALARMHOST_MINOR_TYPE = 1; +pub const tagALARMHOST_MINOR_TYPE_MINOR_SCHOOLTIME_SDK: tagALARMHOST_MINOR_TYPE = 2; +pub const tagALARMHOST_MINOR_TYPE_MINOR_SCHOOLTIME_SELFTEST: tagALARMHOST_MINOR_TYPE = 3; +pub const tagALARMHOST_MINOR_TYPE_MINOR_SUBSYSTEM_ABNORMALINSERT: tagALARMHOST_MINOR_TYPE = 4; +pub const tagALARMHOST_MINOR_TYPE_MINOR_SUBSYSTEM_ABNORMALPULLOUT: tagALARMHOST_MINOR_TYPE = 5; +pub const tagALARMHOST_MINOR_TYPE_MINOR_AUTO_ARM: tagALARMHOST_MINOR_TYPE = 6; +pub const tagALARMHOST_MINOR_TYPE_MINOR_AUTO_DISARM: tagALARMHOST_MINOR_TYPE = 7; +pub const tagALARMHOST_MINOR_TYPE_MINOR_TIME_TIGGER_ON: tagALARMHOST_MINOR_TYPE = 8; +pub const tagALARMHOST_MINOR_TYPE_MINOR_TIME_TIGGER_OFF: tagALARMHOST_MINOR_TYPE = 9; +pub const tagALARMHOST_MINOR_TYPE_MINOR_AUTO_ARM_FAILD: tagALARMHOST_MINOR_TYPE = 10; +pub const tagALARMHOST_MINOR_TYPE_MINOR_AUTO_DISARM_FAILD: tagALARMHOST_MINOR_TYPE = 11; +pub const tagALARMHOST_MINOR_TYPE_MINOR_TIME_TIGGER_ON_FAILD: tagALARMHOST_MINOR_TYPE = 12; +pub const tagALARMHOST_MINOR_TYPE_MINOR_TIME_TIGGER_OFF_FAILD: tagALARMHOST_MINOR_TYPE = 13; +pub const tagALARMHOST_MINOR_TYPE_MINOR_MANDATORY_ALARM: tagALARMHOST_MINOR_TYPE = 14; +pub const tagALARMHOST_MINOR_TYPE_MINOR_KEYPAD_LOCKED: tagALARMHOST_MINOR_TYPE = 15; +pub const tagALARMHOST_MINOR_TYPE_MINOR_USB_INSERT: tagALARMHOST_MINOR_TYPE = 16; +pub const tagALARMHOST_MINOR_TYPE_MINOR_USB_PULLOUT: tagALARMHOST_MINOR_TYPE = 17; +pub const tagALARMHOST_MINOR_TYPE_MINOR_KEYPAD_UNLOCK: tagALARMHOST_MINOR_TYPE = 18; +pub type tagALARMHOST_MINOR_TYPE = ::std::os::raw::c_uint; +pub use self::tagALARMHOST_MINOR_TYPE as ALARMHOST_MINOR_TYPE; +pub const tagCharEncodeType_ENUM_MEM_CHAR_ENCODE_ERR: tagCharEncodeType = -1; +pub const tagCharEncodeType_ENUM_MEM_CHAR_ENCODE_NO: tagCharEncodeType = 0; +pub const tagCharEncodeType_ENUM_MEM_CHAR_ENCODE_CN: tagCharEncodeType = 1; +pub const tagCharEncodeType_ENUM_MEM_CHAR_ENCODE_GBK: tagCharEncodeType = 2; +pub const tagCharEncodeType_ENUM_MEM_CHAR_ENCODE_BIG5: tagCharEncodeType = 3; +pub const tagCharEncodeType_ENUM_MEM_CHAR_ENCODE_JP: tagCharEncodeType = 4; +pub const tagCharEncodeType_ENUM_MEM_CHAR_ENCODE_KR: tagCharEncodeType = 5; +pub const tagCharEncodeType_ENUM_MEM_CHAR_ENCODE_UTF8: tagCharEncodeType = 6; +pub const tagCharEncodeType_ENUM_MEM_CHAR_ENCODE_ISO8859_1: tagCharEncodeType = 7; +pub const tagCharEncodeType_ENUM_MEM_CHAR_ENCODE_UNICODE: tagCharEncodeType = 8; +pub type tagCharEncodeType = ::std::os::raw::c_int; +pub use self::tagCharEncodeType as CHAR_ENCODE_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_TIME { + pub dwYear: DWORD, + pub dwMonth: DWORD, + pub dwDay: DWORD, + pub dwHour: DWORD, + pub dwMinute: DWORD, + pub dwSecond: DWORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_TIME() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(NET_DVR_TIME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_TIME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwYear) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_TIME), + "::", + stringify!(dwYear) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMonth) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_TIME), + "::", + stringify!(dwMonth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDay) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_TIME), + "::", + stringify!(dwDay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHour) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_TIME), + "::", + stringify!(dwHour) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMinute) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_TIME), + "::", + stringify!(dwMinute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSecond) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_TIME), + "::", + stringify!(dwSecond) + ) + ); +} +pub type LPNET_DVR_TIME = *mut NET_DVR_TIME; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TIME_V30 { + pub wYear: WORD, + pub byMonth: BYTE, + pub byDay: BYTE, + pub byHour: BYTE, + pub byMinute: BYTE, + pub bySecond: BYTE, + pub byISO8601: BYTE, + pub wMilliSec: WORD, + pub cTimeDifferenceH: ::std::os::raw::c_char, + pub cTimeDifferenceM: ::std::os::raw::c_char, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TIME_V30() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_TIME_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TIME_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wYear) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_V30), + "::", + stringify!(wYear) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonth) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_V30), + "::", + stringify!(byMonth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDay) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_V30), + "::", + stringify!(byDay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHour) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_V30), + "::", + stringify!(byHour) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMinute) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_V30), + "::", + stringify!(byMinute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySecond) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_V30), + "::", + stringify!(bySecond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byISO8601) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_V30), + "::", + stringify!(byISO8601) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMilliSec) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_V30), + "::", + stringify!(wMilliSec) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceH) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_V30), + "::", + stringify!(cTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceM) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_V30), + "::", + stringify!(cTimeDifferenceM) + ) + ); +} +pub type NET_DVR_TIME_V30 = tagNET_DVR_TIME_V30; +pub type LPNET_DVR_TIME_V30 = *mut tagNET_DVR_TIME_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TIME_SEARCH { + pub wYear: WORD, + pub byMonth: BYTE, + pub byDay: BYTE, + pub byHour: BYTE, + pub byMinute: BYTE, + pub bySecond: BYTE, + pub cTimeDifferenceH: ::std::os::raw::c_char, + pub cTimeDifferenceM: ::std::os::raw::c_char, + pub byLocalOrUTC: BYTE, + pub wMillisecond: WORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TIME_SEARCH() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_TIME_SEARCH)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TIME_SEARCH)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wYear) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SEARCH), + "::", + stringify!(wYear) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonth) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SEARCH), + "::", + stringify!(byMonth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDay) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SEARCH), + "::", + stringify!(byDay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHour) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SEARCH), + "::", + stringify!(byHour) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMinute) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SEARCH), + "::", + stringify!(byMinute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySecond) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SEARCH), + "::", + stringify!(bySecond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceH) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SEARCH), + "::", + stringify!(cTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceM) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SEARCH), + "::", + stringify!(cTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalOrUTC) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SEARCH), + "::", + stringify!(byLocalOrUTC) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMillisecond) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SEARCH), + "::", + stringify!(wMillisecond) + ) + ); +} +pub type NET_DVR_TIME_SEARCH = tagNET_DVR_TIME_SEARCH; +pub type LPNET_DVR_TIME_SEARCH = *mut tagNET_DVR_TIME_SEARCH; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TIME_SEARCH_COND { + pub wYear: WORD, + pub byMonth: BYTE, + pub byDay: BYTE, + pub byHour: BYTE, + pub byMinute: BYTE, + pub bySecond: BYTE, + pub byLocalOrUTC: BYTE, + pub wMillisecond: WORD, + pub cTimeDifferenceH: ::std::os::raw::c_char, + pub cTimeDifferenceM: ::std::os::raw::c_char, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TIME_SEARCH_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_TIME_SEARCH_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TIME_SEARCH_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wYear) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SEARCH_COND), + "::", + stringify!(wYear) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonth) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SEARCH_COND), + "::", + stringify!(byMonth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDay) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SEARCH_COND), + "::", + stringify!(byDay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHour) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SEARCH_COND), + "::", + stringify!(byHour) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMinute) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SEARCH_COND), + "::", + stringify!(byMinute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySecond) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SEARCH_COND), + "::", + stringify!(bySecond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalOrUTC) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SEARCH_COND), + "::", + stringify!(byLocalOrUTC) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMillisecond) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SEARCH_COND), + "::", + stringify!(wMillisecond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceH) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SEARCH_COND), + "::", + stringify!(cTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceM) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SEARCH_COND), + "::", + stringify!(cTimeDifferenceM) + ) + ); +} +pub type NET_DVR_TIME_SEARCH_COND = tagNET_DVR_TIME_SEARCH_COND; +pub type LPNET_DVR_TIME_SEARCH_COND = *mut tagNET_DVR_TIME_SEARCH_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TIME_V50 { + pub wYear: WORD, + pub byMonth: BYTE, + pub byDay: BYTE, + pub byHour: BYTE, + pub byMinute: BYTE, + pub bySecond: BYTE, + pub byISO8601: BYTE, + pub wMillisecond: WORD, + pub cTimeDifferenceH: ::std::os::raw::c_char, + pub cTimeDifferenceM: ::std::os::raw::c_char, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TIME_V50() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_TIME_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TIME_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wYear) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_V50), + "::", + stringify!(wYear) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonth) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_V50), + "::", + stringify!(byMonth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDay) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_V50), + "::", + stringify!(byDay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHour) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_V50), + "::", + stringify!(byHour) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMinute) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_V50), + "::", + stringify!(byMinute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySecond) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_V50), + "::", + stringify!(bySecond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byISO8601) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_V50), + "::", + stringify!(byISO8601) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMillisecond) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_V50), + "::", + stringify!(wMillisecond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceH) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_V50), + "::", + stringify!(cTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceM) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_V50), + "::", + stringify!(cTimeDifferenceM) + ) + ); +} +pub type NET_DVR_TIME_V50 = tagNET_DVR_TIME_V50; +pub type LPNET_DVR_TIME_V50 = *mut tagNET_DVR_TIME_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CALIBRATE_TIME { + pub dwSize: DWORD, + pub struTime: NET_DVR_TIME, + pub wMilliSec: WORD, + pub byRes: [BYTE; 14usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CALIBRATE_TIME() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_CALIBRATE_TIME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CALIBRATE_TIME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALIBRATE_TIME), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALIBRATE_TIME), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMilliSec) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALIBRATE_TIME), + "::", + stringify!(wMilliSec) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 30usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALIBRATE_TIME), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CALIBRATE_TIME = tagNET_DVR_CALIBRATE_TIME; +pub type LPNET_DVR_CALIBRATE_TIME = *mut tagNET_DVR_CALIBRATE_TIME; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TIMESIGN_CFG { + pub dwSize: DWORD, + pub byCustomSetTimeSign: [BYTE; 32usize], + pub byRes: [BYTE; 96usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TIMESIGN_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_TIMESIGN_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TIMESIGN_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIMESIGN_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCustomSetTimeSign) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIMESIGN_CFG), + "::", + stringify!(byCustomSetTimeSign) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIMESIGN_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TIMESIGN_CFG = tagNET_DVR_TIMESIGN_CFG; +pub type LPNET_DVR_TIMESIGN_CFG = *mut tagNET_DVR_TIMESIGN_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TIME_EX { + pub wYear: WORD, + pub byMonth: BYTE, + pub byDay: BYTE, + pub byHour: BYTE, + pub byMinute: BYTE, + pub bySecond: BYTE, + pub byRes: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TIME_EX() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_TIME_EX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TIME_EX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wYear) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_EX), + "::", + stringify!(wYear) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonth) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_EX), + "::", + stringify!(byMonth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDay) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_EX), + "::", + stringify!(byDay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHour) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_EX), + "::", + stringify!(byHour) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMinute) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_EX), + "::", + stringify!(byMinute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySecond) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_EX), + "::", + stringify!(bySecond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_EX), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TIME_EX = tagNET_DVR_TIME_EX; +pub type LPNET_DVR_TIME_EX = *mut tagNET_DVR_TIME_EX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_SCHEDTIME { + pub byStartHour: BYTE, + pub byStartMin: BYTE, + pub byStopHour: BYTE, + pub byStopMin: BYTE, +} +#[test] +fn bindgen_test_layout_NET_DVR_SCHEDTIME() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(NET_DVR_SCHEDTIME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_SCHEDTIME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartHour) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SCHEDTIME), + "::", + stringify!(byStartHour) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartMin) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SCHEDTIME), + "::", + stringify!(byStartMin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStopHour) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SCHEDTIME), + "::", + stringify!(byStopHour) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStopMin) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SCHEDTIME), + "::", + stringify!(byStopMin) + ) + ); +} +pub type LPNET_DVR_SCHEDTIME = *mut NET_DVR_SCHEDTIME; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_STRUCTHEAD { + pub wLength: WORD, + pub byVersion: BYTE, + pub byRes: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STRUCTHEAD() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(tagNET_DVR_STRUCTHEAD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_STRUCTHEAD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLength) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STRUCTHEAD), + "::", + stringify!(wLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVersion) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STRUCTHEAD), + "::", + stringify!(byVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STRUCTHEAD), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_STRUCTHEAD = tagNET_DVR_STRUCTHEAD; +pub type LPNET_DVR_STRUCTHEAD = *mut tagNET_DVR_STRUCTHEAD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HANDLEEXCEPTION_V41 { + pub dwHandleType: DWORD, + pub dwMaxRelAlarmOutChanNum: DWORD, + pub dwRelAlarmOut: [DWORD; 4128usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HANDLEEXCEPTION_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16584usize, + concat!("Size of: ", stringify!(tagNET_DVR_HANDLEEXCEPTION_V41)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HANDLEEXCEPTION_V41)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHandleType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HANDLEEXCEPTION_V41), + "::", + stringify!(dwHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxRelAlarmOutChanNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HANDLEEXCEPTION_V41), + "::", + stringify!(dwMaxRelAlarmOutChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelAlarmOut) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HANDLEEXCEPTION_V41), + "::", + stringify!(dwRelAlarmOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16520usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HANDLEEXCEPTION_V41), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_HANDLEEXCEPTION_V41 = tagNET_DVR_HANDLEEXCEPTION_V41; +pub type LPNET_DVR_HANDLEEXCEPTION_V41 = *mut tagNET_DVR_HANDLEEXCEPTION_V41; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HANDLEEXCEPTION_V40 { + pub dwHandleType: DWORD, + pub dwMaxRelAlarmOutChanNum: DWORD, + pub dwRelAlarmOutChanNum: DWORD, + pub dwRelAlarmOut: [DWORD; 64usize], + pub byWhiteLightDurationTime: BYTE, + pub byBrightness: BYTE, + pub byAudioType: BYTE, + pub byTimes: BYTE, + pub byRes: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HANDLEEXCEPTION_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 332usize, + concat!("Size of: ", stringify!(tagNET_DVR_HANDLEEXCEPTION_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HANDLEEXCEPTION_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHandleType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HANDLEEXCEPTION_V40), + "::", + stringify!(dwHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxRelAlarmOutChanNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HANDLEEXCEPTION_V40), + "::", + stringify!(dwMaxRelAlarmOutChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelAlarmOutChanNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HANDLEEXCEPTION_V40), + "::", + stringify!(dwRelAlarmOutChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelAlarmOut) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HANDLEEXCEPTION_V40), + "::", + stringify!(dwRelAlarmOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWhiteLightDurationTime) as usize - ptr as usize }, + 268usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HANDLEEXCEPTION_V40), + "::", + stringify!(byWhiteLightDurationTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrightness) as usize - ptr as usize }, + 269usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HANDLEEXCEPTION_V40), + "::", + stringify!(byBrightness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioType) as usize - ptr as usize }, + 270usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HANDLEEXCEPTION_V40), + "::", + stringify!(byAudioType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimes) as usize - ptr as usize }, + 271usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HANDLEEXCEPTION_V40), + "::", + stringify!(byTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HANDLEEXCEPTION_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_HANDLEEXCEPTION_V40 = tagNET_DVR_HANDLEEXCEPTION_V40; +pub type LPNET_DVR_HANDLEEXCEPTION_V40 = *mut tagNET_DVR_HANDLEEXCEPTION_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_HANDLEEXCEPTION_V30 { + pub dwHandleType: DWORD, + pub byRelAlarmOut: [BYTE; 96usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_HANDLEEXCEPTION_V30() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 100usize, + concat!("Size of: ", stringify!(NET_DVR_HANDLEEXCEPTION_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_HANDLEEXCEPTION_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHandleType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HANDLEEXCEPTION_V30), + "::", + stringify!(dwHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelAlarmOut) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HANDLEEXCEPTION_V30), + "::", + stringify!(byRelAlarmOut) + ) + ); +} +pub type LPNET_DVR_HANDLEEXCEPTION_V30 = *mut NET_DVR_HANDLEEXCEPTION_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_HANDLEEXCEPTION { + pub dwHandleType: DWORD, + pub byRelAlarmOut: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_HANDLEEXCEPTION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(NET_DVR_HANDLEEXCEPTION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_HANDLEEXCEPTION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHandleType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HANDLEEXCEPTION), + "::", + stringify!(dwHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelAlarmOut) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HANDLEEXCEPTION), + "::", + stringify!(byRelAlarmOut) + ) + ); +} +pub type LPNET_DVR_HANDLEEXCEPTION = *mut NET_DVR_HANDLEEXCEPTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DEVICECFG { + pub dwSize: DWORD, + pub sDVRName: [BYTE; 32usize], + pub dwDVRID: DWORD, + pub dwRecycleRecord: DWORD, + pub sSerialNumber: [BYTE; 48usize], + pub dwSoftwareVersion: DWORD, + pub dwSoftwareBuildDate: DWORD, + pub dwDSPSoftwareVersion: DWORD, + pub dwDSPSoftwareBuildDate: DWORD, + pub dwPanelVersion: DWORD, + pub dwHardwareVersion: DWORD, + pub byAlarmInPortNum: BYTE, + pub byAlarmOutPortNum: BYTE, + pub byRS232Num: BYTE, + pub byRS485Num: BYTE, + pub byNetworkPortNum: BYTE, + pub byDiskCtrlNum: BYTE, + pub byDiskNum: BYTE, + pub byDVRType: BYTE, + pub byChanNum: BYTE, + pub byStartChan: BYTE, + pub byDecordChans: BYTE, + pub byVGANum: BYTE, + pub byUSBNum: BYTE, + pub byAuxoutNum: BYTE, + pub byAudioNum: BYTE, + pub byIPChanNum: BYTE, +} +#[test] +fn bindgen_test_layout_NET_DVR_DEVICECFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(NET_DVR_DEVICECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_DEVICECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDVRName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(sDVRName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDVRID) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(dwDVRID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecycleRecord) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(dwRecycleRecord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSerialNumber) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(sSerialNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSoftwareVersion) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(dwSoftwareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSoftwareBuildDate) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(dwSoftwareBuildDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDSPSoftwareVersion) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(dwDSPSoftwareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDSPSoftwareBuildDate) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(dwDSPSoftwareBuildDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPanelVersion) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(dwPanelVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHardwareVersion) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(dwHardwareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInPortNum) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(byAlarmInPortNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutPortNum) as usize - ptr as usize }, + 117usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(byAlarmOutPortNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRS232Num) as usize - ptr as usize }, + 118usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(byRS232Num) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRS485Num) as usize - ptr as usize }, + 119usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(byRS485Num) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetworkPortNum) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(byNetworkPortNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDiskCtrlNum) as usize - ptr as usize }, + 121usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(byDiskCtrlNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDiskNum) as usize - ptr as usize }, + 122usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(byDiskNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDVRType) as usize - ptr as usize }, + 123usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(byDVRType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanNum) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(byChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartChan) as usize - ptr as usize }, + 125usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(byStartChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecordChans) as usize - ptr as usize }, + 126usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(byDecordChans) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVGANum) as usize - ptr as usize }, + 127usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(byVGANum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUSBNum) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(byUSBNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAuxoutNum) as usize - ptr as usize }, + 129usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(byAuxoutNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioNum) as usize - ptr as usize }, + 130usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(byAudioNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIPChanNum) as usize - ptr as usize }, + 131usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG), + "::", + stringify!(byIPChanNum) + ) + ); +} +pub type LPNET_DVR_DEVICECFG = *mut NET_DVR_DEVICECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_IPADDR { + pub sIpV4: [::std::os::raw::c_char; 16usize], + pub byIPv6: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_IPADDR() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!("Size of: ", stringify!(NET_DVR_IPADDR)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_IPADDR)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sIpV4) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPADDR), + "::", + stringify!(sIpV4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIPv6) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPADDR), + "::", + stringify!(byIPv6) + ) + ); +} +pub type LPNET_DVR_IPADDR = *mut NET_DVR_IPADDR; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_IPADDR_UNION { + pub szIPv4: [::std::os::raw::c_char; 16usize], + pub szIPv6: [::std::os::raw::c_char; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPADDR_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_IPADDR_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IPADDR_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szIPv4) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPADDR_UNION), + "::", + stringify!(szIPv4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szIPv6) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPADDR_UNION), + "::", + stringify!(szIPv6) + ) + ); +} +pub type NET_DVR_IPADDR_UNION = tagNET_DVR_IPADDR_UNION; +pub type LPNET_DVR_IPADDR_UNION = *mut tagNET_DVR_IPADDR_UNION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ADDRESS { + pub struIP: NET_DVR_IPADDR, + pub wPort: WORD, + pub byRes: [BYTE; 2usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ADDRESS() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!("Size of: ", stringify!(tagNET_DVR_ADDRESS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ADDRESS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADDRESS), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADDRESS), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 146usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADDRESS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ADDRESS = tagNET_DVR_ADDRESS; +pub type LPNET_DVR_ADDRESS = *mut tagNET_DVR_ADDRESS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_ETHERNET_V30 { + pub struDVRIP: NET_DVR_IPADDR, + pub struDVRIPMask: NET_DVR_IPADDR, + pub dwNetInterface: DWORD, + pub wDVRPort: WORD, + pub wMTU: WORD, + pub byMACAddr: [BYTE; 6usize], + pub byEthernetPortNo: BYTE, + pub byRes: [BYTE; 1usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_ETHERNET_V30() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 304usize, + concat!("Size of: ", stringify!(NET_DVR_ETHERNET_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_ETHERNET_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDVRIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET_V30), + "::", + stringify!(struDVRIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDVRIPMask) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET_V30), + "::", + stringify!(struDVRIPMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNetInterface) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET_V30), + "::", + stringify!(dwNetInterface) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDVRPort) as usize - ptr as usize }, + 292usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET_V30), + "::", + stringify!(wDVRPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMTU) as usize - ptr as usize }, + 294usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET_V30), + "::", + stringify!(wMTU) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMACAddr) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET_V30), + "::", + stringify!(byMACAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEthernetPortNo) as usize - ptr as usize }, + 302usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET_V30), + "::", + stringify!(byEthernetPortNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 303usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET_V30), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_ETHERNET_V30 = *mut NET_DVR_ETHERNET_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_ETHERNET { + pub sDVRIP: [::std::os::raw::c_char; 16usize], + pub sDVRIPMask: [::std::os::raw::c_char; 16usize], + pub dwNetInterface: DWORD, + pub wDVRPort: WORD, + pub byMACAddr: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_ETHERNET() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(NET_DVR_ETHERNET)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_ETHERNET)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDVRIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET), + "::", + stringify!(sDVRIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDVRIPMask) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET), + "::", + stringify!(sDVRIPMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNetInterface) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET), + "::", + stringify!(dwNetInterface) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDVRPort) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET), + "::", + stringify!(wDVRPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMACAddr) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET), + "::", + stringify!(byMACAddr) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PPPOECFG { + pub dwPPPOE: DWORD, + pub sPPPoEUser: [BYTE; 32usize], + pub sPPPoEPassword: [::std::os::raw::c_char; 16usize], + pub struPPPoEIP: NET_DVR_IPADDR, +} +#[test] +fn bindgen_test_layout_NET_DVR_PPPOECFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 196usize, + concat!("Size of: ", stringify!(NET_DVR_PPPOECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_PPPOECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPPPOE) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PPPOECFG), + "::", + stringify!(dwPPPOE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPPPoEUser) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PPPOECFG), + "::", + stringify!(sPPPoEUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPPPoEPassword) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PPPOECFG), + "::", + stringify!(sPPPoEPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPPPoEIP) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PPPOECFG), + "::", + stringify!(struPPPoEIP) + ) + ); +} +pub type LPNET_DVR_PPPOECFG = *mut NET_DVR_PPPOECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_NETCFG_V30 { + pub dwSize: DWORD, + pub struEtherNet: [NET_DVR_ETHERNET_V30; 2usize], + pub struRes1: [NET_DVR_IPADDR; 2usize], + pub struAlarmHostIpAddr: NET_DVR_IPADDR, + pub byRes2: [BYTE; 4usize], + pub wAlarmHostIpPort: WORD, + pub byUseDhcp: BYTE, + pub byIPv6Mode: BYTE, + pub struDnsServer1IpAddr: NET_DVR_IPADDR, + pub struDnsServer2IpAddr: NET_DVR_IPADDR, + pub byIpResolver: [BYTE; 64usize], + pub wIpResolverPort: WORD, + pub wHttpPortNo: WORD, + pub struMulticastIpAddr: NET_DVR_IPADDR, + pub struGatewayIpAddr: NET_DVR_IPADDR, + pub struPPPoE: NET_DVR_PPPOECFG, + pub byEnablePrivateMulticastDiscovery: BYTE, + pub byEnableOnvifMulticastDiscovery: BYTE, + pub byEnableDNS: BYTE, + pub byRes: [BYTE; 61usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_NETCFG_V30() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1956usize, + concat!("Size of: ", stringify!(NET_DVR_NETCFG_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_NETCFG_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_V30), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEtherNet) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_V30), + "::", + stringify!(struEtherNet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRes1) as usize - ptr as usize }, + 612usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_V30), + "::", + stringify!(struRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmHostIpAddr) as usize - ptr as usize }, + 900usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_V30), + "::", + stringify!(struAlarmHostIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1044usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_V30), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAlarmHostIpPort) as usize - ptr as usize }, + 1048usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_V30), + "::", + stringify!(wAlarmHostIpPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseDhcp) as usize - ptr as usize }, + 1050usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_V30), + "::", + stringify!(byUseDhcp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIPv6Mode) as usize - ptr as usize }, + 1051usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_V30), + "::", + stringify!(byIPv6Mode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDnsServer1IpAddr) as usize - ptr as usize }, + 1052usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_V30), + "::", + stringify!(struDnsServer1IpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDnsServer2IpAddr) as usize - ptr as usize }, + 1196usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_V30), + "::", + stringify!(struDnsServer2IpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIpResolver) as usize - ptr as usize }, + 1340usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_V30), + "::", + stringify!(byIpResolver) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wIpResolverPort) as usize - ptr as usize }, + 1404usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_V30), + "::", + stringify!(wIpResolverPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHttpPortNo) as usize - ptr as usize }, + 1406usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_V30), + "::", + stringify!(wHttpPortNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMulticastIpAddr) as usize - ptr as usize }, + 1408usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_V30), + "::", + stringify!(struMulticastIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGatewayIpAddr) as usize - ptr as usize }, + 1552usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_V30), + "::", + stringify!(struGatewayIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPPPoE) as usize - ptr as usize }, + 1696usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_V30), + "::", + stringify!(struPPPoE) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byEnablePrivateMulticastDiscovery) as usize - ptr as usize + }, + 1892usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_V30), + "::", + stringify!(byEnablePrivateMulticastDiscovery) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byEnableOnvifMulticastDiscovery) as usize - ptr as usize + }, + 1893usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_V30), + "::", + stringify!(byEnableOnvifMulticastDiscovery) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableDNS) as usize - ptr as usize }, + 1894usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_V30), + "::", + stringify!(byEnableDNS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1895usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_V30), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_NETCFG_V30 = *mut NET_DVR_NETCFG_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_ETHERNET_MULTI { + pub struDVRIP: NET_DVR_IPADDR, + pub struDVRIPMask: NET_DVR_IPADDR, + pub dwNetInterface: DWORD, + pub byCardType: BYTE, + pub byEnableDNS: BYTE, + pub wMTU: WORD, + pub byMACAddr: [BYTE; 6usize], + pub byEthernetPortNo: BYTE, + pub bySilkScreen: BYTE, + pub byUseDhcp: BYTE, + pub byRes3: [BYTE; 3usize], + pub struGatewayIpAddr: NET_DVR_IPADDR, + pub struDnsServer1IpAddr: NET_DVR_IPADDR, + pub struDnsServer2IpAddr: NET_DVR_IPADDR, +} +#[test] +fn bindgen_test_layout_NET_DVR_ETHERNET_MULTI() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 740usize, + concat!("Size of: ", stringify!(NET_DVR_ETHERNET_MULTI)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_ETHERNET_MULTI)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDVRIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET_MULTI), + "::", + stringify!(struDVRIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDVRIPMask) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET_MULTI), + "::", + stringify!(struDVRIPMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNetInterface) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET_MULTI), + "::", + stringify!(dwNetInterface) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardType) as usize - ptr as usize }, + 292usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET_MULTI), + "::", + stringify!(byCardType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableDNS) as usize - ptr as usize }, + 293usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET_MULTI), + "::", + stringify!(byEnableDNS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMTU) as usize - ptr as usize }, + 294usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET_MULTI), + "::", + stringify!(wMTU) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMACAddr) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET_MULTI), + "::", + stringify!(byMACAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEthernetPortNo) as usize - ptr as usize }, + 302usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET_MULTI), + "::", + stringify!(byEthernetPortNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySilkScreen) as usize - ptr as usize }, + 303usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET_MULTI), + "::", + stringify!(bySilkScreen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseDhcp) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET_MULTI), + "::", + stringify!(byUseDhcp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 305usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET_MULTI), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGatewayIpAddr) as usize - ptr as usize }, + 308usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET_MULTI), + "::", + stringify!(struGatewayIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDnsServer1IpAddr) as usize - ptr as usize }, + 452usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET_MULTI), + "::", + stringify!(struDnsServer1IpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDnsServer2IpAddr) as usize - ptr as usize }, + 596usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ETHERNET_MULTI), + "::", + stringify!(struDnsServer2IpAddr) + ) + ); +} +pub type LPNET_DVR_ETHERNET_MULTI = *mut NET_DVR_ETHERNET_MULTI; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_NETCFG_MULTI { + pub dwSize: DWORD, + pub byDefaultRoute: BYTE, + pub byNetworkCardNum: BYTE, + pub byWorkMode: BYTE, + pub byRes: BYTE, + pub struEtherNet: [NET_DVR_ETHERNET_MULTI; 4usize], + pub struManageHost1IpAddr: NET_DVR_IPADDR, + pub struManageHost2IpAddr: NET_DVR_IPADDR, + pub struAlarmHostIpAddr: NET_DVR_IPADDR, + pub wManageHost1Port: WORD, + pub wManageHost2Port: WORD, + pub wAlarmHostIpPort: WORD, + pub byIpResolver: [BYTE; 64usize], + pub wIpResolverPort: WORD, + pub wDvrPort: WORD, + pub wHttpPortNo: WORD, + pub wDvrPort2: WORD, + pub byRes2: [BYTE; 4usize], + pub struMulticastIpAddr: NET_DVR_IPADDR, + pub struPPPoE: NET_DVR_PPPOECFG, + pub byRes3: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_NETCFG_MULTI() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 3848usize, + concat!("Size of: ", stringify!(NET_DVR_NETCFG_MULTI)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_NETCFG_MULTI)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_MULTI), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDefaultRoute) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_MULTI), + "::", + stringify!(byDefaultRoute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetworkCardNum) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_MULTI), + "::", + stringify!(byNetworkCardNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkMode) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_MULTI), + "::", + stringify!(byWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_MULTI), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEtherNet) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_MULTI), + "::", + stringify!(struEtherNet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struManageHost1IpAddr) as usize - ptr as usize }, + 2968usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_MULTI), + "::", + stringify!(struManageHost1IpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struManageHost2IpAddr) as usize - ptr as usize }, + 3112usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_MULTI), + "::", + stringify!(struManageHost2IpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmHostIpAddr) as usize - ptr as usize }, + 3256usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_MULTI), + "::", + stringify!(struAlarmHostIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wManageHost1Port) as usize - ptr as usize }, + 3400usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_MULTI), + "::", + stringify!(wManageHost1Port) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wManageHost2Port) as usize - ptr as usize }, + 3402usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_MULTI), + "::", + stringify!(wManageHost2Port) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAlarmHostIpPort) as usize - ptr as usize }, + 3404usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_MULTI), + "::", + stringify!(wAlarmHostIpPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIpResolver) as usize - ptr as usize }, + 3406usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_MULTI), + "::", + stringify!(byIpResolver) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wIpResolverPort) as usize - ptr as usize }, + 3470usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_MULTI), + "::", + stringify!(wIpResolverPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDvrPort) as usize - ptr as usize }, + 3472usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_MULTI), + "::", + stringify!(wDvrPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHttpPortNo) as usize - ptr as usize }, + 3474usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_MULTI), + "::", + stringify!(wHttpPortNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDvrPort2) as usize - ptr as usize }, + 3476usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_MULTI), + "::", + stringify!(wDvrPort2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 3478usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_MULTI), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMulticastIpAddr) as usize - ptr as usize }, + 3482usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_MULTI), + "::", + stringify!(struMulticastIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPPPoE) as usize - ptr as usize }, + 3628usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_MULTI), + "::", + stringify!(struPPPoE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 3824usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_MULTI), + "::", + stringify!(byRes3) + ) + ); +} +pub type LPNET_DVR_NETCFG_MULTI = *mut NET_DVR_NETCFG_MULTI; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_NETCFG { + pub dwSize: DWORD, + pub struEtherNet: [NET_DVR_ETHERNET; 2usize], + pub sManageHostIP: [::std::os::raw::c_char; 16usize], + pub wManageHostPort: WORD, + pub sIPServerIP: [::std::os::raw::c_char; 16usize], + pub sMultiCastIP: [::std::os::raw::c_char; 16usize], + pub sGatewayIP: [::std::os::raw::c_char; 16usize], + pub sNFSIP: [::std::os::raw::c_char; 16usize], + pub sNFSDirectory: [BYTE; 128usize], + pub dwPPPOE: DWORD, + pub sPPPoEUser: [BYTE; 32usize], + pub sPPPoEPassword: [::std::os::raw::c_char; 16usize], + pub sPPPoEIP: [::std::os::raw::c_char; 16usize], + pub wHttpPort: WORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_NETCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 376usize, + concat!("Size of: ", stringify!(NET_DVR_NETCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_NETCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEtherNet) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG), + "::", + stringify!(struEtherNet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sManageHostIP) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG), + "::", + stringify!(sManageHostIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wManageHostPort) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG), + "::", + stringify!(wManageHostPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sIPServerIP) as usize - ptr as usize }, + 110usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG), + "::", + stringify!(sIPServerIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sMultiCastIP) as usize - ptr as usize }, + 126usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG), + "::", + stringify!(sMultiCastIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sGatewayIP) as usize - ptr as usize }, + 142usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG), + "::", + stringify!(sGatewayIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sNFSIP) as usize - ptr as usize }, + 158usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG), + "::", + stringify!(sNFSIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sNFSDirectory) as usize - ptr as usize }, + 174usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG), + "::", + stringify!(sNFSDirectory) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPPPOE) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG), + "::", + stringify!(dwPPPOE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPPPoEUser) as usize - ptr as usize }, + 308usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG), + "::", + stringify!(sPPPoEUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPPPoEPassword) as usize - ptr as usize }, + 340usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG), + "::", + stringify!(sPPPoEPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPPPoEIP) as usize - ptr as usize }, + 356usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG), + "::", + stringify!(sPPPoEIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHttpPort) as usize - ptr as usize }, + 372usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG), + "::", + stringify!(wHttpPort) + ) + ); +} +pub type LPNET_DVR_NETCFG = *mut NET_DVR_NETCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_NETCFG_V50 { + pub dwSize: DWORD, + pub struEtherNet: [NET_DVR_ETHERNET_V30; 2usize], + pub struRes1: [NET_DVR_IPADDR; 2usize], + pub struAlarmHostIpAddr: NET_DVR_IPADDR, + pub byRes2: [BYTE; 4usize], + pub wAlarmHostIpPort: WORD, + pub byUseDhcp: BYTE, + pub byIPv6Mode: BYTE, + pub struDnsServer1IpAddr: NET_DVR_IPADDR, + pub struDnsServer2IpAddr: NET_DVR_IPADDR, + pub byIpResolver: [BYTE; 64usize], + pub wIpResolverPort: WORD, + pub wHttpPortNo: WORD, + pub struMulticastIpAddr: NET_DVR_IPADDR, + pub struGatewayIpAddr: NET_DVR_IPADDR, + pub struPPPoE: NET_DVR_PPPOECFG, + pub byEnablePrivateMulticastDiscovery: BYTE, + pub byEnableOnvifMulticastDiscovery: BYTE, + pub wAlarmHost2IpPort: WORD, + pub struAlarmHost2IpAddr: NET_DVR_IPADDR, + pub byEnableDNS: BYTE, + pub byRes: [BYTE; 599usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NETCFG_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2640usize, + concat!("Size of: ", stringify!(tagNET_DVR_NETCFG_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NETCFG_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETCFG_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEtherNet) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETCFG_V50), + "::", + stringify!(struEtherNet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRes1) as usize - ptr as usize }, + 612usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETCFG_V50), + "::", + stringify!(struRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmHostIpAddr) as usize - ptr as usize }, + 900usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETCFG_V50), + "::", + stringify!(struAlarmHostIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1044usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETCFG_V50), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAlarmHostIpPort) as usize - ptr as usize }, + 1048usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETCFG_V50), + "::", + stringify!(wAlarmHostIpPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseDhcp) as usize - ptr as usize }, + 1050usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETCFG_V50), + "::", + stringify!(byUseDhcp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIPv6Mode) as usize - ptr as usize }, + 1051usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETCFG_V50), + "::", + stringify!(byIPv6Mode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDnsServer1IpAddr) as usize - ptr as usize }, + 1052usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETCFG_V50), + "::", + stringify!(struDnsServer1IpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDnsServer2IpAddr) as usize - ptr as usize }, + 1196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETCFG_V50), + "::", + stringify!(struDnsServer2IpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIpResolver) as usize - ptr as usize }, + 1340usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETCFG_V50), + "::", + stringify!(byIpResolver) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wIpResolverPort) as usize - ptr as usize }, + 1404usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETCFG_V50), + "::", + stringify!(wIpResolverPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHttpPortNo) as usize - ptr as usize }, + 1406usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETCFG_V50), + "::", + stringify!(wHttpPortNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMulticastIpAddr) as usize - ptr as usize }, + 1408usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETCFG_V50), + "::", + stringify!(struMulticastIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGatewayIpAddr) as usize - ptr as usize }, + 1552usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETCFG_V50), + "::", + stringify!(struGatewayIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPPPoE) as usize - ptr as usize }, + 1696usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETCFG_V50), + "::", + stringify!(struPPPoE) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byEnablePrivateMulticastDiscovery) as usize - ptr as usize + }, + 1892usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETCFG_V50), + "::", + stringify!(byEnablePrivateMulticastDiscovery) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byEnableOnvifMulticastDiscovery) as usize - ptr as usize + }, + 1893usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETCFG_V50), + "::", + stringify!(byEnableOnvifMulticastDiscovery) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAlarmHost2IpPort) as usize - ptr as usize }, + 1894usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETCFG_V50), + "::", + stringify!(wAlarmHost2IpPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmHost2IpAddr) as usize - ptr as usize }, + 1896usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETCFG_V50), + "::", + stringify!(struAlarmHost2IpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableDNS) as usize - ptr as usize }, + 2040usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETCFG_V50), + "::", + stringify!(byEnableDNS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2041usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETCFG_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_NETCFG_V50 = tagNET_DVR_NETCFG_V50; +pub type LPNET_DVR_NETCFG_V50 = *mut tagNET_DVR_NETCFG_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SIP_CFG { + pub dwSize: DWORD, + pub byEnableAutoLogin: BYTE, + pub byLoginStatus: BYTE, + pub byRes1: [BYTE; 2usize], + pub stuServerIP: NET_DVR_IPADDR, + pub wServerPort: WORD, + pub byRes2: [BYTE; 2usize], + pub byUserName: [BYTE; 32usize], + pub byPassWord: [BYTE; 16usize], + pub byLocalNo: [BYTE; 32usize], + pub byDispalyName: [BYTE; 128usize], + pub wLocalPort: WORD, + pub byLoginCycle: BYTE, + pub byType: BYTE, + pub byDomainName: [BYTE; 64usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SIP_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 496usize, + concat!("Size of: ", stringify!(tagNET_DVR_SIP_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SIP_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableAutoLogin) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG), + "::", + stringify!(byEnableAutoLogin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLoginStatus) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG), + "::", + stringify!(byLoginStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).stuServerIP) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG), + "::", + stringify!(stuServerIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wServerPort) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG), + "::", + stringify!(wServerPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 154usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUserName) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG), + "::", + stringify!(byUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPassWord) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG), + "::", + stringify!(byPassWord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalNo) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG), + "::", + stringify!(byLocalNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispalyName) as usize - ptr as usize }, + 236usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG), + "::", + stringify!(byDispalyName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalPort) as usize - ptr as usize }, + 364usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG), + "::", + stringify!(wLocalPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLoginCycle) as usize - ptr as usize }, + 366usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG), + "::", + stringify!(byLoginCycle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 367usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDomainName) as usize - ptr as usize }, + 368usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG), + "::", + stringify!(byDomainName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 432usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SIP_CFG = tagNET_DVR_SIP_CFG; +pub type LPNET_DVR_SIP_CFG = *mut tagNET_DVR_SIP_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SIP_CFG_V50 { + pub dwSize: DWORD, + pub byEnableAutoLogin: BYTE, + pub byLoginStatus: BYTE, + pub byRes1: [BYTE; 2usize], + pub stuServerIP: NET_DVR_IPADDR, + pub wServerPort: WORD, + pub byRes2: [BYTE; 2usize], + pub byUserName: [BYTE; 32usize], + pub byPassWord: [BYTE; 16usize], + pub byLocalNo: [BYTE; 32usize], + pub byDispalyName: [BYTE; 128usize], + pub wLocalPort: WORD, + pub byLoginCycle: BYTE, + pub byRes3: BYTE, + pub bySIPServerDomain: [BYTE; 64usize], + pub stuSTUNServerIP: NET_DVR_IPADDR, + pub bySTUNServerDomain: [BYTE; 64usize], + pub wSTUNServerPort: WORD, + pub byRes4: [BYTE; 2usize], + pub stuProxyServerIP: NET_DVR_IPADDR, + pub byProxyServerDomain: [BYTE; 64usize], + pub wProxyServerPort: WORD, + pub byNetWork: BYTE, + pub byRes5: BYTE, + pub byCalledTargetName: [BYTE; 32usize], + pub byRes: [BYTE; 224usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SIP_CFG_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1112usize, + concat!("Size of: ", stringify!(tagNET_DVR_SIP_CFG_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SIP_CFG_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableAutoLogin) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG_V50), + "::", + stringify!(byEnableAutoLogin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLoginStatus) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG_V50), + "::", + stringify!(byLoginStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).stuServerIP) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG_V50), + "::", + stringify!(stuServerIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wServerPort) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG_V50), + "::", + stringify!(wServerPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 154usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG_V50), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUserName) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG_V50), + "::", + stringify!(byUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPassWord) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG_V50), + "::", + stringify!(byPassWord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalNo) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG_V50), + "::", + stringify!(byLocalNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispalyName) as usize - ptr as usize }, + 236usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG_V50), + "::", + stringify!(byDispalyName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalPort) as usize - ptr as usize }, + 364usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG_V50), + "::", + stringify!(wLocalPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLoginCycle) as usize - ptr as usize }, + 366usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG_V50), + "::", + stringify!(byLoginCycle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 367usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG_V50), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySIPServerDomain) as usize - ptr as usize }, + 368usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG_V50), + "::", + stringify!(bySIPServerDomain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).stuSTUNServerIP) as usize - ptr as usize }, + 432usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG_V50), + "::", + stringify!(stuSTUNServerIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySTUNServerDomain) as usize - ptr as usize }, + 576usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG_V50), + "::", + stringify!(bySTUNServerDomain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSTUNServerPort) as usize - ptr as usize }, + 640usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG_V50), + "::", + stringify!(wSTUNServerPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes4) as usize - ptr as usize }, + 642usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG_V50), + "::", + stringify!(byRes4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).stuProxyServerIP) as usize - ptr as usize }, + 644usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG_V50), + "::", + stringify!(stuProxyServerIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProxyServerDomain) as usize - ptr as usize }, + 788usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG_V50), + "::", + stringify!(byProxyServerDomain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wProxyServerPort) as usize - ptr as usize }, + 852usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG_V50), + "::", + stringify!(wProxyServerPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetWork) as usize - ptr as usize }, + 854usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG_V50), + "::", + stringify!(byNetWork) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes5) as usize - ptr as usize }, + 855usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG_V50), + "::", + stringify!(byRes5) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCalledTargetName) as usize - ptr as usize }, + 856usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG_V50), + "::", + stringify!(byCalledTargetName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 888usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIP_CFG_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SIP_CFG_V50 = tagNET_DVR_SIP_CFG_V50; +pub type LPNET_DVR_SIP_CFG_V50 = *mut tagNET_DVR_SIP_CFG_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IP_VIEW_DEVCFG { + pub dwSize: DWORD, + pub byDefaultRing: BYTE, + pub byRingVolume: BYTE, + pub byInputVolume: BYTE, + pub byOutputVolume: BYTE, + pub wRtpPort: WORD, + pub byRes1: [BYTE; 2usize], + pub dwPreviewDelayTime: DWORD, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IP_VIEW_DEVCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_IP_VIEW_DEVCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IP_VIEW_DEVCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_VIEW_DEVCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDefaultRing) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_VIEW_DEVCFG), + "::", + stringify!(byDefaultRing) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRingVolume) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_VIEW_DEVCFG), + "::", + stringify!(byRingVolume) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInputVolume) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_VIEW_DEVCFG), + "::", + stringify!(byInputVolume) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutputVolume) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_VIEW_DEVCFG), + "::", + stringify!(byOutputVolume) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRtpPort) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_VIEW_DEVCFG), + "::", + stringify!(wRtpPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_VIEW_DEVCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPreviewDelayTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_VIEW_DEVCFG), + "::", + stringify!(dwPreviewDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_VIEW_DEVCFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_IP_VIEW_DEVCFG = tagNET_DVR_IP_VIEW_DEVCFG; +pub type LPNET_DVR_IP_VIEW_DEVCFG = *mut tagNET_DVR_IP_VIEW_DEVCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IP_VIEW_AUDIO_CFG { + pub dwSize: DWORD, + pub byAudioEncPri1: BYTE, + pub byAudioEncPri2: BYTE, + pub wAudioPacketLen1: WORD, + pub wAudioPacketLen2: WORD, + pub byRes: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IP_VIEW_AUDIO_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_IP_VIEW_AUDIO_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IP_VIEW_AUDIO_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_VIEW_AUDIO_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioEncPri1) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_VIEW_AUDIO_CFG), + "::", + stringify!(byAudioEncPri1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioEncPri2) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_VIEW_AUDIO_CFG), + "::", + stringify!(byAudioEncPri2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAudioPacketLen1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_VIEW_AUDIO_CFG), + "::", + stringify!(wAudioPacketLen1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAudioPacketLen2) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_VIEW_AUDIO_CFG), + "::", + stringify!(wAudioPacketLen2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_VIEW_AUDIO_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_IP_VIEW_AUDIO_CFG = tagNET_DVR_IP_VIEW_AUDIO_CFG; +pub type LPNET_DVR_IP_VIEW_AUDIO_CFG = *mut tagNET_DVR_IP_VIEW_AUDIO_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IP_VIEW_CALL_CFG { + pub dwSize: DWORD, + pub byEnableAutoResponse: BYTE, + pub byAudoResponseTime: BYTE, + pub byRes1: [BYTE; 2usize], + pub byEnableAlarmNumber1: BYTE, + pub byRes2: [BYTE; 3usize], + pub byAlarmNumber1: [BYTE; 32usize], + pub byEnableAlarmNumber2: BYTE, + pub byRes3: [BYTE; 3usize], + pub byAlarmNumber2: [BYTE; 32usize], + pub byRes4: [BYTE; 72usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IP_VIEW_CALL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 152usize, + concat!("Size of: ", stringify!(tagNET_DVR_IP_VIEW_CALL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IP_VIEW_CALL_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_VIEW_CALL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableAutoResponse) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_VIEW_CALL_CFG), + "::", + stringify!(byEnableAutoResponse) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudoResponseTime) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_VIEW_CALL_CFG), + "::", + stringify!(byAudoResponseTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_VIEW_CALL_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableAlarmNumber1) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_VIEW_CALL_CFG), + "::", + stringify!(byEnableAlarmNumber1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_VIEW_CALL_CFG), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmNumber1) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_VIEW_CALL_CFG), + "::", + stringify!(byAlarmNumber1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableAlarmNumber2) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_VIEW_CALL_CFG), + "::", + stringify!(byEnableAlarmNumber2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 45usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_VIEW_CALL_CFG), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmNumber2) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_VIEW_CALL_CFG), + "::", + stringify!(byAlarmNumber2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes4) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_VIEW_CALL_CFG), + "::", + stringify!(byRes4) + ) + ); +} +pub type NET_DVR_IP_VIEW_CALL_CFG = tagNET_DVR_IP_VIEW_CALL_CFG; +pub type LPNET_DVR_IP_VIEW_CALL_CFG = *mut tagNET_DVR_IP_VIEW_CALL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_RECORDCHAN { + pub dwMaxRecordChanNum: DWORD, + pub dwCurRecordChanNum: DWORD, + pub dwRelRecordChan: [DWORD; 64usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_RECORDCHAN() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 328usize, + concat!("Size of: ", stringify!(NET_DVR_RECORDCHAN)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_RECORDCHAN)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxRecordChanNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORDCHAN), + "::", + stringify!(dwMaxRecordChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCurRecordChanNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORDCHAN), + "::", + stringify!(dwCurRecordChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelRecordChan) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORDCHAN), + "::", + stringify!(dwRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORDCHAN), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_RECORDCHAN = *mut NET_DVR_RECORDCHAN; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_MOTION_V30 { + pub byMotionScope: [[BYTE; 96usize]; 64usize], + pub byMotionSensitive: BYTE, + pub byEnableHandleMotion: BYTE, + pub byEnableDisplay: BYTE, + pub reservedData: ::std::os::raw::c_char, + pub struMotionHandleType: NET_DVR_HANDLEEXCEPTION_V30, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub byRelRecordChan: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_MOTION_V30() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 6536usize, + concat!("Size of: ", stringify!(NET_DVR_MOTION_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_MOTION_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMotionScope) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_V30), + "::", + stringify!(byMotionScope) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMotionSensitive) as usize - ptr as usize }, + 6144usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_V30), + "::", + stringify!(byMotionSensitive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableHandleMotion) as usize - ptr as usize }, + 6145usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_V30), + "::", + stringify!(byEnableHandleMotion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableDisplay) as usize - ptr as usize }, + 6146usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_V30), + "::", + stringify!(byEnableDisplay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).reservedData) as usize - ptr as usize }, + 6147usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_V30), + "::", + stringify!(reservedData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMotionHandleType) as usize - ptr as usize }, + 6148usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_V30), + "::", + stringify!(struMotionHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 6248usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_V30), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelRecordChan) as usize - ptr as usize }, + 6472usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_V30), + "::", + stringify!(byRelRecordChan) + ) + ); +} +pub type LPNET_DVR_MOTION_V30 = *mut NET_DVR_MOTION_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_MOTION { + pub byMotionScope: [[BYTE; 22usize]; 18usize], + pub byMotionSensitive: BYTE, + pub byEnableHandleMotion: BYTE, + pub byEnableDisplay: BYTE, + pub reservedData: ::std::os::raw::c_char, + pub strMotionHandleType: NET_DVR_HANDLEEXCEPTION, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 4usize]; 7usize], + pub byRelRecordChan: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_MOTION() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 536usize, + concat!("Size of: ", stringify!(NET_DVR_MOTION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_MOTION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMotionScope) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION), + "::", + stringify!(byMotionScope) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMotionSensitive) as usize - ptr as usize }, + 396usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION), + "::", + stringify!(byMotionSensitive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableHandleMotion) as usize - ptr as usize }, + 397usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION), + "::", + stringify!(byEnableHandleMotion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableDisplay) as usize - ptr as usize }, + 398usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION), + "::", + stringify!(byEnableDisplay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).reservedData) as usize - ptr as usize }, + 399usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION), + "::", + stringify!(reservedData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strMotionHandleType) as usize - ptr as usize }, + 400usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION), + "::", + stringify!(strMotionHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 408usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelRecordChan) as usize - ptr as usize }, + 520usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION), + "::", + stringify!(byRelRecordChan) + ) + ); +} +pub type LPNET_DVR_MOTION = *mut NET_DVR_MOTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_HIDEALARM_V30 { + pub dwEnableHideAlarm: DWORD, + pub wHideAlarmAreaTopLeftX: WORD, + pub wHideAlarmAreaTopLeftY: WORD, + pub wHideAlarmAreaWidth: WORD, + pub wHideAlarmAreaHeight: WORD, + pub strHideAlarmHandleType: NET_DVR_HANDLEEXCEPTION_V30, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_HIDEALARM_V30() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 336usize, + concat!("Size of: ", stringify!(NET_DVR_HIDEALARM_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_HIDEALARM_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnableHideAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HIDEALARM_V30), + "::", + stringify!(dwEnableHideAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHideAlarmAreaTopLeftX) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HIDEALARM_V30), + "::", + stringify!(wHideAlarmAreaTopLeftX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHideAlarmAreaTopLeftY) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HIDEALARM_V30), + "::", + stringify!(wHideAlarmAreaTopLeftY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHideAlarmAreaWidth) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HIDEALARM_V30), + "::", + stringify!(wHideAlarmAreaWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHideAlarmAreaHeight) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HIDEALARM_V30), + "::", + stringify!(wHideAlarmAreaHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strHideAlarmHandleType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HIDEALARM_V30), + "::", + stringify!(strHideAlarmHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HIDEALARM_V30), + "::", + stringify!(struAlarmTime) + ) + ); +} +pub type LPNET_DVR_HIDEALARM_V30 = *mut NET_DVR_HIDEALARM_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_HIDEALARM { + pub dwEnableHideAlarm: DWORD, + pub wHideAlarmAreaTopLeftX: WORD, + pub wHideAlarmAreaTopLeftY: WORD, + pub wHideAlarmAreaWidth: WORD, + pub wHideAlarmAreaHeight: WORD, + pub strHideAlarmHandleType: NET_DVR_HANDLEEXCEPTION, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 4usize]; 7usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_HIDEALARM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(NET_DVR_HIDEALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_HIDEALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnableHideAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HIDEALARM), + "::", + stringify!(dwEnableHideAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHideAlarmAreaTopLeftX) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HIDEALARM), + "::", + stringify!(wHideAlarmAreaTopLeftX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHideAlarmAreaTopLeftY) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HIDEALARM), + "::", + stringify!(wHideAlarmAreaTopLeftY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHideAlarmAreaWidth) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HIDEALARM), + "::", + stringify!(wHideAlarmAreaWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHideAlarmAreaHeight) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HIDEALARM), + "::", + stringify!(wHideAlarmAreaHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strHideAlarmHandleType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HIDEALARM), + "::", + stringify!(strHideAlarmHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HIDEALARM), + "::", + stringify!(struAlarmTime) + ) + ); +} +pub type LPNET_DVR_HIDEALARM = *mut NET_DVR_HIDEALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_VILOST_V30 { + pub byEnableHandleVILost: BYTE, + pub strVILostHandleType: NET_DVR_HANDLEEXCEPTION_V30, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_VILOST_V30() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 328usize, + concat!("Size of: ", stringify!(NET_DVR_VILOST_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_VILOST_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableHandleVILost) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VILOST_V30), + "::", + stringify!(byEnableHandleVILost) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strVILostHandleType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VILOST_V30), + "::", + stringify!(strVILostHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VILOST_V30), + "::", + stringify!(struAlarmTime) + ) + ); +} +pub type LPNET_DVR_VILOST_V30 = *mut NET_DVR_VILOST_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_VILOST { + pub byEnableHandleVILost: BYTE, + pub strVILostHandleType: NET_DVR_HANDLEEXCEPTION, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 4usize]; 7usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_VILOST() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 124usize, + concat!("Size of: ", stringify!(NET_DVR_VILOST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_VILOST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableHandleVILost) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VILOST), + "::", + stringify!(byEnableHandleVILost) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strVILostHandleType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VILOST), + "::", + stringify!(strVILostHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VILOST), + "::", + stringify!(struAlarmTime) + ) + ); +} +pub type LPNET_DVR_VILOST = *mut NET_DVR_VILOST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_SHELTER { + pub wHideAreaTopLeftX: WORD, + pub wHideAreaTopLeftY: WORD, + pub wHideAreaWidth: WORD, + pub wHideAreaHeight: WORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_SHELTER() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(NET_DVR_SHELTER)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_SHELTER)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHideAreaTopLeftX) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SHELTER), + "::", + stringify!(wHideAreaTopLeftX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHideAreaTopLeftY) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SHELTER), + "::", + stringify!(wHideAreaTopLeftY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHideAreaWidth) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SHELTER), + "::", + stringify!(wHideAreaWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHideAreaHeight) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SHELTER), + "::", + stringify!(wHideAreaHeight) + ) + ); +} +pub type LPNET_DVR_SHELTER = *mut NET_DVR_SHELTER; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_COLOR { + pub byBrightness: BYTE, + pub byContrast: BYTE, + pub bySaturation: BYTE, + pub byHue: BYTE, +} +#[test] +fn bindgen_test_layout_NET_DVR_COLOR() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(NET_DVR_COLOR)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_COLOR)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrightness) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COLOR), + "::", + stringify!(byBrightness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byContrast) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COLOR), + "::", + stringify!(byContrast) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySaturation) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COLOR), + "::", + stringify!(bySaturation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHue) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COLOR), + "::", + stringify!(byHue) + ) + ); +} +pub type LPNET_DVR_COLOR = *mut NET_DVR_COLOR; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_RGB_COLOR { + pub byRed: BYTE, + pub byGreen: BYTE, + pub byBlue: BYTE, + pub byRes: BYTE, +} +#[test] +fn bindgen_test_layout_NET_DVR_RGB_COLOR() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(NET_DVR_RGB_COLOR)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_RGB_COLOR)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRed) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RGB_COLOR), + "::", + stringify!(byRed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGreen) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RGB_COLOR), + "::", + stringify!(byGreen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBlue) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RGB_COLOR), + "::", + stringify!(byBlue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RGB_COLOR), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_RGB_COLOR = *mut NET_DVR_RGB_COLOR; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_POINT { + pub fX: f32, + pub fY: f32, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_POINT() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_VCA_POINT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_POINT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fX) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_POINT), + "::", + stringify!(fX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fY) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_POINT), + "::", + stringify!(fY) + ) + ); +} +pub type NET_VCA_POINT = tagNET_VCA_POINT; +pub type LPNET_VCA_POINT = *mut tagNET_VCA_POINT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PICCFG_V30 { + pub dwSize: DWORD, + pub sChanName: [BYTE; 32usize], + pub dwVideoFormat: DWORD, + pub byReservedData: [BYTE; 64usize], + pub dwShowChanName: DWORD, + pub wShowNameTopLeftX: WORD, + pub wShowNameTopLeftY: WORD, + pub struVILost: NET_DVR_VILOST_V30, + pub struRes: NET_DVR_VILOST_V30, + pub struMotion: NET_DVR_MOTION_V30, + pub struHideAlarm: NET_DVR_HIDEALARM_V30, + pub dwEnableHide: DWORD, + pub struShelter: [NET_DVR_SHELTER; 4usize], + pub dwShowOsd: DWORD, + pub wOSDTopLeftX: WORD, + pub wOSDTopLeftY: WORD, + pub byOSDType: BYTE, + pub byDispWeek: BYTE, + pub byOSDAttrib: BYTE, + pub byHourOSDType: BYTE, + pub byFontSize: BYTE, + pub byOSDColorType: BYTE, + pub byAlignment: BYTE, + pub byOSDMilliSecondEnable: BYTE, + pub struOsdColor: NET_DVR_RGB_COLOR, + pub dwBoundary: DWORD, + pub struOsdBkColor: NET_DVR_RGB_COLOR, + pub byOSDBkColorMode: BYTE, + pub byUpDownBoundary: BYTE, + pub byLeftRightBoundary: BYTE, + pub byAngleEnabled: BYTE, + pub wTiltAngleTopLeftX: WORD, + pub wTiltAngleTopLeftY: WORD, + pub byRes: [BYTE; 40usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_PICCFG_V30() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 7752usize, + concat!("Size of: ", stringify!(NET_DVR_PICCFG_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_PICCFG_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sChanName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(sChanName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoFormat) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(dwVideoFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReservedData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(byReservedData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwShowChanName) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(dwShowChanName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wShowNameTopLeftX) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(wShowNameTopLeftX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wShowNameTopLeftY) as usize - ptr as usize }, + 110usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(wShowNameTopLeftY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVILost) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(struVILost) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRes) as usize - ptr as usize }, + 440usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(struRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMotion) as usize - ptr as usize }, + 768usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(struMotion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHideAlarm) as usize - ptr as usize }, + 7304usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(struHideAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnableHide) as usize - ptr as usize }, + 7640usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(dwEnableHide) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struShelter) as usize - ptr as usize }, + 7644usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(struShelter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwShowOsd) as usize - ptr as usize }, + 7676usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(dwShowOsd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wOSDTopLeftX) as usize - ptr as usize }, + 7680usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(wOSDTopLeftX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wOSDTopLeftY) as usize - ptr as usize }, + 7682usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(wOSDTopLeftY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOSDType) as usize - ptr as usize }, + 7684usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(byOSDType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispWeek) as usize - ptr as usize }, + 7685usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(byDispWeek) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOSDAttrib) as usize - ptr as usize }, + 7686usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(byOSDAttrib) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHourOSDType) as usize - ptr as usize }, + 7687usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(byHourOSDType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFontSize) as usize - ptr as usize }, + 7688usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(byFontSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOSDColorType) as usize - ptr as usize }, + 7689usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(byOSDColorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlignment) as usize - ptr as usize }, + 7690usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(byAlignment) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOSDMilliSecondEnable) as usize - ptr as usize }, + 7691usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(byOSDMilliSecondEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOsdColor) as usize - ptr as usize }, + 7692usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(struOsdColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBoundary) as usize - ptr as usize }, + 7696usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(dwBoundary) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOsdBkColor) as usize - ptr as usize }, + 7700usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(struOsdBkColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOSDBkColorMode) as usize - ptr as usize }, + 7704usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(byOSDBkColorMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUpDownBoundary) as usize - ptr as usize }, + 7705usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(byUpDownBoundary) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLeftRightBoundary) as usize - ptr as usize }, + 7706usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(byLeftRightBoundary) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAngleEnabled) as usize - ptr as usize }, + 7707usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(byAngleEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTiltAngleTopLeftX) as usize - ptr as usize }, + 7708usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(wTiltAngleTopLeftX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTiltAngleTopLeftY) as usize - ptr as usize }, + 7710usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(wTiltAngleTopLeftY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7712usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V30), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_PICCFG_V30 = *mut NET_DVR_PICCFG_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PICCFG_EX { + pub dwSize: DWORD, + pub sChanName: [BYTE; 32usize], + pub dwVideoFormat: DWORD, + pub byBrightness: BYTE, + pub byContrast: BYTE, + pub bySaturation: BYTE, + pub byHue: BYTE, + pub dwShowChanName: DWORD, + pub wShowNameTopLeftX: WORD, + pub wShowNameTopLeftY: WORD, + pub struVILost: NET_DVR_VILOST, + pub struMotion: NET_DVR_MOTION, + pub struHideAlarm: NET_DVR_HIDEALARM, + pub dwEnableHide: DWORD, + pub struShelter: [NET_DVR_SHELTER; 4usize], + pub dwShowOsd: DWORD, + pub wOSDTopLeftX: WORD, + pub wOSDTopLeftY: WORD, + pub byOSDType: BYTE, + pub byDispWeek: BYTE, + pub byOSDAttrib: BYTE, + pub byHourOsdType: BYTE, +} +#[test] +fn bindgen_test_layout_NET_DVR_PICCFG_EX() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 892usize, + concat!("Size of: ", stringify!(NET_DVR_PICCFG_EX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_PICCFG_EX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_EX), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sChanName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_EX), + "::", + stringify!(sChanName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoFormat) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_EX), + "::", + stringify!(dwVideoFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrightness) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_EX), + "::", + stringify!(byBrightness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byContrast) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_EX), + "::", + stringify!(byContrast) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySaturation) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_EX), + "::", + stringify!(bySaturation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHue) as usize - ptr as usize }, + 43usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_EX), + "::", + stringify!(byHue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwShowChanName) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_EX), + "::", + stringify!(dwShowChanName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wShowNameTopLeftX) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_EX), + "::", + stringify!(wShowNameTopLeftX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wShowNameTopLeftY) as usize - ptr as usize }, + 50usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_EX), + "::", + stringify!(wShowNameTopLeftY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVILost) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_EX), + "::", + stringify!(struVILost) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMotion) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_EX), + "::", + stringify!(struMotion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHideAlarm) as usize - ptr as usize }, + 712usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_EX), + "::", + stringify!(struHideAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnableHide) as usize - ptr as usize }, + 844usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_EX), + "::", + stringify!(dwEnableHide) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struShelter) as usize - ptr as usize }, + 848usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_EX), + "::", + stringify!(struShelter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwShowOsd) as usize - ptr as usize }, + 880usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_EX), + "::", + stringify!(dwShowOsd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wOSDTopLeftX) as usize - ptr as usize }, + 884usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_EX), + "::", + stringify!(wOSDTopLeftX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wOSDTopLeftY) as usize - ptr as usize }, + 886usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_EX), + "::", + stringify!(wOSDTopLeftY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOSDType) as usize - ptr as usize }, + 888usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_EX), + "::", + stringify!(byOSDType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispWeek) as usize - ptr as usize }, + 889usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_EX), + "::", + stringify!(byDispWeek) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOSDAttrib) as usize - ptr as usize }, + 890usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_EX), + "::", + stringify!(byOSDAttrib) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHourOsdType) as usize - ptr as usize }, + 891usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_EX), + "::", + stringify!(byHourOsdType) + ) + ); +} +pub type LPNET_DVR_PICCFG_EX = *mut NET_DVR_PICCFG_EX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PICCFG { + pub dwSize: DWORD, + pub sChanName: [BYTE; 32usize], + pub dwVideoFormat: DWORD, + pub byBrightness: BYTE, + pub byContrast: BYTE, + pub bySaturation: BYTE, + pub byHue: BYTE, + pub dwShowChanName: DWORD, + pub wShowNameTopLeftX: WORD, + pub wShowNameTopLeftY: WORD, + pub struVILost: NET_DVR_VILOST, + pub struMotion: NET_DVR_MOTION, + pub struHideAlarm: NET_DVR_HIDEALARM, + pub dwEnableHide: DWORD, + pub wHideAreaTopLeftX: WORD, + pub wHideAreaTopLeftY: WORD, + pub wHideAreaWidth: WORD, + pub wHideAreaHeight: WORD, + pub dwShowOsd: DWORD, + pub wOSDTopLeftX: WORD, + pub wOSDTopLeftY: WORD, + pub byOSDType: BYTE, + pub byDispWeek: BYTE, + pub byOSDAttrib: BYTE, + pub reservedData2: ::std::os::raw::c_char, +} +#[test] +fn bindgen_test_layout_NET_DVR_PICCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 868usize, + concat!("Size of: ", stringify!(NET_DVR_PICCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_PICCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sChanName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG), + "::", + stringify!(sChanName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoFormat) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG), + "::", + stringify!(dwVideoFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrightness) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG), + "::", + stringify!(byBrightness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byContrast) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG), + "::", + stringify!(byContrast) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySaturation) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG), + "::", + stringify!(bySaturation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHue) as usize - ptr as usize }, + 43usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG), + "::", + stringify!(byHue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwShowChanName) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG), + "::", + stringify!(dwShowChanName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wShowNameTopLeftX) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG), + "::", + stringify!(wShowNameTopLeftX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wShowNameTopLeftY) as usize - ptr as usize }, + 50usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG), + "::", + stringify!(wShowNameTopLeftY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVILost) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG), + "::", + stringify!(struVILost) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMotion) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG), + "::", + stringify!(struMotion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHideAlarm) as usize - ptr as usize }, + 712usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG), + "::", + stringify!(struHideAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnableHide) as usize - ptr as usize }, + 844usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG), + "::", + stringify!(dwEnableHide) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHideAreaTopLeftX) as usize - ptr as usize }, + 848usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG), + "::", + stringify!(wHideAreaTopLeftX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHideAreaTopLeftY) as usize - ptr as usize }, + 850usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG), + "::", + stringify!(wHideAreaTopLeftY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHideAreaWidth) as usize - ptr as usize }, + 852usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG), + "::", + stringify!(wHideAreaWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHideAreaHeight) as usize - ptr as usize }, + 854usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG), + "::", + stringify!(wHideAreaHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwShowOsd) as usize - ptr as usize }, + 856usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG), + "::", + stringify!(dwShowOsd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wOSDTopLeftX) as usize - ptr as usize }, + 860usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG), + "::", + stringify!(wOSDTopLeftX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wOSDTopLeftY) as usize - ptr as usize }, + 862usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG), + "::", + stringify!(wOSDTopLeftY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOSDType) as usize - ptr as usize }, + 864usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG), + "::", + stringify!(byOSDType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispWeek) as usize - ptr as usize }, + 865usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG), + "::", + stringify!(byDispWeek) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOSDAttrib) as usize - ptr as usize }, + 866usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG), + "::", + stringify!(byOSDAttrib) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).reservedData2) as usize - ptr as usize }, + 867usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG), + "::", + stringify!(reservedData2) + ) + ); +} +pub type LPNET_DVR_PICCFG = *mut NET_DVR_PICCFG; +pub const _BITRATE_ENCODE_INDEX__BITRATE_ENCODE_def: _BITRATE_ENCODE_INDEX_ = 0; +pub const _BITRATE_ENCODE_INDEX__BITRATE_ENCODE_8kps: _BITRATE_ENCODE_INDEX_ = 1; +pub const _BITRATE_ENCODE_INDEX__BITRATE_ENCODE_16kps: _BITRATE_ENCODE_INDEX_ = 2; +pub const _BITRATE_ENCODE_INDEX__BITRATE_ENCODE_32kps: _BITRATE_ENCODE_INDEX_ = 3; +pub const _BITRATE_ENCODE_INDEX__BITRATE_ENCODE_64kps: _BITRATE_ENCODE_INDEX_ = 4; +pub const _BITRATE_ENCODE_INDEX__BITRATE_ENCODE_128kps: _BITRATE_ENCODE_INDEX_ = 5; +pub const _BITRATE_ENCODE_INDEX__BITRATE_ENCODE_192kps: _BITRATE_ENCODE_INDEX_ = 6; +pub const _BITRATE_ENCODE_INDEX__BITRATE_ENCODE_40kps: _BITRATE_ENCODE_INDEX_ = 7; +pub const _BITRATE_ENCODE_INDEX__BITRATE_ENCODE_48kps: _BITRATE_ENCODE_INDEX_ = 8; +pub const _BITRATE_ENCODE_INDEX__BITRATE_ENCODE_56kps: _BITRATE_ENCODE_INDEX_ = 9; +pub const _BITRATE_ENCODE_INDEX__BITRATE_ENCODE_80kps: _BITRATE_ENCODE_INDEX_ = 10; +pub const _BITRATE_ENCODE_INDEX__BITRATE_ENCODE_96kps: _BITRATE_ENCODE_INDEX_ = 11; +pub const _BITRATE_ENCODE_INDEX__BITRATE_ENCODE_112kps: _BITRATE_ENCODE_INDEX_ = 12; +pub const _BITRATE_ENCODE_INDEX__BITRATE_ENCODE_144kps: _BITRATE_ENCODE_INDEX_ = 13; +pub const _BITRATE_ENCODE_INDEX__BITRATE_ENCODE_160kps: _BITRATE_ENCODE_INDEX_ = 14; +pub const _BITRATE_ENCODE_INDEX__BITRATE_ENCODE_224kps: _BITRATE_ENCODE_INDEX_ = 15; +pub const _BITRATE_ENCODE_INDEX__BITRATE_ENCODE_256kps: _BITRATE_ENCODE_INDEX_ = 16; +pub const _BITRATE_ENCODE_INDEX__BITRATE_ENCODE_320kps: _BITRATE_ENCODE_INDEX_ = 17; +pub type _BITRATE_ENCODE_INDEX_ = ::std::os::raw::c_uint; +pub use self::_BITRATE_ENCODE_INDEX_ as BITRATE_ENCODE_INDEX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_COMPRESSION_INFO_V30 { + pub byStreamType: BYTE, + pub byResolution: BYTE, + pub byBitrateType: BYTE, + pub byPicQuality: BYTE, + pub dwVideoBitrate: DWORD, + pub dwVideoFrameRate: DWORD, + pub wIntervalFrameI: WORD, + pub byIntervalBPFrame: BYTE, + pub byres1: BYTE, + pub byVideoEncType: BYTE, + pub byAudioEncType: BYTE, + pub byVideoEncComplexity: BYTE, + pub byEnableSvc: BYTE, + pub byFormatType: BYTE, + pub byAudioBitRate: BYTE, + pub byStreamSmooth: BYTE, + pub byAudioSamplingRate: BYTE, + pub bySmartCodec: BYTE, + #[doc = "*bit0-�����\u{731}��� 0-�رգ�1-�\u{bfaa3}�bit1 - ������ģʽ 0 - �رգ�1 - ��*/"] + pub byDepthMapEnable: BYTE, + pub wAverageVideoBitrate: WORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_COMPRESSION_INFO_V30() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28usize, + concat!("Size of: ", stringify!(NET_DVR_COMPRESSION_INFO_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_COMPRESSION_INFO_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_V30), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byResolution) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_V30), + "::", + stringify!(byResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBitrateType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_V30), + "::", + stringify!(byBitrateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicQuality) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_V30), + "::", + stringify!(byPicQuality) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoBitrate) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_V30), + "::", + stringify!(dwVideoBitrate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoFrameRate) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_V30), + "::", + stringify!(dwVideoFrameRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wIntervalFrameI) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_V30), + "::", + stringify!(wIntervalFrameI) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIntervalBPFrame) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_V30), + "::", + stringify!(byIntervalBPFrame) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byres1) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_V30), + "::", + stringify!(byres1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoEncType) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_V30), + "::", + stringify!(byVideoEncType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioEncType) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_V30), + "::", + stringify!(byAudioEncType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoEncComplexity) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_V30), + "::", + stringify!(byVideoEncComplexity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableSvc) as usize - ptr as usize }, + 19usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_V30), + "::", + stringify!(byEnableSvc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFormatType) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_V30), + "::", + stringify!(byFormatType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioBitRate) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_V30), + "::", + stringify!(byAudioBitRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamSmooth) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_V30), + "::", + stringify!(byStreamSmooth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioSamplingRate) as usize - ptr as usize }, + 23usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_V30), + "::", + stringify!(byAudioSamplingRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySmartCodec) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_V30), + "::", + stringify!(bySmartCodec) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDepthMapEnable) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_V30), + "::", + stringify!(byDepthMapEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAverageVideoBitrate) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_V30), + "::", + stringify!(wAverageVideoBitrate) + ) + ); +} +pub type LPNET_DVR_COMPRESSION_INFO_V30 = *mut NET_DVR_COMPRESSION_INFO_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_COMPRESSIONCFG_V30 { + pub dwSize: DWORD, + pub struNormHighRecordPara: NET_DVR_COMPRESSION_INFO_V30, + pub struRes: NET_DVR_COMPRESSION_INFO_V30, + pub struEventRecordPara: NET_DVR_COMPRESSION_INFO_V30, + pub struNetPara: NET_DVR_COMPRESSION_INFO_V30, +} +#[test] +fn bindgen_test_layout_NET_DVR_COMPRESSIONCFG_V30() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 116usize, + concat!("Size of: ", stringify!(NET_DVR_COMPRESSIONCFG_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_COMPRESSIONCFG_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSIONCFG_V30), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNormHighRecordPara) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSIONCFG_V30), + "::", + stringify!(struNormHighRecordPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRes) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSIONCFG_V30), + "::", + stringify!(struRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEventRecordPara) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSIONCFG_V30), + "::", + stringify!(struEventRecordPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNetPara) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSIONCFG_V30), + "::", + stringify!(struNetPara) + ) + ); +} +pub type LPNET_DVR_COMPRESSIONCFG_V30 = *mut NET_DVR_COMPRESSIONCFG_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_COMPRESSION_INFO { + pub byStreamType: BYTE, + pub byResolution: BYTE, + pub byBitrateType: BYTE, + pub byPicQuality: BYTE, + pub dwVideoBitrate: DWORD, + pub dwVideoFrameRate: DWORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_COMPRESSION_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(NET_DVR_COMPRESSION_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_COMPRESSION_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byResolution) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO), + "::", + stringify!(byResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBitrateType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO), + "::", + stringify!(byBitrateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicQuality) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO), + "::", + stringify!(byPicQuality) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoBitrate) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO), + "::", + stringify!(dwVideoBitrate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoFrameRate) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO), + "::", + stringify!(dwVideoFrameRate) + ) + ); +} +pub type LPNET_DVR_COMPRESSION_INFO = *mut NET_DVR_COMPRESSION_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_COMPRESSIONCFG { + pub dwSize: DWORD, + pub struRecordPara: NET_DVR_COMPRESSION_INFO, + pub struNetPara: NET_DVR_COMPRESSION_INFO, +} +#[test] +fn bindgen_test_layout_NET_DVR_COMPRESSIONCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28usize, + concat!("Size of: ", stringify!(NET_DVR_COMPRESSIONCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_COMPRESSIONCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSIONCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRecordPara) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSIONCFG), + "::", + stringify!(struRecordPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNetPara) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSIONCFG), + "::", + stringify!(struNetPara) + ) + ); +} +pub type LPNET_DVR_COMPRESSIONCFG = *mut NET_DVR_COMPRESSIONCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_COMPRESSION_INFO_EX { + pub byStreamType: BYTE, + pub byResolution: BYTE, + pub byBitrateType: BYTE, + pub byPicQuality: BYTE, + pub dwVideoBitrate: DWORD, + pub dwVideoFrameRate: DWORD, + pub wIntervalFrameI: WORD, + pub byIntervalBPFrame: BYTE, + pub byRes: BYTE, +} +#[test] +fn bindgen_test_layout_NET_DVR_COMPRESSION_INFO_EX() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(NET_DVR_COMPRESSION_INFO_EX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_COMPRESSION_INFO_EX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_EX), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byResolution) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_EX), + "::", + stringify!(byResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBitrateType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_EX), + "::", + stringify!(byBitrateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicQuality) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_EX), + "::", + stringify!(byPicQuality) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoBitrate) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_EX), + "::", + stringify!(dwVideoBitrate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoFrameRate) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_EX), + "::", + stringify!(dwVideoFrameRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wIntervalFrameI) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_EX), + "::", + stringify!(wIntervalFrameI) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIntervalBPFrame) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_EX), + "::", + stringify!(byIntervalBPFrame) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_INFO_EX), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_COMPRESSION_INFO_EX = *mut NET_DVR_COMPRESSION_INFO_EX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_COMPRESSIONCFG_EX { + pub dwSize: DWORD, + pub struRecordPara: NET_DVR_COMPRESSION_INFO_EX, + pub struNetPara: NET_DVR_COMPRESSION_INFO_EX, +} +#[test] +fn bindgen_test_layout_NET_DVR_COMPRESSIONCFG_EX() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(NET_DVR_COMPRESSIONCFG_EX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_COMPRESSIONCFG_EX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSIONCFG_EX), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRecordPara) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSIONCFG_EX), + "::", + stringify!(struRecordPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNetPara) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSIONCFG_EX), + "::", + stringify!(struNetPara) + ) + ); +} +pub type LPNET_DVR_COMPRESSIONCFG_EX = *mut NET_DVR_COMPRESSIONCFG_EX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_RECORDSCHED { + pub struRecordTime: NET_DVR_SCHEDTIME, + pub byRecordType: BYTE, + pub reservedData: [::std::os::raw::c_char; 3usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_RECORDSCHED() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(NET_DVR_RECORDSCHED)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_RECORDSCHED)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRecordTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORDSCHED), + "::", + stringify!(struRecordTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORDSCHED), + "::", + stringify!(byRecordType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).reservedData) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORDSCHED), + "::", + stringify!(reservedData) + ) + ); +} +pub type LPNET_DVR_RECORDSCHED = *mut NET_DVR_RECORDSCHED; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_RECORDDAY { + pub wAllDayRecord: WORD, + pub byRecordType: BYTE, + pub reservedData: ::std::os::raw::c_char, +} +#[test] +fn bindgen_test_layout_NET_DVR_RECORDDAY() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(NET_DVR_RECORDDAY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_RECORDDAY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAllDayRecord) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORDDAY), + "::", + stringify!(wAllDayRecord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORDDAY), + "::", + stringify!(byRecordType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).reservedData) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORDDAY), + "::", + stringify!(reservedData) + ) + ); +} +pub type LPNET_DVR_RECORDDAY = *mut NET_DVR_RECORDDAY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_RECORD_V30 { + pub dwSize: DWORD, + pub dwRecord: DWORD, + pub struRecAllDay: [NET_DVR_RECORDDAY; 7usize], + pub struRecordSched: [[NET_DVR_RECORDSCHED; 8usize]; 7usize], + pub dwRecordTime: DWORD, + pub dwPreRecordTime: DWORD, + pub dwRecorderDuration: DWORD, + pub byRedundancyRec: BYTE, + pub byAudioRec: BYTE, + pub byStreamType: BYTE, + pub byPassbackRecord: BYTE, + pub wLockDuration: WORD, + pub byRecordBackup: BYTE, + pub bySVCLevel: BYTE, + pub byRecordManage: BYTE, + pub byExtraSaveAudio: BYTE, + pub byIntelligentRecord: BYTE, + pub byReserve: BYTE, +} +#[test] +fn bindgen_test_layout_NET_DVR_RECORD_V30() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 508usize, + concat!("Size of: ", stringify!(NET_DVR_RECORD_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_RECORD_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V30), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecord) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V30), + "::", + stringify!(dwRecord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRecAllDay) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V30), + "::", + stringify!(struRecAllDay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRecordSched) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V30), + "::", + stringify!(struRecordSched) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordTime) as usize - ptr as usize }, + 484usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V30), + "::", + stringify!(dwRecordTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPreRecordTime) as usize - ptr as usize }, + 488usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V30), + "::", + stringify!(dwPreRecordTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecorderDuration) as usize - ptr as usize }, + 492usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V30), + "::", + stringify!(dwRecorderDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRedundancyRec) as usize - ptr as usize }, + 496usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V30), + "::", + stringify!(byRedundancyRec) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioRec) as usize - ptr as usize }, + 497usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V30), + "::", + stringify!(byAudioRec) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 498usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V30), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPassbackRecord) as usize - ptr as usize }, + 499usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V30), + "::", + stringify!(byPassbackRecord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLockDuration) as usize - ptr as usize }, + 500usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V30), + "::", + stringify!(wLockDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordBackup) as usize - ptr as usize }, + 502usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V30), + "::", + stringify!(byRecordBackup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySVCLevel) as usize - ptr as usize }, + 503usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V30), + "::", + stringify!(bySVCLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordManage) as usize - ptr as usize }, + 504usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V30), + "::", + stringify!(byRecordManage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExtraSaveAudio) as usize - ptr as usize }, + 505usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V30), + "::", + stringify!(byExtraSaveAudio) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIntelligentRecord) as usize - ptr as usize }, + 506usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V30), + "::", + stringify!(byIntelligentRecord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReserve) as usize - ptr as usize }, + 507usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V30), + "::", + stringify!(byReserve) + ) + ); +} +pub type LPNET_DVR_RECORD_V30 = *mut NET_DVR_RECORD_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_RECORDSCHED_V40 { + pub struRecordTime: NET_DVR_SCHEDTIME, + pub byRecordType: BYTE, + pub byRes: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_RECORDSCHED_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(NET_DVR_RECORDSCHED_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_RECORDSCHED_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRecordTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORDSCHED_V40), + "::", + stringify!(struRecordTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORDSCHED_V40), + "::", + stringify!(byRecordType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORDSCHED_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_RECORDSCHED_V40 = *mut NET_DVR_RECORDSCHED_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_RECORDDAY_V40 { + pub byAllDayRecord: BYTE, + pub byRecordType: BYTE, + pub byRes: [BYTE; 62usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_RECORDDAY_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(NET_DVR_RECORDDAY_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_RECORDDAY_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAllDayRecord) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORDDAY_V40), + "::", + stringify!(byAllDayRecord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORDDAY_V40), + "::", + stringify!(byRecordType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORDDAY_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_RECORDDAY_V40 = *mut NET_DVR_RECORDDAY_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_RECORD_V40 { + pub dwSize: DWORD, + pub dwRecord: DWORD, + pub struRecAllDay: [NET_DVR_RECORDDAY_V40; 7usize], + pub struRecordSched: [[NET_DVR_RECORDSCHED_V40; 8usize]; 7usize], + pub dwRecordTime: DWORD, + pub dwPreRecordTime: DWORD, + pub dwRecorderDuration: DWORD, + pub byRedundancyRec: BYTE, + pub byAudioRec: BYTE, + pub byStreamType: BYTE, + pub byPassbackRecord: BYTE, + pub wLockDuration: WORD, + pub byRecordBackup: BYTE, + pub bySVCLevel: BYTE, + pub byRecordManage: BYTE, + pub byExtraSaveAudio: BYTE, + pub byIntelligentRecord: BYTE, + pub byRes: [BYTE; 125usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_RECORD_V40() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2620usize, + concat!("Size of: ", stringify!(NET_DVR_RECORD_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_RECORD_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecord) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V40), + "::", + stringify!(dwRecord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRecAllDay) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V40), + "::", + stringify!(struRecAllDay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRecordSched) as usize - ptr as usize }, + 456usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V40), + "::", + stringify!(struRecordSched) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordTime) as usize - ptr as usize }, + 2472usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V40), + "::", + stringify!(dwRecordTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPreRecordTime) as usize - ptr as usize }, + 2476usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V40), + "::", + stringify!(dwPreRecordTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecorderDuration) as usize - ptr as usize }, + 2480usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V40), + "::", + stringify!(dwRecorderDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRedundancyRec) as usize - ptr as usize }, + 2484usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V40), + "::", + stringify!(byRedundancyRec) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioRec) as usize - ptr as usize }, + 2485usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V40), + "::", + stringify!(byAudioRec) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 2486usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V40), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPassbackRecord) as usize - ptr as usize }, + 2487usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V40), + "::", + stringify!(byPassbackRecord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLockDuration) as usize - ptr as usize }, + 2488usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V40), + "::", + stringify!(wLockDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordBackup) as usize - ptr as usize }, + 2490usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V40), + "::", + stringify!(byRecordBackup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySVCLevel) as usize - ptr as usize }, + 2491usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V40), + "::", + stringify!(bySVCLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordManage) as usize - ptr as usize }, + 2492usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V40), + "::", + stringify!(byRecordManage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExtraSaveAudio) as usize - ptr as usize }, + 2493usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V40), + "::", + stringify!(byExtraSaveAudio) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIntelligentRecord) as usize - ptr as usize }, + 2494usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V40), + "::", + stringify!(byIntelligentRecord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2495usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_RECORD_V40 = *mut NET_DVR_RECORD_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_RECORD { + pub dwSize: DWORD, + pub dwRecord: DWORD, + pub struRecAllDay: [NET_DVR_RECORDDAY; 7usize], + pub struRecordSched: [[NET_DVR_RECORDSCHED; 4usize]; 7usize], + pub dwRecordTime: DWORD, + pub dwPreRecordTime: DWORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_RECORD() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 268usize, + concat!("Size of: ", stringify!(NET_DVR_RECORD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_RECORD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecord) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD), + "::", + stringify!(dwRecord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRecAllDay) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD), + "::", + stringify!(struRecAllDay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRecordSched) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD), + "::", + stringify!(struRecordSched) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordTime) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD), + "::", + stringify!(dwRecordTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPreRecordTime) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RECORD), + "::", + stringify!(dwPreRecordTime) + ) + ); +} +pub type LPNET_DVR_RECORD = *mut NET_DVR_RECORD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PTZ_PROTOCOL { + pub dwType: DWORD, + pub byDescribe: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_PTZ_PROTOCOL() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(NET_DVR_PTZ_PROTOCOL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_PTZ_PROTOCOL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PTZ_PROTOCOL), + "::", + stringify!(dwType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDescribe) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PTZ_PROTOCOL), + "::", + stringify!(byDescribe) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PTZCFG { + pub dwSize: DWORD, + pub struPtz: [NET_DVR_PTZ_PROTOCOL; 200usize], + pub dwPtzNum: DWORD, + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_PTZCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4016usize, + concat!("Size of: ", stringify!(NET_DVR_PTZCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_PTZCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PTZCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPtz) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PTZCFG), + "::", + stringify!(struPtz) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPtzNum) as usize - ptr as usize }, + 4004usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PTZCFG), + "::", + stringify!(dwPtzNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4008usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PTZCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_PTZCFG = *mut NET_DVR_PTZCFG; +#[doc = "��\u{328}����(end)"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SERIALSTART_V40 { + pub dwSize: DWORD, + pub dwSerialType: DWORD, + pub bySerialNum: BYTE, + pub byRes: [BYTE; 255usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SERIALSTART_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_DVR_SERIALSTART_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SERIALSTART_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERIALSTART_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSerialType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERIALSTART_V40), + "::", + stringify!(dwSerialType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySerialNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERIALSTART_V40), + "::", + stringify!(bySerialNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERIALSTART_V40), + "::", + stringify!(byRes) + ) + ); +} +#[doc = "��\u{328}����(end)"] +pub type NET_DVR_SERIALSTART_V40 = tagNET_DVR_SERIALSTART_V40; +#[doc = "��\u{328}����(end)"] +pub type LPNET_DVR_SERIALSTART_V40 = *mut tagNET_DVR_SERIALSTART_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DECODERCFG_V40 { + pub dwSize: DWORD, + pub dwBaudRate: DWORD, + pub byDataBit: BYTE, + pub byStopBit: BYTE, + pub byParity: BYTE, + pub byFlowcontrol: BYTE, + pub wDecoderType: WORD, + pub wDecoderAddress: WORD, + pub bySetPreset: [BYTE; 256usize], + pub bySetCruise: [BYTE; 256usize], + pub bySetTrack: [BYTE; 256usize], + pub bySerialNO: BYTE, + pub byWorkMode: BYTE, + pub byRes: [BYTE; 254usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DECODERCFG_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1040usize, + concat!("Size of: ", stringify!(tagNET_DVR_DECODERCFG_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DECODERCFG_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODERCFG_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBaudRate) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODERCFG_V40), + "::", + stringify!(dwBaudRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataBit) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODERCFG_V40), + "::", + stringify!(byDataBit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStopBit) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODERCFG_V40), + "::", + stringify!(byStopBit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParity) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODERCFG_V40), + "::", + stringify!(byParity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlowcontrol) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODERCFG_V40), + "::", + stringify!(byFlowcontrol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDecoderType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODERCFG_V40), + "::", + stringify!(wDecoderType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDecoderAddress) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODERCFG_V40), + "::", + stringify!(wDecoderAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySetPreset) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODERCFG_V40), + "::", + stringify!(bySetPreset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySetCruise) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODERCFG_V40), + "::", + stringify!(bySetCruise) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySetTrack) as usize - ptr as usize }, + 528usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODERCFG_V40), + "::", + stringify!(bySetTrack) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySerialNO) as usize - ptr as usize }, + 784usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODERCFG_V40), + "::", + stringify!(bySerialNO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkMode) as usize - ptr as usize }, + 785usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODERCFG_V40), + "::", + stringify!(byWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 786usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODERCFG_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DECODERCFG_V40 = tagNET_DVR_DECODERCFG_V40; +pub type LPNET_DVR_DECODERCFG_V40 = *mut tagNET_DVR_DECODERCFG_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_THERMOMETRYRULE_TEMPERATURE_INFO { + pub fMaxTemperature: f32, + pub fMinTemperature: f32, + pub fAverageTemperature: f32, + pub struHighestPoint: NET_VCA_POINT, + pub struLowestPoint: NET_VCA_POINT, + pub byIsFreezedata: BYTE, + pub byRes: [BYTE; 15usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_THERMOMETRYRULE_TEMPERATURE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_THERMOMETRYRULE_TEMPERATURE_INFO) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_THERMOMETRYRULE_TEMPERATURE_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fMaxTemperature) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRYRULE_TEMPERATURE_INFO), + "::", + stringify!(fMaxTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fMinTemperature) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRYRULE_TEMPERATURE_INFO), + "::", + stringify!(fMinTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fAverageTemperature) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRYRULE_TEMPERATURE_INFO), + "::", + stringify!(fAverageTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHighestPoint) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRYRULE_TEMPERATURE_INFO), + "::", + stringify!(struHighestPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLowestPoint) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRYRULE_TEMPERATURE_INFO), + "::", + stringify!(struLowestPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsFreezedata) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRYRULE_TEMPERATURE_INFO), + "::", + stringify!(byIsFreezedata) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 29usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRYRULE_TEMPERATURE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_THERMOMETRYRULE_TEMPERATURE_INFO = tagNET_DVR_THERMOMETRYRULE_TEMPERATURE_INFO; +pub type LPNET_DVR_THERMOMETRYRULE_TEMPERATURE_INFO = + *mut tagNET_DVR_THERMOMETRYRULE_TEMPERATURE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DECODERCFG_V30 { + pub dwSize: DWORD, + pub dwBaudRate: DWORD, + pub byDataBit: BYTE, + pub byStopBit: BYTE, + pub byParity: BYTE, + pub byFlowcontrol: BYTE, + pub wDecoderType: WORD, + pub wDecoderAddress: WORD, + pub bySetPreset: [BYTE; 256usize], + pub bySetCruise: [BYTE; 256usize], + pub bySetTrack: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_DECODERCFG_V30() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 784usize, + concat!("Size of: ", stringify!(NET_DVR_DECODERCFG_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_DECODERCFG_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERCFG_V30), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBaudRate) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERCFG_V30), + "::", + stringify!(dwBaudRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataBit) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERCFG_V30), + "::", + stringify!(byDataBit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStopBit) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERCFG_V30), + "::", + stringify!(byStopBit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParity) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERCFG_V30), + "::", + stringify!(byParity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlowcontrol) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERCFG_V30), + "::", + stringify!(byFlowcontrol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDecoderType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERCFG_V30), + "::", + stringify!(wDecoderType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDecoderAddress) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERCFG_V30), + "::", + stringify!(wDecoderAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySetPreset) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERCFG_V30), + "::", + stringify!(bySetPreset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySetCruise) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERCFG_V30), + "::", + stringify!(bySetCruise) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySetTrack) as usize - ptr as usize }, + 528usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERCFG_V30), + "::", + stringify!(bySetTrack) + ) + ); +} +pub type LPNET_DVR_DECODERCFG_V30 = *mut NET_DVR_DECODERCFG_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DECODERCFG { + pub dwSize: DWORD, + pub dwBaudRate: DWORD, + pub byDataBit: BYTE, + pub byStopBit: BYTE, + pub byParity: BYTE, + pub byFlowcontrol: BYTE, + pub wDecoderType: WORD, + pub wDecoderAddress: WORD, + pub bySetPreset: [BYTE; 128usize], + pub bySetCruise: [BYTE; 128usize], + pub bySetTrack: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_DECODERCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 400usize, + concat!("Size of: ", stringify!(NET_DVR_DECODERCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_DECODERCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBaudRate) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERCFG), + "::", + stringify!(dwBaudRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataBit) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERCFG), + "::", + stringify!(byDataBit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStopBit) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERCFG), + "::", + stringify!(byStopBit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParity) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERCFG), + "::", + stringify!(byParity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlowcontrol) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERCFG), + "::", + stringify!(byFlowcontrol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDecoderType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERCFG), + "::", + stringify!(wDecoderType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDecoderAddress) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERCFG), + "::", + stringify!(wDecoderAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySetPreset) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERCFG), + "::", + stringify!(bySetPreset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySetCruise) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERCFG), + "::", + stringify!(bySetCruise) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySetTrack) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERCFG), + "::", + stringify!(bySetTrack) + ) + ); +} +pub type LPNET_DVR_DECODERCFG = *mut NET_DVR_DECODERCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PPPCFG_V30 { + pub struRemoteIP: NET_DVR_IPADDR, + pub struLocalIP: NET_DVR_IPADDR, + pub sLocalIPMask: [::std::os::raw::c_char; 16usize], + pub sUsername: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub byPPPMode: BYTE, + pub byRedial: BYTE, + pub byRedialMode: BYTE, + pub byDataEncrypt: BYTE, + pub dwMTU: DWORD, + pub sTelephoneNumber: [::std::os::raw::c_char; 32usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_PPPCFG_V30() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 392usize, + concat!("Size of: ", stringify!(NET_DVR_PPPCFG_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_PPPCFG_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRemoteIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PPPCFG_V30), + "::", + stringify!(struRemoteIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLocalIP) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PPPCFG_V30), + "::", + stringify!(struLocalIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLocalIPMask) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PPPCFG_V30), + "::", + stringify!(sLocalIPMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUsername) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PPPCFG_V30), + "::", + stringify!(sUsername) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 336usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PPPCFG_V30), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPPPMode) as usize - ptr as usize }, + 352usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PPPCFG_V30), + "::", + stringify!(byPPPMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRedial) as usize - ptr as usize }, + 353usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PPPCFG_V30), + "::", + stringify!(byRedial) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRedialMode) as usize - ptr as usize }, + 354usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PPPCFG_V30), + "::", + stringify!(byRedialMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataEncrypt) as usize - ptr as usize }, + 355usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PPPCFG_V30), + "::", + stringify!(byDataEncrypt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMTU) as usize - ptr as usize }, + 356usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PPPCFG_V30), + "::", + stringify!(dwMTU) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sTelephoneNumber) as usize - ptr as usize }, + 360usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PPPCFG_V30), + "::", + stringify!(sTelephoneNumber) + ) + ); +} +pub type LPNET_DVR_PPPCFG_V30 = *mut NET_DVR_PPPCFG_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PPPCFG { + pub sRemoteIP: [::std::os::raw::c_char; 16usize], + pub sLocalIP: [::std::os::raw::c_char; 16usize], + pub sLocalIPMask: [::std::os::raw::c_char; 16usize], + pub sUsername: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub byPPPMode: BYTE, + pub byRedial: BYTE, + pub byRedialMode: BYTE, + pub byDataEncrypt: BYTE, + pub dwMTU: DWORD, + pub sTelephoneNumber: [::std::os::raw::c_char; 32usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_PPPCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(NET_DVR_PPPCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_PPPCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sRemoteIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PPPCFG), + "::", + stringify!(sRemoteIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLocalIP) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PPPCFG), + "::", + stringify!(sLocalIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLocalIPMask) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PPPCFG), + "::", + stringify!(sLocalIPMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUsername) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PPPCFG), + "::", + stringify!(sUsername) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PPPCFG), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPPPMode) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PPPCFG), + "::", + stringify!(byPPPMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRedial) as usize - ptr as usize }, + 97usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PPPCFG), + "::", + stringify!(byRedial) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRedialMode) as usize - ptr as usize }, + 98usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PPPCFG), + "::", + stringify!(byRedialMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataEncrypt) as usize - ptr as usize }, + 99usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PPPCFG), + "::", + stringify!(byDataEncrypt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMTU) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PPPCFG), + "::", + stringify!(dwMTU) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sTelephoneNumber) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PPPCFG), + "::", + stringify!(sTelephoneNumber) + ) + ); +} +pub type LPNET_DVR_PPPCFG = *mut NET_DVR_PPPCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_SINGLE_RS232 { + pub dwBaudRate: DWORD, + pub byDataBit: BYTE, + pub byStopBit: BYTE, + pub byParity: BYTE, + pub byFlowcontrol: BYTE, + pub dwWorkMode: DWORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_SINGLE_RS232() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(NET_DVR_SINGLE_RS232)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_SINGLE_RS232)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBaudRate) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_RS232), + "::", + stringify!(dwBaudRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataBit) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_RS232), + "::", + stringify!(byDataBit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStopBit) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_RS232), + "::", + stringify!(byStopBit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParity) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_RS232), + "::", + stringify!(byParity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlowcontrol) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_RS232), + "::", + stringify!(byFlowcontrol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWorkMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_RS232), + "::", + stringify!(dwWorkMode) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_USB_RS232 { + pub dwBaudRate: DWORD, + pub byDataBit: BYTE, + pub byStopBit: BYTE, + pub byParity: BYTE, + pub byFlowcontrol: BYTE, + pub byVirtualSerialPort: BYTE, + pub byRes: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_USB_RS232() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_USB_RS232)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_USB_RS232)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBaudRate) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USB_RS232), + "::", + stringify!(dwBaudRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataBit) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USB_RS232), + "::", + stringify!(byDataBit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStopBit) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USB_RS232), + "::", + stringify!(byStopBit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParity) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USB_RS232), + "::", + stringify!(byParity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlowcontrol) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USB_RS232), + "::", + stringify!(byFlowcontrol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVirtualSerialPort) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USB_RS232), + "::", + stringify!(byVirtualSerialPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USB_RS232), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_USB_RS232 = tagNET_DVR_USB_RS232; +pub type LPNET_DVR_USB_RS232 = *mut tagNET_DVR_USB_RS232; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_RS232CFG_V30 { + pub dwSize: DWORD, + pub struRs232: [NET_DVR_SINGLE_RS232; 8usize], + pub struPPPConfig: NET_DVR_PPPCFG_V30, +} +#[test] +fn bindgen_test_layout_NET_DVR_RS232CFG_V30() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 492usize, + concat!("Size of: ", stringify!(NET_DVR_RS232CFG_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_RS232CFG_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RS232CFG_V30), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRs232) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RS232CFG_V30), + "::", + stringify!(struRs232) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPPPConfig) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RS232CFG_V30), + "::", + stringify!(struPPPConfig) + ) + ); +} +pub type LPNET_DVR_RS232CFG_V30 = *mut NET_DVR_RS232CFG_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_RS232CFG { + pub dwSize: DWORD, + pub dwBaudRate: DWORD, + pub byDataBit: BYTE, + pub byStopBit: BYTE, + pub byParity: BYTE, + pub byFlowcontrol: BYTE, + pub dwWorkMode: DWORD, + pub struPPPConfig: NET_DVR_PPPCFG, +} +#[test] +fn bindgen_test_layout_NET_DVR_RS232CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 152usize, + concat!("Size of: ", stringify!(NET_DVR_RS232CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_RS232CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RS232CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBaudRate) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RS232CFG), + "::", + stringify!(dwBaudRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataBit) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RS232CFG), + "::", + stringify!(byDataBit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStopBit) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RS232CFG), + "::", + stringify!(byStopBit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParity) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RS232CFG), + "::", + stringify!(byParity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlowcontrol) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RS232CFG), + "::", + stringify!(byFlowcontrol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWorkMode) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RS232CFG), + "::", + stringify!(dwWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPPPConfig) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RS232CFG), + "::", + stringify!(struPPPConfig) + ) + ); +} +pub type LPNET_DVR_RS232CFG = *mut NET_DVR_RS232CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PRESETCHAN_INFO { + pub dwEnablePresetChan: DWORD, + pub dwPresetPointNo: DWORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_PRESETCHAN_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(NET_DVR_PRESETCHAN_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_PRESETCHAN_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnablePresetChan) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PRESETCHAN_INFO), + "::", + stringify!(dwEnablePresetChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPresetPointNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PRESETCHAN_INFO), + "::", + stringify!(dwPresetPointNo) + ) + ); +} +pub type LPNET_DVR_PRESETCHAN_INFO = NET_DVR_PRESETCHAN_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_CRUISECHAN_INFO { + pub dwEnableCruiseChan: DWORD, + pub dwCruiseNo: DWORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_CRUISECHAN_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(NET_DVR_CRUISECHAN_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_CRUISECHAN_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnableCruiseChan) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CRUISECHAN_INFO), + "::", + stringify!(dwEnableCruiseChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCruiseNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CRUISECHAN_INFO), + "::", + stringify!(dwCruiseNo) + ) + ); +} +pub type LPNET_DVR_CRUISECHAN_INFO = NET_DVR_CRUISECHAN_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PTZTRACKCHAN_INFO { + pub dwEnablePtzTrackChan: DWORD, + pub dwPtzTrackNo: DWORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_PTZTRACKCHAN_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(NET_DVR_PTZTRACKCHAN_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_PTZTRACKCHAN_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnablePtzTrackChan) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PTZTRACKCHAN_INFO), + "::", + stringify!(dwEnablePtzTrackChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPtzTrackNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PTZTRACKCHAN_INFO), + "::", + stringify!(dwPtzTrackNo) + ) + ); +} +pub type LPNET_DVR_PTZTRACKCHAN_INFO = NET_DVR_PTZTRACKCHAN_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZ_NOTIFICATION_COND { + pub dwSize: DWORD, + pub byEventType: WORD, + pub byRes: [BYTE; 2usize], + pub dwChannel: DWORD, + pub byRes1: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZ_NOTIFICATION_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 140usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZ_NOTIFICATION_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PTZ_NOTIFICATION_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_NOTIFICATION_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEventType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_NOTIFICATION_COND), + "::", + stringify!(byEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_NOTIFICATION_COND), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_NOTIFICATION_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_NOTIFICATION_COND), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_PTZ_NOTIFICATION_COND = tagNET_DVR_PTZ_NOTIFICATION_COND; +pub type LPNET_DVR_PTZ_NOTIFICATION_COND = *mut tagNET_DVR_PTZ_NOTIFICATION_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZ_NOTIFICATION_CFG { + pub dwSize: DWORD, + pub dwEnablePresetChanNum: DWORD, + pub struPresetChanInfo: [NET_DVR_PRESETCHAN_INFO; 512usize], + pub dwEnableCruiseChanNum: DWORD, + pub struCruiseChanInfo: [NET_DVR_CRUISECHAN_INFO; 512usize], + pub dwEnablePtzTrackChanNum: DWORD, + pub struPtzTrackInfo: [NET_DVR_PTZTRACKCHAN_INFO; 512usize], + pub byRes1: [BYTE; 1024usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZ_NOTIFICATION_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 13328usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZ_NOTIFICATION_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZ_NOTIFICATION_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_NOTIFICATION_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnablePresetChanNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_NOTIFICATION_CFG), + "::", + stringify!(dwEnablePresetChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPresetChanInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_NOTIFICATION_CFG), + "::", + stringify!(struPresetChanInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnableCruiseChanNum) as usize - ptr as usize }, + 4104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_NOTIFICATION_CFG), + "::", + stringify!(dwEnableCruiseChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCruiseChanInfo) as usize - ptr as usize }, + 4108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_NOTIFICATION_CFG), + "::", + stringify!(struCruiseChanInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnablePtzTrackChanNum) as usize - ptr as usize }, + 8204usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_NOTIFICATION_CFG), + "::", + stringify!(dwEnablePtzTrackChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPtzTrackInfo) as usize - ptr as usize }, + 8208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_NOTIFICATION_CFG), + "::", + stringify!(struPtzTrackInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 12304usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_NOTIFICATION_CFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_PTZ_NOTIFICATION_CFG = tagNET_DVR_PTZ_NOTIFICATION_CFG; +pub type LPNET_DVR_PTZ_NOTIFICATION_CFG = *mut tagNET_DVR_PTZ_NOTIFICATION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZ_NOTIFICATION { + pub dwSize: DWORD, + pub byEventType: WORD, + pub byRes: [BYTE; 62usize], + pub dwEnablePresetChanNum: DWORD, + pub struPresetChanInfo: [NET_DVR_PRESETCHAN_INFO; 512usize], + pub dwEnableCruiseChanNum: DWORD, + pub struCruiseChanInfo: [NET_DVR_CRUISECHAN_INFO; 512usize], + pub dwEnablePtzTrackChanNum: DWORD, + pub struPtzTrackInfo: [NET_DVR_PTZTRACKCHAN_INFO; 512usize], + pub byRes1: [BYTE; 1024usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZ_NOTIFICATION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 13392usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZ_NOTIFICATION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZ_NOTIFICATION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_NOTIFICATION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEventType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_NOTIFICATION), + "::", + stringify!(byEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_NOTIFICATION), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnablePresetChanNum) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_NOTIFICATION), + "::", + stringify!(dwEnablePresetChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPresetChanInfo) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_NOTIFICATION), + "::", + stringify!(struPresetChanInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnableCruiseChanNum) as usize - ptr as usize }, + 4168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_NOTIFICATION), + "::", + stringify!(dwEnableCruiseChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCruiseChanInfo) as usize - ptr as usize }, + 4172usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_NOTIFICATION), + "::", + stringify!(struCruiseChanInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnablePtzTrackChanNum) as usize - ptr as usize }, + 8268usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_NOTIFICATION), + "::", + stringify!(dwEnablePtzTrackChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPtzTrackInfo) as usize - ptr as usize }, + 8272usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_NOTIFICATION), + "::", + stringify!(struPtzTrackInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 12368usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_NOTIFICATION), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_PTZ_NOTIFICATION = tagNET_DVR_PTZ_NOTIFICATION; +pub type LPNET_DVR_PTZ_NOTIFICATION = *mut tagNET_DVR_PTZ_NOTIFICATION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMINCFG_V40 { + pub dwSize: DWORD, + pub sAlarmInName: [BYTE; 32usize], + pub byAlarmType: BYTE, + pub byAlarmInHandle: BYTE, + pub byChannel: BYTE, + pub byInputType: BYTE, + pub dwHandleType: DWORD, + pub dwMaxRelAlarmOutChanNum: DWORD, + pub dwRelAlarmOutChanNum: DWORD, + pub dwRelAlarmOut: [DWORD; 4128usize], + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub dwMaxRecordChanNum: DWORD, + pub dwCurRecordChanNum: DWORD, + pub dwRelRecordChan: [DWORD; 512usize], + pub dwMaxEnablePtzCtrlNun: DWORD, + pub dwEnablePresetChanNum: DWORD, + pub struPresetChanInfo: [NET_DVR_PRESETCHAN_INFO; 512usize], + pub byPresetDurationTime: [BYTE; 512usize], + pub byRes2: [BYTE; 4usize], + pub dwEnableCruiseChanNum: DWORD, + pub struCruiseChanInfo: [NET_DVR_CRUISECHAN_INFO; 512usize], + pub dwEnablePtzTrackChanNum: DWORD, + pub struPtzTrackInfo: [NET_DVR_PTZTRACKCHAN_INFO; 512usize], + pub wEventType: [WORD; 64usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMINCFG_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 31920usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMINCFG_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMINCFG_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINCFG_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sAlarmInName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINCFG_V40), + "::", + stringify!(sAlarmInName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINCFG_V40), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInHandle) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINCFG_V40), + "::", + stringify!(byAlarmInHandle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINCFG_V40), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInputType) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINCFG_V40), + "::", + stringify!(byInputType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHandleType) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINCFG_V40), + "::", + stringify!(dwHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxRelAlarmOutChanNum) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINCFG_V40), + "::", + stringify!(dwMaxRelAlarmOutChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelAlarmOutChanNum) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINCFG_V40), + "::", + stringify!(dwRelAlarmOutChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelAlarmOut) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINCFG_V40), + "::", + stringify!(dwRelAlarmOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 16564usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINCFG_V40), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxRecordChanNum) as usize - ptr as usize }, + 16788usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINCFG_V40), + "::", + stringify!(dwMaxRecordChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCurRecordChanNum) as usize - ptr as usize }, + 16792usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINCFG_V40), + "::", + stringify!(dwCurRecordChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelRecordChan) as usize - ptr as usize }, + 16796usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINCFG_V40), + "::", + stringify!(dwRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxEnablePtzCtrlNun) as usize - ptr as usize }, + 18844usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINCFG_V40), + "::", + stringify!(dwMaxEnablePtzCtrlNun) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnablePresetChanNum) as usize - ptr as usize }, + 18848usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINCFG_V40), + "::", + stringify!(dwEnablePresetChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPresetChanInfo) as usize - ptr as usize }, + 18852usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINCFG_V40), + "::", + stringify!(struPresetChanInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPresetDurationTime) as usize - ptr as usize }, + 22948usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINCFG_V40), + "::", + stringify!(byPresetDurationTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 23460usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINCFG_V40), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnableCruiseChanNum) as usize - ptr as usize }, + 23464usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINCFG_V40), + "::", + stringify!(dwEnableCruiseChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCruiseChanInfo) as usize - ptr as usize }, + 23468usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINCFG_V40), + "::", + stringify!(struCruiseChanInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnablePtzTrackChanNum) as usize - ptr as usize }, + 27564usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINCFG_V40), + "::", + stringify!(dwEnablePtzTrackChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPtzTrackInfo) as usize - ptr as usize }, + 27568usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINCFG_V40), + "::", + stringify!(struPtzTrackInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wEventType) as usize - ptr as usize }, + 31664usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINCFG_V40), + "::", + stringify!(wEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 31792usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINCFG_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMINCFG_V40 = tagNET_DVR_ALARMINCFG_V40; +pub type LPNET_DVR_ALARMINCFG_V40 = *mut tagNET_DVR_ALARMINCFG_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_ALARMINCFG_V30 { + pub dwSize: DWORD, + pub sAlarmInName: [BYTE; 32usize], + pub byAlarmType: BYTE, + pub byAlarmInHandle: BYTE, + pub byChannel: BYTE, + pub byInputType: BYTE, + pub struAlarmHandleType: NET_DVR_HANDLEEXCEPTION_V30, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub byRelRecordChan: [BYTE; 64usize], + pub byEnablePreset: [BYTE; 64usize], + pub byPresetNo: [BYTE; 64usize], + pub byRes2: [BYTE; 192usize], + pub byEnableCruise: [BYTE; 64usize], + pub byCruiseNo: [BYTE; 64usize], + pub byEnablePtzTrack: [BYTE; 64usize], + pub byPTZTrack: [BYTE; 64usize], + pub byRes3: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_ALARMINCFG_V30() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1020usize, + concat!("Size of: ", stringify!(NET_DVR_ALARMINCFG_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_ALARMINCFG_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG_V30), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sAlarmInName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG_V30), + "::", + stringify!(sAlarmInName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG_V30), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInHandle) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG_V30), + "::", + stringify!(byAlarmInHandle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG_V30), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInputType) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG_V30), + "::", + stringify!(byInputType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmHandleType) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG_V30), + "::", + stringify!(struAlarmHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG_V30), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelRecordChan) as usize - ptr as usize }, + 364usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG_V30), + "::", + stringify!(byRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnablePreset) as usize - ptr as usize }, + 428usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG_V30), + "::", + stringify!(byEnablePreset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPresetNo) as usize - ptr as usize }, + 492usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG_V30), + "::", + stringify!(byPresetNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 556usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG_V30), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableCruise) as usize - ptr as usize }, + 748usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG_V30), + "::", + stringify!(byEnableCruise) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCruiseNo) as usize - ptr as usize }, + 812usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG_V30), + "::", + stringify!(byCruiseNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnablePtzTrack) as usize - ptr as usize }, + 876usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG_V30), + "::", + stringify!(byEnablePtzTrack) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPTZTrack) as usize - ptr as usize }, + 940usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG_V30), + "::", + stringify!(byPTZTrack) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 1004usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG_V30), + "::", + stringify!(byRes3) + ) + ); +} +pub type LPNET_DVR_ALARMINCFG_V30 = *mut NET_DVR_ALARMINCFG_V30; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_ALARMINFO_FIXED_HEADER { + pub dwAlarmType: DWORD, + pub struAlarmTime: NET_DVR_TIME_EX, + pub uStruAlarm: tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1, + pub pRes: *mut DWORD, + pub byTimeDiffFlag: BYTE, + pub cTimeDifferenceH: ::std::os::raw::c_char, + pub cTimeDifferenceM: ::std::os::raw::c_char, + pub byRes: BYTE, + pub wDevInfoIvmsChannel: WORD, + pub byRes2: [BYTE; 2usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1 { + pub byUnionLen: [BYTE; 116usize], + pub struIOAlarm: tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_1, + pub struAlarmChannel: tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_2, + pub struAlarmHardDisk: tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_3, + pub struRecordingHost: tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_4, + pub struVoltageInstable: tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_5, + pub struPTLocking: tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_6, + pub struLogException: tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_7, + pub struAbnormalReboot: tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_1 { + pub dwAlarmInputNo: DWORD, + pub dwTrigerAlarmOutNum: DWORD, + pub dwTrigerRecordChanNum: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmInputNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(dwAlarmInputNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTrigerAlarmOutNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(dwTrigerAlarmOutNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTrigerRecordChanNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(dwTrigerRecordChanNum) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_2 { + pub dwAlarmChanNum: DWORD, + pub dwPicLen: DWORD, + pub byPicURL: BYTE, + pub byTarget: BYTE, + pub byRes1: [BYTE; 2usize], + pub pDataBuff: *mut ::std::os::raw::c_char, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_2, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmChanNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(dwAlarmChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicLen) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(dwPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicURL) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byPicURL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTarget) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byTarget) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pDataBuff) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(pDataBuff) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_3 { + pub dwAlarmHardDiskNum: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_3() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_3, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmHardDiskNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(dwAlarmHardDiskNum) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_4 { + pub bySubAlarmType: BYTE, + pub byRes1: [BYTE; 3usize], + pub struRecordEndTime: NET_DVR_TIME_EX, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_4() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_4, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_4) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubAlarmType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(bySubAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRecordEndTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(struRecordEndTime) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_5 { + pub fVoltageValue: f32, + pub byVoltageAlarmType: BYTE, + pub byRes1: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_5() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_5, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_5) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_5) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fVoltageValue) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(fVoltageValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVoltageAlarmType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byVoltageAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byRes1) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_6 { + pub fTemperature: f32, + pub dwCustomInfoLength: DWORD, + pub pCustomInfo: *mut BYTE, + pub byType: BYTE, + pub byDeicingEnabled: BYTE, + pub byRes2: [BYTE; 2usize], + pub dwChannel: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_6() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_6, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_6) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_6) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fTemperature) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(fTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCustomInfoLength) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(dwCustomInfoLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pCustomInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(pCustomInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeicingEnabled) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byDeicingEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(dwChannel) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_7 { + pub byExceptionType: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_7() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_7, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_7) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_7) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExceptionType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byExceptionType) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_8 { + pub struAlarmTime: NET_DVR_TIME_EX, + pub byExceptionType: BYTE, + pub byRes1: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_8() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_8, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_8) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExceptionType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(byExceptionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(byRes1) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 120usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUnionLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1), + "::", + stringify!(byUnionLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIOAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1), + "::", + stringify!(struIOAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1), + "::", + stringify!(struAlarmChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmHardDisk) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1), + "::", + stringify!(struAlarmHardDisk) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRecordingHost) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1), + "::", + stringify!(struRecordingHost) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVoltageInstable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1), + "::", + stringify!(struVoltageInstable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPTLocking) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1), + "::", + stringify!(struPTLocking) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLogException) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1), + "::", + stringify!(struLogException) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAbnormalReboot) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER__bindgen_ty_1), + "::", + stringify!(struAbnormalReboot) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMINFO_FIXED_HEADER() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 152usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER), + "::", + stringify!(dwAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uStruAlarm) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER), + "::", + stringify!(uStruAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pRes) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER), + "::", + stringify!(pRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeDiffFlag) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER), + "::", + stringify!(byTimeDiffFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceH) as usize - ptr as usize }, + 145usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER), + "::", + stringify!(cTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceM) as usize - ptr as usize }, + 146usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER), + "::", + stringify!(cTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 147usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevInfoIvmsChannel) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER), + "::", + stringify!(wDevInfoIvmsChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_FIXED_HEADER), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ALRAM_FIXED_HEADER = tagNET_DVR_ALARMINFO_FIXED_HEADER; +pub type LPNET_DVR_ALARM_FIXED_HEADER = *mut tagNET_DVR_ALARMINFO_FIXED_HEADER; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct NET_DVR_ALARMINFO_V40 { + pub struAlarmFixedHeader: NET_DVR_ALRAM_FIXED_HEADER, + pub pAlarmData: *mut DWORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_ALARMINFO_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 160usize, + concat!("Size of: ", stringify!(NET_DVR_ALARMINFO_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(NET_DVR_ALARMINFO_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmFixedHeader) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINFO_V40), + "::", + stringify!(struAlarmFixedHeader) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pAlarmData) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINFO_V40), + "::", + stringify!(pAlarmData) + ) + ); +} +pub type LPNET_DVR_ALARMINFO_V40 = *mut NET_DVR_ALARMINFO_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_ALARMINCFG { + pub dwSize: DWORD, + pub sAlarmInName: [BYTE; 32usize], + pub byAlarmType: BYTE, + pub byAlarmInHandle: BYTE, + pub byChannel: BYTE, + pub byRes: BYTE, + pub struAlarmHandleType: NET_DVR_HANDLEEXCEPTION, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 4usize]; 7usize], + pub byRelRecordChan: [BYTE; 16usize], + pub byEnablePreset: [BYTE; 16usize], + pub byPresetNo: [BYTE; 16usize], + pub byEnableCruise: [BYTE; 16usize], + pub byCruiseNo: [BYTE; 16usize], + pub byEnablePtzTrack: [BYTE; 16usize], + pub byPTZTrack: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_ALARMINCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 272usize, + concat!("Size of: ", stringify!(NET_DVR_ALARMINCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_ALARMINCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sAlarmInName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG), + "::", + stringify!(sAlarmInName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInHandle) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG), + "::", + stringify!(byAlarmInHandle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmHandleType) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG), + "::", + stringify!(struAlarmHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelRecordChan) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG), + "::", + stringify!(byRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnablePreset) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG), + "::", + stringify!(byEnablePreset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPresetNo) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG), + "::", + stringify!(byPresetNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableCruise) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG), + "::", + stringify!(byEnableCruise) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCruiseNo) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG), + "::", + stringify!(byCruiseNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnablePtzTrack) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG), + "::", + stringify!(byEnablePtzTrack) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPTZTrack) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINCFG), + "::", + stringify!(byPTZTrack) + ) + ); +} +pub type LPNET_DVR_ALARMINCFG = *mut NET_DVR_ALARMINCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_ANALOG_ALARMINCFG { + pub dwSize: DWORD, + pub byEnableAlarmHandle: BYTE, + pub byRes1: [BYTE; 3usize], + pub byAlarmInName: [BYTE; 32usize], + pub wAlarmInUpper: WORD, + pub wAlarmInLower: WORD, + pub struAlarmHandleType: NET_DVR_HANDLEEXCEPTION_V30, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub byRelRecordChan: [BYTE; 64usize], + pub byRes2: [BYTE; 100usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_ANALOG_ALARMINCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 532usize, + concat!("Size of: ", stringify!(NET_DVR_ANALOG_ALARMINCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_ANALOG_ALARMINCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ANALOG_ALARMINCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableAlarmHandle) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ANALOG_ALARMINCFG), + "::", + stringify!(byEnableAlarmHandle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ANALOG_ALARMINCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ANALOG_ALARMINCFG), + "::", + stringify!(byAlarmInName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAlarmInUpper) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ANALOG_ALARMINCFG), + "::", + stringify!(wAlarmInUpper) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAlarmInLower) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ANALOG_ALARMINCFG), + "::", + stringify!(wAlarmInLower) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmHandleType) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ANALOG_ALARMINCFG), + "::", + stringify!(struAlarmHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ANALOG_ALARMINCFG), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelRecordChan) as usize - ptr as usize }, + 368usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ANALOG_ALARMINCFG), + "::", + stringify!(byRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 432usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ANALOG_ALARMINCFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type LPNET_DVR_ANALOG_ALARMINCFG = *mut NET_DVR_ANALOG_ALARMINCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_ALARMINFO_V30 { + pub dwAlarmType: DWORD, + pub dwAlarmInputNumber: DWORD, + pub byAlarmOutputNumber: [BYTE; 96usize], + pub byAlarmRelateChannel: [BYTE; 64usize], + pub byChannel: [BYTE; 64usize], + pub byDiskNumber: [BYTE; 33usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_ALARMINFO_V30() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 268usize, + concat!("Size of: ", stringify!(NET_DVR_ALARMINFO_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_ALARMINFO_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINFO_V30), + "::", + stringify!(dwAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmInputNumber) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINFO_V30), + "::", + stringify!(dwAlarmInputNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutputNumber) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINFO_V30), + "::", + stringify!(byAlarmOutputNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmRelateChannel) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINFO_V30), + "::", + stringify!(byAlarmRelateChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINFO_V30), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDiskNumber) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINFO_V30), + "::", + stringify!(byDiskNumber) + ) + ); +} +pub type LPNET_DVR_ALARMINFO_V30 = *mut NET_DVR_ALARMINFO_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARM_HOT_SPARE { + pub dwSize: DWORD, + pub dwExceptionCase: DWORD, + pub struDeviceIP: NET_DVR_IPADDR, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARM_HOT_SPARE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 408usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARM_HOT_SPARE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARM_HOT_SPARE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_HOT_SPARE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwExceptionCase) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_HOT_SPARE), + "::", + stringify!(dwExceptionCase) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDeviceIP) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_HOT_SPARE), + "::", + stringify!(struDeviceIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_HOT_SPARE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARM_HOT_SPARE = tagNET_DVR_ALARM_HOT_SPARE; +pub type LPNET_DVR_ALARM_HOT_SPARE = *mut tagNET_DVR_ALARM_HOT_SPARE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_ALARMINFO { + pub dwAlarmType: DWORD, + pub dwAlarmInputNumber: DWORD, + pub dwAlarmOutputNumber: [DWORD; 4usize], + pub dwAlarmRelateChannel: [DWORD; 16usize], + pub dwChannel: [DWORD; 16usize], + pub dwDiskNumber: [DWORD; 16usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_ALARMINFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 216usize, + concat!("Size of: ", stringify!(NET_DVR_ALARMINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_ALARMINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINFO), + "::", + stringify!(dwAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmInputNumber) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINFO), + "::", + stringify!(dwAlarmInputNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmOutputNumber) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINFO), + "::", + stringify!(dwAlarmOutputNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmRelateChannel) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINFO), + "::", + stringify!(dwAlarmRelateChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINFO), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDiskNumber) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMINFO), + "::", + stringify!(dwDiskNumber) + ) + ); +} +pub type LPNET_DVR_ALARMINFO = *mut NET_DVR_ALARMINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_IPDEVINFO { + pub dwEnable: DWORD, + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub struIP: NET_DVR_IPADDR, + pub wDVRPort: WORD, + pub byRes: [BYTE; 34usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_IPDEVINFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 232usize, + concat!("Size of: ", stringify!(NET_DVR_IPDEVINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_IPDEVINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPDEVINFO), + "::", + stringify!(dwEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPDEVINFO), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPDEVINFO), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPDEVINFO), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDVRPort) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPDEVINFO), + "::", + stringify!(wDVRPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 198usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPDEVINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_IPDEVINFO = *mut NET_DVR_IPDEVINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IPDEVINFO_V31 { + pub byEnable: BYTE, + pub byProType: BYTE, + pub byEnableQuickAdd: BYTE, + pub byCameraType: BYTE, + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub byDomain: [BYTE; 64usize], + pub struIP: NET_DVR_IPADDR, + pub wDVRPort: WORD, + pub szDeviceID: [BYTE; 32usize], + pub byEnableTiming: BYTE, + pub byCertificateValidation: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPDEVINFO_V31() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 296usize, + concat!("Size of: ", stringify!(tagNET_DVR_IPDEVINFO_V31)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IPDEVINFO_V31)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVINFO_V31), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVINFO_V31), + "::", + stringify!(byProType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableQuickAdd) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVINFO_V31), + "::", + stringify!(byEnableQuickAdd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCameraType) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVINFO_V31), + "::", + stringify!(byCameraType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVINFO_V31), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVINFO_V31), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDomain) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVINFO_V31), + "::", + stringify!(byDomain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVINFO_V31), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDVRPort) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVINFO_V31), + "::", + stringify!(wDVRPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDeviceID) as usize - ptr as usize }, + 262usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVINFO_V31), + "::", + stringify!(szDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableTiming) as usize - ptr as usize }, + 294usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVINFO_V31), + "::", + stringify!(byEnableTiming) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCertificateValidation) as usize - ptr as usize }, + 295usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVINFO_V31), + "::", + stringify!(byCertificateValidation) + ) + ); +} +pub type NET_DVR_IPDEVINFO_V31 = tagNET_DVR_IPDEVINFO_V31; +pub type LPNET_DVR_IPDEVINFO_V31 = *mut tagNET_DVR_IPDEVINFO_V31; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_IPCHANINFO { + pub byEnable: BYTE, + pub byIPID: BYTE, + pub byChannel: BYTE, + pub byIPIDHigh: BYTE, + pub byTransProtocol: BYTE, + pub byGetStream: BYTE, + pub byres: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_IPCHANINFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(NET_DVR_IPCHANINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_IPCHANINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPCHANINFO), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIPID) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPCHANINFO), + "::", + stringify!(byIPID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPCHANINFO), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIPIDHigh) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPCHANINFO), + "::", + stringify!(byIPIDHigh) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransProtocol) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPCHANINFO), + "::", + stringify!(byTransProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGetStream) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPCHANINFO), + "::", + stringify!(byGetStream) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byres) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPCHANINFO), + "::", + stringify!(byres) + ) + ); +} +pub type LPNET_DVR_IPCHANINFO = *mut NET_DVR_IPCHANINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_IPPARACFG { + pub dwSize: DWORD, + pub struIPDevInfo: [NET_DVR_IPDEVINFO; 32usize], + pub byAnalogChanEnable: [BYTE; 32usize], + pub struIPChanInfo: [NET_DVR_IPCHANINFO; 32usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_IPPARACFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8612usize, + concat!("Size of: ", stringify!(NET_DVR_IPPARACFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_IPPARACFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPPARACFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPDevInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPPARACFG), + "::", + stringify!(struIPDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAnalogChanEnable) as usize - ptr as usize }, + 7428usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPPARACFG), + "::", + stringify!(byAnalogChanEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPChanInfo) as usize - ptr as usize }, + 7460usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPPARACFG), + "::", + stringify!(struIPChanInfo) + ) + ); +} +pub type LPNET_DVR_IPPARACFG = *mut NET_DVR_IPPARACFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IPPARACFG_V31 { + pub dwSize: DWORD, + pub struIPDevInfo: [NET_DVR_IPDEVINFO_V31; 32usize], + pub byAnalogChanEnable: [BYTE; 32usize], + pub struIPChanInfo: [NET_DVR_IPCHANINFO; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPPARACFG_V31() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 10660usize, + concat!("Size of: ", stringify!(tagNET_DVR_IPPARACFG_V31)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IPPARACFG_V31)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPPARACFG_V31), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPDevInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPPARACFG_V31), + "::", + stringify!(struIPDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAnalogChanEnable) as usize - ptr as usize }, + 9476usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPPARACFG_V31), + "::", + stringify!(byAnalogChanEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPChanInfo) as usize - ptr as usize }, + 9508usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPPARACFG_V31), + "::", + stringify!(struIPChanInfo) + ) + ); +} +pub type NET_DVR_IPPARACFG_V31 = tagNET_DVR_IPPARACFG_V31; +pub type LPNET_DVR_IPPARACFG_V31 = *mut tagNET_DVR_IPPARACFG_V31; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IPSERVER_STREAM { + pub byEnable: BYTE, + pub byRes: [BYTE; 3usize], + pub struIPServer: NET_DVR_IPADDR, + pub wPort: WORD, + pub wDvrNameLen: WORD, + pub byDVRName: [BYTE; 32usize], + pub wDVRSerialLen: WORD, + pub byRes1: [WORD; 2usize], + pub byDVRSerialNumber: [BYTE; 48usize], + pub byUserName: [BYTE; 32usize], + pub byPassWord: [BYTE; 16usize], + pub byChannel: BYTE, + pub byRes2: [BYTE; 11usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPSERVER_STREAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 298usize, + concat!("Size of: ", stringify!(tagNET_DVR_IPSERVER_STREAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IPSERVER_STREAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPSERVER_STREAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPSERVER_STREAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPServer) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPSERVER_STREAM), + "::", + stringify!(struIPServer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPSERVER_STREAM), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDvrNameLen) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPSERVER_STREAM), + "::", + stringify!(wDvrNameLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDVRName) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPSERVER_STREAM), + "::", + stringify!(byDVRName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDVRSerialLen) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPSERVER_STREAM), + "::", + stringify!(wDVRSerialLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 186usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPSERVER_STREAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDVRSerialNumber) as usize - ptr as usize }, + 190usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPSERVER_STREAM), + "::", + stringify!(byDVRSerialNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUserName) as usize - ptr as usize }, + 238usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPSERVER_STREAM), + "::", + stringify!(byUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPassWord) as usize - ptr as usize }, + 270usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPSERVER_STREAM), + "::", + stringify!(byPassWord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 286usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPSERVER_STREAM), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 287usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPSERVER_STREAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_IPSERVER_STREAM = tagNET_DVR_IPSERVER_STREAM; +pub type LPNET_DVR_IPSERVER_STREAM = *mut tagNET_DVR_IPSERVER_STREAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_STREAM_MEDIA_SERVER_CFG { + pub byValid: BYTE, + pub byRes1: [BYTE; 3usize], + pub struDevIP: NET_DVR_IPADDR, + pub wDevPort: WORD, + pub byTransmitType: BYTE, + pub byRes2: [BYTE; 69usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STREAM_MEDIA_SERVER_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 220usize, + concat!("Size of: ", stringify!(tagNET_DVR_STREAM_MEDIA_SERVER_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_STREAM_MEDIA_SERVER_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MEDIA_SERVER_CFG), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MEDIA_SERVER_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MEDIA_SERVER_CFG), + "::", + stringify!(struDevIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevPort) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MEDIA_SERVER_CFG), + "::", + stringify!(wDevPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransmitType) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MEDIA_SERVER_CFG), + "::", + stringify!(byTransmitType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 151usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MEDIA_SERVER_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_STREAM_MEDIA_SERVER_CFG = tagNET_DVR_STREAM_MEDIA_SERVER_CFG; +pub type LPNET_DVR_STREAM_MEDIA_SERVER_CFG = *mut tagNET_DVR_STREAM_MEDIA_SERVER_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEV_CHAN_INFO { + pub struIP: NET_DVR_IPADDR, + pub wDVRPort: WORD, + pub byChannel: BYTE, + pub byTransProtocol: BYTE, + pub byTransMode: BYTE, + pub byFactoryType: BYTE, + pub byDeviceType: BYTE, + pub byDispChan: BYTE, + pub bySubDispChan: BYTE, + pub byResolution: BYTE, + pub byRes: [BYTE; 2usize], + pub byDomain: [BYTE; 64usize], + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEV_CHAN_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 268usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEV_CHAN_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEV_CHAN_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDVRPort) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO), + "::", + stringify!(wDVRPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 146usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransProtocol) as usize - ptr as usize }, + 147usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO), + "::", + stringify!(byTransProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransMode) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO), + "::", + stringify!(byTransMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFactoryType) as usize - ptr as usize }, + 149usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO), + "::", + stringify!(byFactoryType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceType) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO), + "::", + stringify!(byDeviceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispChan) as usize - ptr as usize }, + 151usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO), + "::", + stringify!(byDispChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubDispChan) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO), + "::", + stringify!(bySubDispChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byResolution) as usize - ptr as usize }, + 153usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO), + "::", + stringify!(byResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 154usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDomain) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO), + "::", + stringify!(byDomain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 252usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO), + "::", + stringify!(sPassword) + ) + ); +} +pub type NET_DVR_DEV_CHAN_INFO = tagNET_DVR_DEV_CHAN_INFO; +pub type LPNET_DVR_DEV_CHAN_INFO = *mut tagNET_DVR_DEV_CHAN_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PU_STREAM_CFG { + pub dwSize: DWORD, + pub struStreamMediaSvrCfg: NET_DVR_STREAM_MEDIA_SERVER_CFG, + pub struDevChanInfo: NET_DVR_DEV_CHAN_INFO, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PU_STREAM_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 492usize, + concat!("Size of: ", stringify!(tagNET_DVR_PU_STREAM_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PU_STREAM_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamMediaSvrCfg) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_CFG), + "::", + stringify!(struStreamMediaSvrCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevChanInfo) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_CFG), + "::", + stringify!(struDevChanInfo) + ) + ); +} +pub type NET_DVR_PU_STREAM_CFG = tagNET_DVR_PU_STREAM_CFG; +pub type LPNET_DVR_PU_STREAM_CFG = *mut tagNET_DVR_PU_STREAM_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DDNS_STREAM_CFG { + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub struStreamServer: NET_DVR_IPADDR, + pub wStreamServerPort: WORD, + pub byStreamServerTransmitType: BYTE, + pub byRes2: BYTE, + pub struIPServer: NET_DVR_IPADDR, + pub wIPServerPort: WORD, + pub byRes3: [BYTE; 2usize], + pub sDVRName: [BYTE; 32usize], + pub wDVRNameLen: WORD, + pub wDVRSerialLen: WORD, + pub sDVRSerialNumber: [BYTE; 48usize], + pub sUserName: [BYTE; 32usize], + pub sPassWord: [BYTE; 16usize], + pub wDVRPort: WORD, + pub byRes4: [BYTE; 2usize], + pub byChannel: BYTE, + pub byTransProtocol: BYTE, + pub byTransMode: BYTE, + pub byFactoryType: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DDNS_STREAM_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 440usize, + concat!("Size of: ", stringify!(tagNET_DVR_DDNS_STREAM_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DDNS_STREAM_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DDNS_STREAM_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DDNS_STREAM_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamServer) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DDNS_STREAM_CFG), + "::", + stringify!(struStreamServer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStreamServerPort) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DDNS_STREAM_CFG), + "::", + stringify!(wStreamServerPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamServerTransmitType) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DDNS_STREAM_CFG), + "::", + stringify!(byStreamServerTransmitType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 151usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DDNS_STREAM_CFG), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPServer) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DDNS_STREAM_CFG), + "::", + stringify!(struIPServer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wIPServerPort) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DDNS_STREAM_CFG), + "::", + stringify!(wIPServerPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 298usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DDNS_STREAM_CFG), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDVRName) as usize - ptr as usize }, + 300usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DDNS_STREAM_CFG), + "::", + stringify!(sDVRName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDVRNameLen) as usize - ptr as usize }, + 332usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DDNS_STREAM_CFG), + "::", + stringify!(wDVRNameLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDVRSerialLen) as usize - ptr as usize }, + 334usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DDNS_STREAM_CFG), + "::", + stringify!(wDVRSerialLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDVRSerialNumber) as usize - ptr as usize }, + 336usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DDNS_STREAM_CFG), + "::", + stringify!(sDVRSerialNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 384usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DDNS_STREAM_CFG), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassWord) as usize - ptr as usize }, + 416usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DDNS_STREAM_CFG), + "::", + stringify!(sPassWord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDVRPort) as usize - ptr as usize }, + 432usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DDNS_STREAM_CFG), + "::", + stringify!(wDVRPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes4) as usize - ptr as usize }, + 434usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DDNS_STREAM_CFG), + "::", + stringify!(byRes4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 436usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DDNS_STREAM_CFG), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransProtocol) as usize - ptr as usize }, + 437usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DDNS_STREAM_CFG), + "::", + stringify!(byTransProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransMode) as usize - ptr as usize }, + 438usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DDNS_STREAM_CFG), + "::", + stringify!(byTransMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFactoryType) as usize - ptr as usize }, + 439usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DDNS_STREAM_CFG), + "::", + stringify!(byFactoryType) + ) + ); +} +pub type NET_DVR_DDNS_STREAM_CFG = tagNET_DVR_DDNS_STREAM_CFG; +pub type LPNET_DVR_DDNS_STREAM_CFG = *mut tagNET_DVR_DDNS_STREAM_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PU_STREAM_URL { + pub byEnable: BYTE, + pub strURL: [BYTE; 240usize], + pub byTransPortocol: BYTE, + pub wIPID: WORD, + pub byChannel: BYTE, + pub byRes: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PU_STREAM_URL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 252usize, + concat!("Size of: ", stringify!(tagNET_DVR_PU_STREAM_URL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PU_STREAM_URL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strURL) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL), + "::", + stringify!(strURL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransPortocol) as usize - ptr as usize }, + 241usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL), + "::", + stringify!(byTransPortocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wIPID) as usize - ptr as usize }, + 242usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL), + "::", + stringify!(wIPID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 244usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 245usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PU_STREAM_URL = tagNET_DVR_PU_STREAM_URL; +pub type LPNET_DVR_PU_STREAM_URL = *mut tagNET_DVR_PU_STREAM_URL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HKDDNS_STREAM { + pub byEnable: BYTE, + pub byRes: [BYTE; 3usize], + pub byDDNSDomain: [BYTE; 64usize], + pub wPort: WORD, + pub wAliasLen: WORD, + pub byAlias: [BYTE; 32usize], + pub wDVRSerialLen: WORD, + pub byRes1: [BYTE; 2usize], + pub byDVRSerialNumber: [BYTE; 48usize], + pub byUserName: [BYTE; 32usize], + pub byPassWord: [BYTE; 16usize], + pub byChannel: BYTE, + pub byRes2: [BYTE; 11usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HKDDNS_STREAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 216usize, + concat!("Size of: ", stringify!(tagNET_DVR_HKDDNS_STREAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HKDDNS_STREAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HKDDNS_STREAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HKDDNS_STREAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDDNSDomain) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HKDDNS_STREAM), + "::", + stringify!(byDDNSDomain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HKDDNS_STREAM), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAliasLen) as usize - ptr as usize }, + 70usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HKDDNS_STREAM), + "::", + stringify!(wAliasLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlias) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HKDDNS_STREAM), + "::", + stringify!(byAlias) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDVRSerialLen) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HKDDNS_STREAM), + "::", + stringify!(wDVRSerialLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 106usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HKDDNS_STREAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDVRSerialNumber) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HKDDNS_STREAM), + "::", + stringify!(byDVRSerialNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUserName) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HKDDNS_STREAM), + "::", + stringify!(byUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPassWord) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HKDDNS_STREAM), + "::", + stringify!(byPassWord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HKDDNS_STREAM), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 205usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HKDDNS_STREAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_HKDDNS_STREAM = tagNET_DVR_HKDDNS_STREAM; +pub type LPNET_DVR_HKDDNS_STREAM = *mut tagNET_DVR_HKDDNS_STREAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IPCHANINFO_V40 { + pub byEnable: BYTE, + pub byRes1: BYTE, + pub wIPID: WORD, + pub dwChannel: DWORD, + pub byTransProtocol: BYTE, + pub byTransMode: BYTE, + pub byFactoryType: BYTE, + pub byRes: BYTE, + pub strURL: [BYTE; 240usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPCHANINFO_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 252usize, + concat!("Size of: ", stringify!(tagNET_DVR_IPCHANINFO_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IPCHANINFO_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPCHANINFO_V40), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPCHANINFO_V40), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wIPID) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPCHANINFO_V40), + "::", + stringify!(wIPID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPCHANINFO_V40), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransProtocol) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPCHANINFO_V40), + "::", + stringify!(byTransProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransMode) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPCHANINFO_V40), + "::", + stringify!(byTransMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFactoryType) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPCHANINFO_V40), + "::", + stringify!(byFactoryType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPCHANINFO_V40), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strURL) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPCHANINFO_V40), + "::", + stringify!(strURL) + ) + ); +} +pub type NET_DVR_IPCHANINFO_V40 = tagNET_DVR_IPCHANINFO_V40; +pub type LPNET_DVR_IPCHANINFO_V40 = *mut tagNET_DVR_IPCHANINFO_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_STREAM_INFO { + pub dwSize: DWORD, + pub byID: [BYTE; 32usize], + pub dwChannel: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STREAM_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_STREAM_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_STREAM_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_INFO), + "::", + stringify!(byID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_INFO), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_STREAM_INFO = tagNET_DVR_STREAM_INFO; +pub type LPNET_DVR_STREAM_INFO = *mut tagNET_DVR_STREAM_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RTSP_PROTOCAL_CFG { + pub byEnable: BYTE, + pub byLocalBackUp: BYTE, + pub byRes: [BYTE; 2usize], + pub strURL: [BYTE; 256usize], + pub dwProtocalType: DWORD, + pub sUserName: [BYTE; 32usize], + pub sPassWord: [BYTE; 16usize], + pub byAddress: [BYTE; 64usize], + pub wPort: WORD, + pub byRes1: [BYTE; 122usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RTSP_PROTOCAL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 500usize, + concat!("Size of: ", stringify!(tagNET_DVR_RTSP_PROTOCAL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RTSP_PROTOCAL_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RTSP_PROTOCAL_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalBackUp) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RTSP_PROTOCAL_CFG), + "::", + stringify!(byLocalBackUp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RTSP_PROTOCAL_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strURL) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RTSP_PROTOCAL_CFG), + "::", + stringify!(strURL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwProtocalType) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RTSP_PROTOCAL_CFG), + "::", + stringify!(dwProtocalType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RTSP_PROTOCAL_CFG), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassWord) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RTSP_PROTOCAL_CFG), + "::", + stringify!(sPassWord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddress) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RTSP_PROTOCAL_CFG), + "::", + stringify!(byAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 376usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RTSP_PROTOCAL_CFG), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 378usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RTSP_PROTOCAL_CFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_RTSP_PROTOCAL_CFG = tagNET_DVR_RTSP_PROTOCAL_CFG; +pub type LPNET_DVR_RTSP_PROTOCAL_CFG = *mut tagNET_DVR_RTSP_PROTOCAL_CFG; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_GET_STREAM_UNION { + pub struChanInfo: NET_DVR_IPCHANINFO, + pub struIPServerStream: NET_DVR_IPSERVER_STREAM, + pub struPUStream: NET_DVR_PU_STREAM_CFG, + pub struDDNSStream: NET_DVR_DDNS_STREAM_CFG, + pub struStreamUrl: NET_DVR_PU_STREAM_URL, + pub struHkDDNSStream: NET_DVR_HKDDNS_STREAM, + pub struIPChan: NET_DVR_IPCHANINFO_V40, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GET_STREAM_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 492usize, + concat!("Size of: ", stringify!(tagNET_DVR_GET_STREAM_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GET_STREAM_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struChanInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GET_STREAM_UNION), + "::", + stringify!(struChanInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPServerStream) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GET_STREAM_UNION), + "::", + stringify!(struIPServerStream) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPUStream) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GET_STREAM_UNION), + "::", + stringify!(struPUStream) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDDNSStream) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GET_STREAM_UNION), + "::", + stringify!(struDDNSStream) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamUrl) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GET_STREAM_UNION), + "::", + stringify!(struStreamUrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHkDDNSStream) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GET_STREAM_UNION), + "::", + stringify!(struHkDDNSStream) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPChan) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GET_STREAM_UNION), + "::", + stringify!(struIPChan) + ) + ); +} +pub type NET_DVR_GET_STREAM_UNION = tagNET_DVR_GET_STREAM_UNION; +pub type LPNET_DVR_GET_STREAM_UNION = *mut tagNET_DVR_GET_STREAM_UNION; +pub const GET_STREAM_TYPE_NET_SDK_IP_DEVICE: GET_STREAM_TYPE = 0; +pub const GET_STREAM_TYPE_NET_SDK_STREAM_MEDIA: GET_STREAM_TYPE = 1; +pub const GET_STREAM_TYPE_NET_SDK_IPSERVER: GET_STREAM_TYPE = 2; +pub const GET_STREAM_TYPE_NET_SDK_DDNS_STREAM_CFG: GET_STREAM_TYPE = 3; +pub const GET_STREAM_TYPE_NET_SDK_STREAM_MEDIA_URL: GET_STREAM_TYPE = 4; +pub const GET_STREAM_TYPE_NET_SDK_HKDDNS: GET_STREAM_TYPE = 5; +pub const GET_STREAM_TYPE_NET_SDK_IP_DEVICE_ADV: GET_STREAM_TYPE = 6; +pub const GET_STREAM_TYPE_NET_SDK_IP_DEVICE_V40: GET_STREAM_TYPE = 7; +pub const GET_STREAM_TYPE_NET_SDK_RTSP: GET_STREAM_TYPE = 8; +pub type GET_STREAM_TYPE = ::std::os::raw::c_uint; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_STREAM_MODE { + pub byGetStreamType: BYTE, + pub byRes: [BYTE; 3usize], + pub uGetStream: NET_DVR_GET_STREAM_UNION, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STREAM_MODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 496usize, + concat!("Size of: ", stringify!(tagNET_DVR_STREAM_MODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_STREAM_MODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGetStreamType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MODE), + "::", + stringify!(byGetStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MODE), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uGetStream) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MODE), + "::", + stringify!(uGetStream) + ) + ); +} +pub type NET_DVR_STREAM_MODE = tagNET_DVR_STREAM_MODE; +pub type LPNET_DVR_STREAM_MODE = *mut tagNET_DVR_STREAM_MODE; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_IPPARACFG_V40 { + pub dwSize: DWORD, + pub dwGroupNum: DWORD, + pub dwAChanNum: DWORD, + pub dwDChanNum: DWORD, + pub dwStartDChan: DWORD, + pub byAnalogChanEnable: [BYTE; 64usize], + pub struIPDevInfo: [NET_DVR_IPDEVINFO_V31; 64usize], + pub struStreamMode: [NET_DVR_STREAM_MODE; 64usize], + pub byRes2: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPPARACFG_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 50792usize, + concat!("Size of: ", stringify!(tagNET_DVR_IPPARACFG_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IPPARACFG_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPPARACFG_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGroupNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPPARACFG_V40), + "::", + stringify!(dwGroupNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAChanNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPPARACFG_V40), + "::", + stringify!(dwAChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDChanNum) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPPARACFG_V40), + "::", + stringify!(dwDChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStartDChan) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPPARACFG_V40), + "::", + stringify!(dwStartDChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAnalogChanEnable) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPPARACFG_V40), + "::", + stringify!(byAnalogChanEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPDevInfo) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPPARACFG_V40), + "::", + stringify!(struIPDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamMode) as usize - ptr as usize }, + 19028usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPPARACFG_V40), + "::", + stringify!(struStreamMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 50772usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPPARACFG_V40), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_IPPARACFG_V40 = tagNET_DVR_IPPARACFG_V40; +pub type LPNET_DVR_IPPARACFG_V40 = *mut tagNET_DVR_IPPARACFG_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMINFO_DEV { + pub dwAlarmType: DWORD, + pub struTime: NET_DVR_TIME, + pub byRes: [BYTE; 32usize], + pub dwNumber: DWORD, + pub pNO: *mut WORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMINFO_DEV() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMINFO_DEV)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMINFO_DEV)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_DEV), + "::", + stringify!(dwAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_DEV), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_DEV), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNumber) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_DEV), + "::", + stringify!(dwNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pNO) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_DEV), + "::", + stringify!(pNO) + ) + ); +} +pub type NET_DVR_ALARMINFO_DEV = tagNET_DVR_ALARMINFO_DEV; +pub type LPNET_DVR_ALARMINFO_DEV = *mut tagNET_DVR_ALARMINFO_DEV; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_IPALARMOUTINFO { + pub byIPID: BYTE, + pub byAlarmOut: BYTE, + pub byRes: [BYTE; 18usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_IPALARMOUTINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(NET_DVR_IPALARMOUTINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_IPALARMOUTINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIPID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPALARMOUTINFO), + "::", + stringify!(byIPID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOut) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPALARMOUTINFO), + "::", + stringify!(byAlarmOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPALARMOUTINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_IPALARMOUTINFO = *mut NET_DVR_IPALARMOUTINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_IPALARMOUTCFG { + pub dwSize: DWORD, + pub struIPAlarmOutInfo: [NET_DVR_IPALARMOUTINFO; 64usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_IPALARMOUTCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1284usize, + concat!("Size of: ", stringify!(NET_DVR_IPALARMOUTCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_IPALARMOUTCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPALARMOUTCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPAlarmOutInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPALARMOUTCFG), + "::", + stringify!(struIPAlarmOutInfo) + ) + ); +} +pub type LPNET_DVR_IPALARMOUTCFG = *mut NET_DVR_IPALARMOUTCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IPALARMOUTINFO_V40 { + pub dwIPID: DWORD, + pub dwAlarmOut: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPALARMOUTINFO_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_IPALARMOUTINFO_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IPALARMOUTINFO_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIPID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMOUTINFO_V40), + "::", + stringify!(dwIPID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmOut) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMOUTINFO_V40), + "::", + stringify!(dwAlarmOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMOUTINFO_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_IPALARMOUTINFO_V40 = tagNET_DVR_IPALARMOUTINFO_V40; +pub type LPNET_DVR_IPALARMOUTINFO_V40 = *mut tagNET_DVR_IPALARMOUTINFO_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IPALARMOUTCFG_V40 { + pub dwSize: DWORD, + pub dwCurIPAlarmOutNum: DWORD, + pub struIPAlarmOutInfo: [NET_DVR_IPALARMOUTINFO_V40; 4096usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPALARMOUTCFG_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 164104usize, + concat!("Size of: ", stringify!(tagNET_DVR_IPALARMOUTCFG_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IPALARMOUTCFG_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMOUTCFG_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCurIPAlarmOutNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMOUTCFG_V40), + "::", + stringify!(dwCurIPAlarmOutNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPAlarmOutInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMOUTCFG_V40), + "::", + stringify!(struIPAlarmOutInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 163848usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMOUTCFG_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_IPALARMOUTCFG_V40 = tagNET_DVR_IPALARMOUTCFG_V40; +pub type LPNET_DVR_IPALARMOUTCFG_V40 = *mut tagNET_DVR_IPALARMOUTCFG_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_IPALARMININFO { + pub byIPID: BYTE, + pub byAlarmIn: BYTE, + pub byRes: [BYTE; 18usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_IPALARMININFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(NET_DVR_IPALARMININFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_IPALARMININFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIPID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPALARMININFO), + "::", + stringify!(byIPID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmIn) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPALARMININFO), + "::", + stringify!(byAlarmIn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPALARMININFO), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_IPALARMININFO = *mut NET_DVR_IPALARMININFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_IPALARMINCFG { + pub dwSize: DWORD, + pub struIPAlarmInInfo: [NET_DVR_IPALARMININFO; 128usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_IPALARMINCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2564usize, + concat!("Size of: ", stringify!(NET_DVR_IPALARMINCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_IPALARMINCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPALARMINCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPAlarmInInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IPALARMINCFG), + "::", + stringify!(struIPAlarmInInfo) + ) + ); +} +pub type LPNET_DVR_IPALARMINCFG = *mut NET_DVR_IPALARMINCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IPALARMININFO_V40 { + pub dwIPID: DWORD, + pub dwAlarmIn: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPALARMININFO_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_IPALARMININFO_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IPALARMININFO_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIPID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMININFO_V40), + "::", + stringify!(dwIPID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmIn) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMININFO_V40), + "::", + stringify!(dwAlarmIn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMININFO_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_IPALARMININFO_V40 = tagNET_DVR_IPALARMININFO_V40; +pub type LPNET_DVR_IPALARMININFO_V40 = *mut tagNET_DVR_IPALARMININFO_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IPALARMINCFG_V40 { + pub dwSize: DWORD, + pub dwCurIPAlarmInNum: DWORD, + pub struIPAlarmInInfo: [NET_DVR_IPALARMININFO_V40; 4096usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPALARMINCFG_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 164104usize, + concat!("Size of: ", stringify!(tagNET_DVR_IPALARMINCFG_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IPALARMINCFG_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMINCFG_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCurIPAlarmInNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMINCFG_V40), + "::", + stringify!(dwCurIPAlarmInNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPAlarmInInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMINCFG_V40), + "::", + stringify!(struIPAlarmInInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 163848usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMINCFG_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_IPALARMINCFG_V40 = tagNET_DVR_IPALARMINCFG_V40; +pub type LPNET_DVR_IPALARMINCFG_V40 = *mut tagNET_DVR_IPALARMINCFG_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IPALARMINFO { + pub struIPDevInfo: [NET_DVR_IPDEVINFO; 32usize], + pub byAnalogChanEnable: [BYTE; 32usize], + pub struIPChanInfo: [NET_DVR_IPCHANINFO; 32usize], + pub struIPAlarmInInfo: [NET_DVR_IPALARMININFO; 128usize], + pub struIPAlarmOutInfo: [NET_DVR_IPALARMOUTINFO; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPALARMINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12448usize, + concat!("Size of: ", stringify!(tagNET_DVR_IPALARMINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IPALARMINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPDevInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMINFO), + "::", + stringify!(struIPDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAnalogChanEnable) as usize - ptr as usize }, + 7424usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMINFO), + "::", + stringify!(byAnalogChanEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPChanInfo) as usize - ptr as usize }, + 7456usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMINFO), + "::", + stringify!(struIPChanInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPAlarmInInfo) as usize - ptr as usize }, + 8608usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMINFO), + "::", + stringify!(struIPAlarmInInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPAlarmOutInfo) as usize - ptr as usize }, + 11168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMINFO), + "::", + stringify!(struIPAlarmOutInfo) + ) + ); +} +pub type NET_DVR_IPALARMINFO = tagNET_DVR_IPALARMINFO; +pub type LPNET_DVR_IPALARMINFO = *mut tagNET_DVR_IPALARMINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IPALARMINFO_V31 { + pub struIPDevInfo: [NET_DVR_IPDEVINFO_V31; 32usize], + pub byAnalogChanEnable: [BYTE; 32usize], + pub struIPChanInfo: [NET_DVR_IPCHANINFO; 32usize], + pub struIPAlarmInInfo: [NET_DVR_IPALARMININFO; 128usize], + pub struIPAlarmOutInfo: [NET_DVR_IPALARMOUTINFO; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPALARMINFO_V31() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 14496usize, + concat!("Size of: ", stringify!(tagNET_DVR_IPALARMINFO_V31)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IPALARMINFO_V31)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPDevInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMINFO_V31), + "::", + stringify!(struIPDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAnalogChanEnable) as usize - ptr as usize }, + 9472usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMINFO_V31), + "::", + stringify!(byAnalogChanEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPChanInfo) as usize - ptr as usize }, + 9504usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMINFO_V31), + "::", + stringify!(struIPChanInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPAlarmInInfo) as usize - ptr as usize }, + 10656usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMINFO_V31), + "::", + stringify!(struIPAlarmInInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPAlarmOutInfo) as usize - ptr as usize }, + 13216usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMINFO_V31), + "::", + stringify!(struIPAlarmOutInfo) + ) + ); +} +pub type NET_DVR_IPALARMINFO_V31 = tagNET_DVR_IPALARMINFO_V31; +pub type LPNET_DVR_IPALARMINFO_V31 = *mut tagNET_DVR_IPALARMINFO_V31; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IPALARMINFO_V40 { + pub struIPDevInfo: [NET_DVR_IPDEVINFO_V31; 64usize], + pub byAnalogChanEnable: [BYTE; 64usize], + pub struIPChanInfo: [NET_DVR_IPCHANINFO; 64usize], + pub struIPAlarmInInfo: [NET_DVR_IPALARMININFO; 128usize], + pub struIPAlarmOutInfo: [NET_DVR_IPALARMOUTINFO; 64usize], + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPALARMINFO_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 25172usize, + concat!("Size of: ", stringify!(tagNET_DVR_IPALARMINFO_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IPALARMINFO_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPDevInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMINFO_V40), + "::", + stringify!(struIPDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAnalogChanEnable) as usize - ptr as usize }, + 18944usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMINFO_V40), + "::", + stringify!(byAnalogChanEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPChanInfo) as usize - ptr as usize }, + 19008usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMINFO_V40), + "::", + stringify!(struIPChanInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPAlarmInInfo) as usize - ptr as usize }, + 21312usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMINFO_V40), + "::", + stringify!(struIPAlarmInInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPAlarmOutInfo) as usize - ptr as usize }, + 23872usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMINFO_V40), + "::", + stringify!(struIPAlarmOutInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 25152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPALARMINFO_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_IPALARMINFO_V40 = tagNET_DVR_IPALARMINFO_V40; +pub type LPNET_DVR_IPALARMINFO_V40 = *mut tagNET_DVR_IPALARMINFO_V40; +pub const _HD_STAT__HD_STAT_OK: _HD_STAT_ = 0; +pub const _HD_STAT__HD_STAT_UNFORMATTED: _HD_STAT_ = 1; +pub const _HD_STAT__HD_STAT_ERROR: _HD_STAT_ = 2; +pub const _HD_STAT__HD_STAT_SMART_FAILED: _HD_STAT_ = 3; +pub const _HD_STAT__HD_STAT_MISMATCH: _HD_STAT_ = 4; +pub const _HD_STAT__HD_STAT_IDLE: _HD_STAT_ = 5; +pub const _HD_STAT__NET_HD_STAT_OFFLINE: _HD_STAT_ = 6; +pub const _HD_STAT__HD_RIADVD_EXPAND: _HD_STAT_ = 7; +pub const _HD_STAT__HD_STAT_REPARING: _HD_STAT_ = 10; +pub const _HD_STAT__HD_STAT_FORMATING: _HD_STAT_ = 11; +pub type _HD_STAT_ = ::std::os::raw::c_uint; +pub use self::_HD_STAT_ as HD_STAT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_SINGLE_HD { + pub dwHDNo: DWORD, + pub dwCapacity: DWORD, + pub dwFreeSpace: DWORD, + pub dwHdStatus: DWORD, + pub byHDAttr: BYTE, + pub byHDType: BYTE, + pub byDiskDriver: BYTE, + pub byRes1: BYTE, + pub dwHdGroup: DWORD, + pub byRecycling: BYTE, + pub bySupportFormatType: BYTE, + pub byFormatType: BYTE, + pub byRes2: BYTE, + pub dwStorageType: DWORD, + pub dwPictureCapacity: DWORD, + pub dwFreePictureSpace: DWORD, + pub byRes3: [BYTE; 104usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_SINGLE_HD() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!("Size of: ", stringify!(NET_DVR_SINGLE_HD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_SINGLE_HD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHDNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD), + "::", + stringify!(dwHDNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCapacity) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD), + "::", + stringify!(dwCapacity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFreeSpace) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD), + "::", + stringify!(dwFreeSpace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHdStatus) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD), + "::", + stringify!(dwHdStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHDAttr) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD), + "::", + stringify!(byHDAttr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHDType) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD), + "::", + stringify!(byHDType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDiskDriver) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD), + "::", + stringify!(byDiskDriver) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 19usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHdGroup) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD), + "::", + stringify!(dwHdGroup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecycling) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD), + "::", + stringify!(byRecycling) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportFormatType) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD), + "::", + stringify!(bySupportFormatType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFormatType) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD), + "::", + stringify!(byFormatType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 27usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStorageType) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD), + "::", + stringify!(dwStorageType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPictureCapacity) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD), + "::", + stringify!(dwPictureCapacity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFreePictureSpace) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD), + "::", + stringify!(dwFreePictureSpace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD), + "::", + stringify!(byRes3) + ) + ); +} +pub type LPNET_DVR_SINGLE_HD = *mut NET_DVR_SINGLE_HD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_HDCFG { + pub dwSize: DWORD, + pub dwHDCount: DWORD, + pub struHDInfo: [NET_DVR_SINGLE_HD; 33usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_HDCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4760usize, + concat!("Size of: ", stringify!(NET_DVR_HDCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_HDCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HDCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHDCount) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HDCFG), + "::", + stringify!(dwHDCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHDInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HDCFG), + "::", + stringify!(struHDInfo) + ) + ); +} +pub type LPNET_DVR_HDCFG = *mut NET_DVR_HDCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_SINGLE_HD_V50 { + pub dwHDNo: DWORD, + pub dwCapacity: DWORD, + pub dwFreeSpace: DWORD, + pub dwHdStatus: DWORD, + pub byHDAttr: BYTE, + pub byHDType: BYTE, + pub byDiskDriver: BYTE, + pub byGenusGruop: BYTE, + pub dwHdGroup: DWORD, + pub byRecycling: BYTE, + pub bySupportFormatType: BYTE, + pub byFormatType: BYTE, + pub byRes2: BYTE, + pub dwStorageType: DWORD, + pub dwPictureCapacity: DWORD, + pub dwFreePictureSpace: DWORD, + pub byDiskLocation: [BYTE; 16usize], + pub bySupplierName: [BYTE; 32usize], + pub byDiskModel: [BYTE; 64usize], + pub szHDLocateIP: [::std::os::raw::c_char; 48usize], + pub byRes3: [BYTE; 80usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_SINGLE_HD_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 280usize, + concat!("Size of: ", stringify!(NET_DVR_SINGLE_HD_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_SINGLE_HD_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHDNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD_V50), + "::", + stringify!(dwHDNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCapacity) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD_V50), + "::", + stringify!(dwCapacity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFreeSpace) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD_V50), + "::", + stringify!(dwFreeSpace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHdStatus) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD_V50), + "::", + stringify!(dwHdStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHDAttr) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD_V50), + "::", + stringify!(byHDAttr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHDType) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD_V50), + "::", + stringify!(byHDType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDiskDriver) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD_V50), + "::", + stringify!(byDiskDriver) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGenusGruop) as usize - ptr as usize }, + 19usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD_V50), + "::", + stringify!(byGenusGruop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHdGroup) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD_V50), + "::", + stringify!(dwHdGroup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecycling) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD_V50), + "::", + stringify!(byRecycling) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportFormatType) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD_V50), + "::", + stringify!(bySupportFormatType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFormatType) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD_V50), + "::", + stringify!(byFormatType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 27usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD_V50), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStorageType) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD_V50), + "::", + stringify!(dwStorageType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPictureCapacity) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD_V50), + "::", + stringify!(dwPictureCapacity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFreePictureSpace) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD_V50), + "::", + stringify!(dwFreePictureSpace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDiskLocation) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD_V50), + "::", + stringify!(byDiskLocation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupplierName) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD_V50), + "::", + stringify!(bySupplierName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDiskModel) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD_V50), + "::", + stringify!(byDiskModel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szHDLocateIP) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD_V50), + "::", + stringify!(szHDLocateIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HD_V50), + "::", + stringify!(byRes3) + ) + ); +} +pub type LPNET_DVR_SINGLE_HD_V50 = *mut NET_DVR_SINGLE_HD_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_HDCFG_V50 { + pub dwSize: DWORD, + pub dwHDCount: DWORD, + pub struHDInfoV50: [NET_DVR_SINGLE_HD_V50; 33usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_HDCFG_V50() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 9376usize, + concat!("Size of: ", stringify!(NET_DVR_HDCFG_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_HDCFG_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HDCFG_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHDCount) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HDCFG_V50), + "::", + stringify!(dwHDCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHDInfoV50) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HDCFG_V50), + "::", + stringify!(struHDInfoV50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9248usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HDCFG_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_HDCFG_V50 = *mut NET_DVR_HDCFG_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HARD_DISK_SINGLE_VOLUME_INFO { + pub dwSize: DWORD, + pub byHDVolumeNo: BYTE, + pub byType: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwCapacity: DWORD, + pub dwFreeSpace: DWORD, + pub byHDVolumeName: [BYTE; 36usize], + pub byLoopCover: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HARD_DISK_SINGLE_VOLUME_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 116usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_HARD_DISK_SINGLE_VOLUME_INFO) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_HARD_DISK_SINGLE_VOLUME_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HARD_DISK_SINGLE_VOLUME_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHDVolumeNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HARD_DISK_SINGLE_VOLUME_INFO), + "::", + stringify!(byHDVolumeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HARD_DISK_SINGLE_VOLUME_INFO), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HARD_DISK_SINGLE_VOLUME_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCapacity) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HARD_DISK_SINGLE_VOLUME_INFO), + "::", + stringify!(dwCapacity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFreeSpace) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HARD_DISK_SINGLE_VOLUME_INFO), + "::", + stringify!(dwFreeSpace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHDVolumeName) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HARD_DISK_SINGLE_VOLUME_INFO), + "::", + stringify!(byHDVolumeName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLoopCover) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HARD_DISK_SINGLE_VOLUME_INFO), + "::", + stringify!(byLoopCover) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 53usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HARD_DISK_SINGLE_VOLUME_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_HARD_DISK_SINGLE_VOLUME_INFO = tagNET_DVR_HARD_DISK_SINGLE_VOLUME_INFO; +pub type LPNET_DVR_HARD_DISK_SINGLE_VOLUME_INFO = *mut tagNET_DVR_HARD_DISK_SINGLE_VOLUME_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HARD_DISK_VOLUME_INFO { + pub dwSize: DWORD, + pub dwHDVolumeCount: DWORD, + pub struSingleVolumeInfo: [NET_DVR_HARD_DISK_SINGLE_VOLUME_INFO; 33usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HARD_DISK_VOLUME_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 3964usize, + concat!("Size of: ", stringify!(tagNET_DVR_HARD_DISK_VOLUME_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_HARD_DISK_VOLUME_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HARD_DISK_VOLUME_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHDVolumeCount) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HARD_DISK_VOLUME_INFO), + "::", + stringify!(dwHDVolumeCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSingleVolumeInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HARD_DISK_VOLUME_INFO), + "::", + stringify!(struSingleVolumeInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3836usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HARD_DISK_VOLUME_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_HARD_DISK_VOLUME_INFO = tagNET_DVR_HARD_DISK_VOLUME_INFO; +pub type LPNET_DVR_HARD_DISK_VOLUME_INFO = *mut tagNET_DVR_HARD_DISK_VOLUME_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SINGLE_HDGROUP_V40 { + pub dwHDGroupNo: DWORD, + pub dwRelRecordChan: [DWORD; 512usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SINGLE_HDGROUP_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2116usize, + concat!("Size of: ", stringify!(tagNET_DVR_SINGLE_HDGROUP_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SINGLE_HDGROUP_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHDGroupNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_HDGROUP_V40), + "::", + stringify!(dwHDGroupNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelRecordChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_HDGROUP_V40), + "::", + stringify!(dwRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2052usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_HDGROUP_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SINGLE_HDGROUP_V40 = tagNET_DVR_SINGLE_HDGROUP_V40; +pub type LPNET_DVR_SINGLE_HDGROUP_V40 = *mut tagNET_DVR_SINGLE_HDGROUP_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HDGROUP_CFG_V40 { + pub dwSize: DWORD, + pub dwMaxHDGroupNum: DWORD, + pub dwCurHDGroupNum: DWORD, + pub struHDGroupAttr: [NET_DVR_SINGLE_HDGROUP_V40; 16usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HDGROUP_CFG_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 33996usize, + concat!("Size of: ", stringify!(tagNET_DVR_HDGROUP_CFG_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HDGROUP_CFG_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HDGROUP_CFG_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxHDGroupNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HDGROUP_CFG_V40), + "::", + stringify!(dwMaxHDGroupNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCurHDGroupNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HDGROUP_CFG_V40), + "::", + stringify!(dwCurHDGroupNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHDGroupAttr) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HDGROUP_CFG_V40), + "::", + stringify!(struHDGroupAttr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 33868usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HDGROUP_CFG_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_HDGROUP_CFG_V40 = tagNET_DVR_HDGROUP_CFG_V40; +pub type LPNET_DVR_HDGROUP_CFG_V40 = *mut tagNET_DVR_HDGROUP_CFG_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_SINGLE_HDGROUP { + pub dwHDGroupNo: DWORD, + pub byHDGroupChans: [BYTE; 64usize], + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_SINGLE_HDGROUP() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(NET_DVR_SINGLE_HDGROUP)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_SINGLE_HDGROUP)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHDGroupNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HDGROUP), + "::", + stringify!(dwHDGroupNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHDGroupChans) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HDGROUP), + "::", + stringify!(byHDGroupChans) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_HDGROUP), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_SINGLE_HDGROUP = *mut NET_DVR_SINGLE_HDGROUP; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_HDGROUP_CFG { + pub dwSize: DWORD, + pub dwHDGroupCount: DWORD, + pub struHDGroupAttr: [NET_DVR_SINGLE_HDGROUP; 16usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_HDGROUP_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1224usize, + concat!("Size of: ", stringify!(NET_DVR_HDGROUP_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_HDGROUP_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HDGROUP_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHDGroupCount) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HDGROUP_CFG), + "::", + stringify!(dwHDGroupCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHDGroupAttr) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HDGROUP_CFG), + "::", + stringify!(struHDGroupAttr) + ) + ); +} +pub type LPNET_DVR_HDGROUP_CFG = *mut NET_DVR_HDGROUP_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_SCALECFG { + pub dwSize: DWORD, + pub dwMajorScale: DWORD, + pub dwMinorScale: DWORD, + pub dwRes: [DWORD; 2usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_SCALECFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(NET_DVR_SCALECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_SCALECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SCALECFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMajorScale) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SCALECFG), + "::", + stringify!(dwMajorScale) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMinorScale) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SCALECFG), + "::", + stringify!(dwMinorScale) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SCALECFG), + "::", + stringify!(dwRes) + ) + ); +} +pub type LPNET_DVR_SCALECFG = *mut NET_DVR_SCALECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_ALARMOUTCFG_V30 { + pub dwSize: DWORD, + pub sAlarmOutName: [BYTE; 32usize], + pub dwAlarmOutDelay: DWORD, + pub struAlarmOutTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub byAlarmOutHandle: BYTE, + pub byNormalSatus: BYTE, + pub byRes: [BYTE; 14usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_ALARMOUTCFG_V30() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 280usize, + concat!("Size of: ", stringify!(NET_DVR_ALARMOUTCFG_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_ALARMOUTCFG_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMOUTCFG_V30), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sAlarmOutName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMOUTCFG_V30), + "::", + stringify!(sAlarmOutName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmOutDelay) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMOUTCFG_V30), + "::", + stringify!(dwAlarmOutDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmOutTime) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMOUTCFG_V30), + "::", + stringify!(struAlarmOutTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutHandle) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMOUTCFG_V30), + "::", + stringify!(byAlarmOutHandle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNormalSatus) as usize - ptr as usize }, + 265usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMOUTCFG_V30), + "::", + stringify!(byNormalSatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 266usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMOUTCFG_V30), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_ALARMOUTCFG_V30 = *mut NET_DVR_ALARMOUTCFG_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_ALARMOUTCFG { + pub dwSize: DWORD, + pub sAlarmOutName: [BYTE; 32usize], + pub dwAlarmOutDelay: DWORD, + pub struAlarmOutTime: [[NET_DVR_SCHEDTIME; 4usize]; 7usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_ALARMOUTCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 152usize, + concat!("Size of: ", stringify!(NET_DVR_ALARMOUTCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_ALARMOUTCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMOUTCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sAlarmOutName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMOUTCFG), + "::", + stringify!(sAlarmOutName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmOutDelay) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMOUTCFG), + "::", + stringify!(dwAlarmOutDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmOutTime) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMOUTCFG), + "::", + stringify!(struAlarmOutTime) + ) + ); +} +pub type LPNET_DVR_ALARMOUTCFG = *mut NET_DVR_ALARMOUTCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PREVIEWCFG_V30 { + pub dwSize: DWORD, + pub byPreviewNumber: BYTE, + pub byEnableAudio: BYTE, + pub wSwitchTime: WORD, + pub bySwitchSeq: [[BYTE; 32usize]; 8usize], + pub byRes: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_PREVIEWCFG_V30() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 288usize, + concat!("Size of: ", stringify!(NET_DVR_PREVIEWCFG_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_PREVIEWCFG_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PREVIEWCFG_V30), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPreviewNumber) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PREVIEWCFG_V30), + "::", + stringify!(byPreviewNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableAudio) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PREVIEWCFG_V30), + "::", + stringify!(byEnableAudio) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSwitchTime) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PREVIEWCFG_V30), + "::", + stringify!(wSwitchTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySwitchSeq) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PREVIEWCFG_V30), + "::", + stringify!(bySwitchSeq) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PREVIEWCFG_V30), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_PREVIEWCFG_V30 = *mut NET_DVR_PREVIEWCFG_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PREVIEWCFG { + pub dwSize: DWORD, + pub byPreviewNumber: BYTE, + pub byEnableAudio: BYTE, + pub wSwitchTime: WORD, + pub bySwitchSeq: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_PREVIEWCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(NET_DVR_PREVIEWCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_PREVIEWCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PREVIEWCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPreviewNumber) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PREVIEWCFG), + "::", + stringify!(byPreviewNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableAudio) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PREVIEWCFG), + "::", + stringify!(byEnableAudio) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSwitchTime) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PREVIEWCFG), + "::", + stringify!(wSwitchTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySwitchSeq) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PREVIEWCFG), + "::", + stringify!(bySwitchSeq) + ) + ); +} +pub type LPNET_DVR_PREVIEWCFG = *mut NET_DVR_PREVIEWCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_VGAPARA { + pub wResolution: WORD, + pub wFreq: WORD, + pub dwBrightness: DWORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_VGAPARA() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(NET_DVR_VGAPARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_VGAPARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wResolution) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VGAPARA), + "::", + stringify!(wResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFreq) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VGAPARA), + "::", + stringify!(wFreq) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBrightness) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VGAPARA), + "::", + stringify!(dwBrightness) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_MATRIXPARA_V30 { + pub wOrder: [WORD; 32usize], + pub wSwitchTime: WORD, + pub res: [BYTE; 14usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_MATRIXPARA_V30() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(NET_DVR_MATRIXPARA_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_MATRIXPARA_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wOrder) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIXPARA_V30), + "::", + stringify!(wOrder) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSwitchTime) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIXPARA_V30), + "::", + stringify!(wSwitchTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).res) as usize - ptr as usize }, + 66usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIXPARA_V30), + "::", + stringify!(res) + ) + ); +} +pub type LPNET_DVR_MATRIXPARA_V30 = *mut NET_DVR_MATRIXPARA_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_MATRIXPARA { + pub wDisplayLogo: WORD, + pub wDisplayOsd: WORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_MATRIXPARA() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(NET_DVR_MATRIXPARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_MATRIXPARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDisplayLogo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIXPARA), + "::", + stringify!(wDisplayLogo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDisplayOsd) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIXPARA), + "::", + stringify!(wDisplayOsd) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_VOOUT { + pub byVideoFormat: BYTE, + pub byMenuAlphaValue: BYTE, + pub wScreenSaveTime: WORD, + pub wVOffset: WORD, + pub wBrightness: WORD, + pub byStartMode: BYTE, + pub byEnableScaler: BYTE, +} +#[test] +fn bindgen_test_layout_NET_DVR_VOOUT() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 10usize, + concat!("Size of: ", stringify!(NET_DVR_VOOUT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_VOOUT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoFormat) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VOOUT), + "::", + stringify!(byVideoFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMenuAlphaValue) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VOOUT), + "::", + stringify!(byMenuAlphaValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wScreenSaveTime) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VOOUT), + "::", + stringify!(wScreenSaveTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wVOffset) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VOOUT), + "::", + stringify!(wVOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBrightness) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VOOUT), + "::", + stringify!(wBrightness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VOOUT), + "::", + stringify!(byStartMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableScaler) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VOOUT), + "::", + stringify!(byEnableScaler) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_VIDEOOUT_V30 { + pub dwSize: DWORD, + pub struVOOut: [NET_DVR_VOOUT; 4usize], + pub struVGAPara: [NET_DVR_VGAPARA; 4usize], + pub struMatrixPara: [NET_DVR_MATRIXPARA_V30; 16usize], + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_VIDEOOUT_V30() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1372usize, + concat!("Size of: ", stringify!(NET_DVR_VIDEOOUT_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_VIDEOOUT_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VIDEOOUT_V30), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVOOut) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VIDEOOUT_V30), + "::", + stringify!(struVOOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVGAPara) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VIDEOOUT_V30), + "::", + stringify!(struVGAPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMatrixPara) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VIDEOOUT_V30), + "::", + stringify!(struMatrixPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1356usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VIDEOOUT_V30), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_VIDEOOUT_V30 = *mut NET_DVR_VIDEOOUT_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_VIDEOOUT { + pub dwSize: DWORD, + pub struVOOut: [NET_DVR_VOOUT; 2usize], + pub struVGAPara: [NET_DVR_VGAPARA; 1usize], + pub struMatrixPara: NET_DVR_MATRIXPARA, +} +#[test] +fn bindgen_test_layout_NET_DVR_VIDEOOUT() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(NET_DVR_VIDEOOUT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_VIDEOOUT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VIDEOOUT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVOOut) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VIDEOOUT), + "::", + stringify!(struVOOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVGAPara) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VIDEOOUT), + "::", + stringify!(struVGAPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMatrixPara) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VIDEOOUT), + "::", + stringify!(struMatrixPara) + ) + ); +} +pub type LPNET_DVR_VIDEOOUT = *mut NET_DVR_VIDEOOUT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_USER_INFO_V40 { + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub byLocalRight: [BYTE; 32usize], + pub byRemoteRight: [BYTE; 32usize], + pub dwNetPreviewRight: [DWORD; 512usize], + pub dwLocalRecordRight: [DWORD; 512usize], + pub dwNetRecordRight: [DWORD; 512usize], + pub dwLocalPlaybackRight: [DWORD; 512usize], + pub dwNetPlaybackRight: [DWORD; 512usize], + pub dwLocalPTZRight: [DWORD; 512usize], + pub dwNetPTZRight: [DWORD; 512usize], + pub dwLocalBackupRight: [DWORD; 512usize], + pub struUserIP: NET_DVR_IPADDR, + pub byMACAddr: [BYTE; 6usize], + pub byPriority: BYTE, + pub byAlarmOnRight: BYTE, + pub byAlarmOffRight: BYTE, + pub byBypassRight: BYTE, + pub byRes1: [BYTE; 2usize], + pub byPublishRight: [BYTE; 32usize], + pub byRes: [BYTE; 84usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_USER_INFO_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16768usize, + concat!("Size of: ", stringify!(tagNET_DVR_USER_INFO_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_USER_INFO_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V40), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V40), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalRight) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V40), + "::", + stringify!(byLocalRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRemoteRight) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V40), + "::", + stringify!(byRemoteRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNetPreviewRight) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V40), + "::", + stringify!(dwNetPreviewRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalRecordRight) as usize - ptr as usize }, + 2160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V40), + "::", + stringify!(dwLocalRecordRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNetRecordRight) as usize - ptr as usize }, + 4208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V40), + "::", + stringify!(dwNetRecordRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalPlaybackRight) as usize - ptr as usize }, + 6256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V40), + "::", + stringify!(dwLocalPlaybackRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNetPlaybackRight) as usize - ptr as usize }, + 8304usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V40), + "::", + stringify!(dwNetPlaybackRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalPTZRight) as usize - ptr as usize }, + 10352usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V40), + "::", + stringify!(dwLocalPTZRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNetPTZRight) as usize - ptr as usize }, + 12400usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V40), + "::", + stringify!(dwNetPTZRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalBackupRight) as usize - ptr as usize }, + 14448usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V40), + "::", + stringify!(dwLocalBackupRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struUserIP) as usize - ptr as usize }, + 16496usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V40), + "::", + stringify!(struUserIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMACAddr) as usize - ptr as usize }, + 16640usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V40), + "::", + stringify!(byMACAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPriority) as usize - ptr as usize }, + 16646usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V40), + "::", + stringify!(byPriority) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOnRight) as usize - ptr as usize }, + 16647usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V40), + "::", + stringify!(byAlarmOnRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOffRight) as usize - ptr as usize }, + 16648usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V40), + "::", + stringify!(byAlarmOffRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBypassRight) as usize - ptr as usize }, + 16649usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V40), + "::", + stringify!(byBypassRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 16650usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V40), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPublishRight) as usize - ptr as usize }, + 16652usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V40), + "::", + stringify!(byPublishRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16684usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_USER_INFO_V40 = tagNET_DVR_USER_INFO_V40; +pub type LPNET_DVR_USER_INFO_V40 = *mut tagNET_DVR_USER_INFO_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_USER_INFO_V51 { + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub byLocalRight: [BYTE; 32usize], + pub byRemoteRight: [BYTE; 32usize], + pub dwNetPreviewRight: [DWORD; 512usize], + pub dwLocalRecordRight: [DWORD; 512usize], + pub dwNetRecordRight: [DWORD; 512usize], + pub dwLocalPlaybackRight: [DWORD; 512usize], + pub dwNetPlaybackRight: [DWORD; 512usize], + pub dwLocalPTZRight: [DWORD; 512usize], + pub dwNetPTZRight: [DWORD; 512usize], + pub dwLocalBackupRight: [DWORD; 512usize], + pub dwLocalPreviewRight: [DWORD; 512usize], + pub struUserIP: NET_DVR_IPADDR, + pub byMACAddr: [BYTE; 6usize], + pub byPriority: BYTE, + pub byAlarmOnRight: BYTE, + pub byAlarmOffRight: BYTE, + pub byBypassRight: BYTE, + pub byRes1: [BYTE; 2usize], + pub byPublishRight: [BYTE; 32usize], + pub dwPasswordValidity: DWORD, + pub byKeypadPassword: [BYTE; 16usize], + pub byUserOperateType: BYTE, + pub byRes: [BYTE; 1007usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_USER_INFO_V51() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 19760usize, + concat!("Size of: ", stringify!(tagNET_DVR_USER_INFO_V51)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_USER_INFO_V51)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V51), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V51), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalRight) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V51), + "::", + stringify!(byLocalRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRemoteRight) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V51), + "::", + stringify!(byRemoteRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNetPreviewRight) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V51), + "::", + stringify!(dwNetPreviewRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalRecordRight) as usize - ptr as usize }, + 2160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V51), + "::", + stringify!(dwLocalRecordRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNetRecordRight) as usize - ptr as usize }, + 4208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V51), + "::", + stringify!(dwNetRecordRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalPlaybackRight) as usize - ptr as usize }, + 6256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V51), + "::", + stringify!(dwLocalPlaybackRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNetPlaybackRight) as usize - ptr as usize }, + 8304usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V51), + "::", + stringify!(dwNetPlaybackRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalPTZRight) as usize - ptr as usize }, + 10352usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V51), + "::", + stringify!(dwLocalPTZRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNetPTZRight) as usize - ptr as usize }, + 12400usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V51), + "::", + stringify!(dwNetPTZRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalBackupRight) as usize - ptr as usize }, + 14448usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V51), + "::", + stringify!(dwLocalBackupRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalPreviewRight) as usize - ptr as usize }, + 16496usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V51), + "::", + stringify!(dwLocalPreviewRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struUserIP) as usize - ptr as usize }, + 18544usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V51), + "::", + stringify!(struUserIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMACAddr) as usize - ptr as usize }, + 18688usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V51), + "::", + stringify!(byMACAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPriority) as usize - ptr as usize }, + 18694usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V51), + "::", + stringify!(byPriority) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOnRight) as usize - ptr as usize }, + 18695usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V51), + "::", + stringify!(byAlarmOnRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOffRight) as usize - ptr as usize }, + 18696usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V51), + "::", + stringify!(byAlarmOffRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBypassRight) as usize - ptr as usize }, + 18697usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V51), + "::", + stringify!(byBypassRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 18698usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V51), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPublishRight) as usize - ptr as usize }, + 18700usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V51), + "::", + stringify!(byPublishRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPasswordValidity) as usize - ptr as usize }, + 18732usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V51), + "::", + stringify!(dwPasswordValidity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byKeypadPassword) as usize - ptr as usize }, + 18736usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V51), + "::", + stringify!(byKeypadPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUserOperateType) as usize - ptr as usize }, + 18752usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V51), + "::", + stringify!(byUserOperateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 18753usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V51), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_USER_INFO_V51 = tagNET_DVR_USER_INFO_V51; +pub type LPNET_DVR_USER_INFO_V51 = *mut tagNET_DVR_USER_INFO_V51; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_USER_V51 { + pub dwSize: DWORD, + pub dwMaxUserNum: DWORD, + pub struUser: [NET_DVR_USER_INFO_V51; 32usize], + pub sloginPassword: [::std::os::raw::c_char; 16usize], + pub byRes: [BYTE; 240usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_USER_V51() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 632584usize, + concat!("Size of: ", stringify!(tagNET_DVR_USER_V51)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_USER_V51)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_V51), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxUserNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_V51), + "::", + stringify!(dwMaxUserNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struUser) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_V51), + "::", + stringify!(struUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sloginPassword) as usize - ptr as usize }, + 632328usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_V51), + "::", + stringify!(sloginPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 632344usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_V51), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_USER_V51 = tagNET_DVR_USER_V51; +pub type LPNET_DVR_USER_V51 = *mut tagNET_DVR_USER_V51; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_USER_INFO_V52 { + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub byLocalRight: [BYTE; 32usize], + pub byRemoteRight: [BYTE; 32usize], + pub dwNetPreviewRight: [DWORD; 512usize], + pub dwLocalRecordRight: [DWORD; 512usize], + pub dwNetRecordRight: [DWORD; 512usize], + pub dwLocalPlaybackRight: [DWORD; 512usize], + pub dwNetPlaybackRight: [DWORD; 512usize], + pub dwLocalPTZRight: [DWORD; 512usize], + pub dwNetPTZRight: [DWORD; 512usize], + pub dwLocalBackupRight: [DWORD; 512usize], + pub dwLocalPreviewRight: [DWORD; 512usize], + pub dwLocalDoubleVerificationPlaybackRight: [DWORD; 512usize], + pub dwLocalDoubleVerificationBackupRight: [DWORD; 512usize], + pub dwNetDoubleVerificationPlaybackRight: [DWORD; 512usize], + pub struUserIP: NET_DVR_IPADDR, + pub byMACAddr: [BYTE; 6usize], + pub byPriority: BYTE, + pub byAlarmOnRight: BYTE, + pub byAlarmOffRight: BYTE, + pub byBypassRight: BYTE, + pub byRes1: [BYTE; 2usize], + pub byPublishRight: [BYTE; 32usize], + pub dwPasswordValidity: DWORD, + pub byKeypadPassword: [BYTE; 16usize], + pub byUserOperateType: BYTE, + pub byRes: [BYTE; 1007usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_USER_INFO_V52() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 25904usize, + concat!("Size of: ", stringify!(tagNET_DVR_USER_INFO_V52)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_USER_INFO_V52)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalRight) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(byLocalRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRemoteRight) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(byRemoteRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNetPreviewRight) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(dwNetPreviewRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalRecordRight) as usize - ptr as usize }, + 2160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(dwLocalRecordRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNetRecordRight) as usize - ptr as usize }, + 4208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(dwNetRecordRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalPlaybackRight) as usize - ptr as usize }, + 6256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(dwLocalPlaybackRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNetPlaybackRight) as usize - ptr as usize }, + 8304usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(dwNetPlaybackRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalPTZRight) as usize - ptr as usize }, + 10352usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(dwLocalPTZRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNetPTZRight) as usize - ptr as usize }, + 12400usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(dwNetPTZRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalBackupRight) as usize - ptr as usize }, + 14448usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(dwLocalBackupRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalPreviewRight) as usize - ptr as usize }, + 16496usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(dwLocalPreviewRight) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).dwLocalDoubleVerificationPlaybackRight) as usize + - ptr as usize + }, + 18544usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(dwLocalDoubleVerificationPlaybackRight) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).dwLocalDoubleVerificationBackupRight) as usize + - ptr as usize + }, + 20592usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(dwLocalDoubleVerificationBackupRight) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).dwNetDoubleVerificationPlaybackRight) as usize + - ptr as usize + }, + 22640usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(dwNetDoubleVerificationPlaybackRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struUserIP) as usize - ptr as usize }, + 24688usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(struUserIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMACAddr) as usize - ptr as usize }, + 24832usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(byMACAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPriority) as usize - ptr as usize }, + 24838usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(byPriority) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOnRight) as usize - ptr as usize }, + 24839usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(byAlarmOnRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOffRight) as usize - ptr as usize }, + 24840usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(byAlarmOffRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBypassRight) as usize - ptr as usize }, + 24841usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(byBypassRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 24842usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPublishRight) as usize - ptr as usize }, + 24844usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(byPublishRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPasswordValidity) as usize - ptr as usize }, + 24876usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(dwPasswordValidity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byKeypadPassword) as usize - ptr as usize }, + 24880usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(byKeypadPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUserOperateType) as usize - ptr as usize }, + 24896usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(byUserOperateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24897usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_INFO_V52), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_USER_INFO_V52 = tagNET_DVR_USER_INFO_V52; +pub type LPNET_DVR_USER_INFO_V52 = *mut tagNET_DVR_USER_INFO_V52; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_USER_V52 { + pub dwSize: DWORD, + pub dwMaxUserNum: DWORD, + pub struUser: [NET_DVR_USER_INFO_V52; 32usize], + pub sloginPassword: [::std::os::raw::c_char; 16usize], + pub byRes: [BYTE; 240usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_USER_V52() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 829192usize, + concat!("Size of: ", stringify!(tagNET_DVR_USER_V52)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_USER_V52)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_V52), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxUserNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_V52), + "::", + stringify!(dwMaxUserNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struUser) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_V52), + "::", + stringify!(struUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sloginPassword) as usize - ptr as usize }, + 828936usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_V52), + "::", + stringify!(sloginPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 828952usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_V52), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_USER_V52 = tagNET_DVR_USER_V52; +pub type LPNET_DVR_USER_V52 = *mut tagNET_DVR_USER_V52; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_USER_INFO_V30 { + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub byLocalRight: [BYTE; 32usize], + pub byRemoteRight: [BYTE; 32usize], + pub byNetPreviewRight: [BYTE; 64usize], + pub byLocalPlaybackRight: [BYTE; 64usize], + pub byNetPlaybackRight: [BYTE; 64usize], + pub byLocalRecordRight: [BYTE; 64usize], + pub byNetRecordRight: [BYTE; 64usize], + pub byLocalPTZRight: [BYTE; 64usize], + pub byNetPTZRight: [BYTE; 64usize], + pub byLocalBackupRight: [BYTE; 64usize], + pub struUserIP: NET_DVR_IPADDR, + pub byMACAddr: [BYTE; 6usize], + pub byPriority: BYTE, + pub byAlarmOnRight: BYTE, + pub byAlarmOffRight: BYTE, + pub byBypassRight: BYTE, + pub byRes: [BYTE; 14usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_USER_INFO_V30() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 792usize, + concat!("Size of: ", stringify!(NET_DVR_USER_INFO_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_USER_INFO_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_V30), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_V30), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalRight) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_V30), + "::", + stringify!(byLocalRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRemoteRight) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_V30), + "::", + stringify!(byRemoteRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetPreviewRight) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_V30), + "::", + stringify!(byNetPreviewRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalPlaybackRight) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_V30), + "::", + stringify!(byLocalPlaybackRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetPlaybackRight) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_V30), + "::", + stringify!(byNetPlaybackRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalRecordRight) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_V30), + "::", + stringify!(byLocalRecordRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetRecordRight) as usize - ptr as usize }, + 368usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_V30), + "::", + stringify!(byNetRecordRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalPTZRight) as usize - ptr as usize }, + 432usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_V30), + "::", + stringify!(byLocalPTZRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetPTZRight) as usize - ptr as usize }, + 496usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_V30), + "::", + stringify!(byNetPTZRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalBackupRight) as usize - ptr as usize }, + 560usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_V30), + "::", + stringify!(byLocalBackupRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struUserIP) as usize - ptr as usize }, + 624usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_V30), + "::", + stringify!(struUserIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMACAddr) as usize - ptr as usize }, + 768usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_V30), + "::", + stringify!(byMACAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPriority) as usize - ptr as usize }, + 774usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_V30), + "::", + stringify!(byPriority) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOnRight) as usize - ptr as usize }, + 775usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_V30), + "::", + stringify!(byAlarmOnRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOffRight) as usize - ptr as usize }, + 776usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_V30), + "::", + stringify!(byAlarmOffRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBypassRight) as usize - ptr as usize }, + 777usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_V30), + "::", + stringify!(byBypassRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 778usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_V30), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_USER_INFO_V30 = *mut NET_DVR_USER_INFO_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_USER_INFO_EX { + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub dwLocalRight: [DWORD; 32usize], + pub dwLocalPlaybackRight: DWORD, + pub dwRemoteRight: [DWORD; 32usize], + pub dwNetPreviewRight: DWORD, + pub dwNetPlaybackRight: DWORD, + pub sUserIP: [::std::os::raw::c_char; 16usize], + pub byMACAddr: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_USER_INFO_EX() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 340usize, + concat!("Size of: ", stringify!(NET_DVR_USER_INFO_EX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_USER_INFO_EX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_EX), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_EX), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalRight) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_EX), + "::", + stringify!(dwLocalRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalPlaybackRight) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_EX), + "::", + stringify!(dwLocalPlaybackRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRemoteRight) as usize - ptr as usize }, + 180usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_EX), + "::", + stringify!(dwRemoteRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNetPreviewRight) as usize - ptr as usize }, + 308usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_EX), + "::", + stringify!(dwNetPreviewRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNetPlaybackRight) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_EX), + "::", + stringify!(dwNetPlaybackRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserIP) as usize - ptr as usize }, + 316usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_EX), + "::", + stringify!(sUserIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMACAddr) as usize - ptr as usize }, + 332usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO_EX), + "::", + stringify!(byMACAddr) + ) + ); +} +pub type LPNET_DVR_USER_INFO_EX = *mut NET_DVR_USER_INFO_EX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_USER_INFO { + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub dwLocalRight: [DWORD; 32usize], + pub dwRemoteRight: [DWORD; 32usize], + pub sUserIP: [::std::os::raw::c_char; 16usize], + pub byMACAddr: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_USER_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 328usize, + concat!("Size of: ", stringify!(NET_DVR_USER_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_USER_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalRight) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO), + "::", + stringify!(dwLocalRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRemoteRight) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO), + "::", + stringify!(dwRemoteRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserIP) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO), + "::", + stringify!(sUserIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMACAddr) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_INFO), + "::", + stringify!(byMACAddr) + ) + ); +} +pub type LPNET_DVR_USER_INFO = *mut NET_DVR_USER_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_USER_V40 { + pub dwSize: DWORD, + pub dwMaxUserNum: DWORD, + pub struUser: [NET_DVR_USER_INFO_V40; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_USER_V40() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 536584usize, + concat!("Size of: ", stringify!(tagNET_DVR_USER_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_USER_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxUserNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_V40), + "::", + stringify!(dwMaxUserNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struUser) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_V40), + "::", + stringify!(struUser) + ) + ); +} +pub type NET_DVR_USER_V40 = tagNET_DVR_USER_V40; +pub type LPNET_DVR_USER_V40 = *mut tagNET_DVR_USER_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_USER_V50 { + pub dwSize: DWORD, + pub dwMaxUserNum: DWORD, + pub struUser: [NET_DVR_USER_INFO_V40; 32usize], + pub sloginPassword: [::std::os::raw::c_char; 16usize], + pub byRes: [BYTE; 240usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_USER_V50() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 536840usize, + concat!("Size of: ", stringify!(tagNET_DVR_USER_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_USER_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxUserNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_V50), + "::", + stringify!(dwMaxUserNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struUser) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_V50), + "::", + stringify!(struUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sloginPassword) as usize - ptr as usize }, + 536584usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_V50), + "::", + stringify!(sloginPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 536600usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_USER_V50 = tagNET_DVR_USER_V50; +pub type LPNET_DVR_USER_V50 = *mut tagNET_DVR_USER_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_USER_V30 { + pub dwSize: DWORD, + pub struUser: [NET_DVR_USER_INFO_V30; 32usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_USER_V30() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 25348usize, + concat!("Size of: ", stringify!(NET_DVR_USER_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_USER_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_V30), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struUser) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_V30), + "::", + stringify!(struUser) + ) + ); +} +pub type LPNET_DVR_USER_V30 = *mut NET_DVR_USER_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_USER_EX { + pub dwSize: DWORD, + pub struUser: [NET_DVR_USER_INFO_EX; 16usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_USER_EX() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 5444usize, + concat!("Size of: ", stringify!(NET_DVR_USER_EX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_USER_EX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_EX), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struUser) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_EX), + "::", + stringify!(struUser) + ) + ); +} +pub type LPNET_DVR_USER_EX = *mut NET_DVR_USER_EX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_USER { + pub dwSize: DWORD, + pub struUser: [NET_DVR_USER_INFO; 16usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_USER() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 5252usize, + concat!("Size of: ", stringify!(NET_DVR_USER)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_USER)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struUser) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER), + "::", + stringify!(struUser) + ) + ); +} +pub type LPNET_DVR_USER = *mut NET_DVR_USER; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EXCEPTION_V40 { + pub dwSize: DWORD, + pub dwMaxGroupNum: DWORD, + pub struExceptionHandle: [NET_DVR_HANDLEEXCEPTION_V41; 32usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXCEPTION_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 530824usize, + concat!("Size of: ", stringify!(tagNET_DVR_EXCEPTION_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EXCEPTION_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXCEPTION_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxGroupNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXCEPTION_V40), + "::", + stringify!(dwMaxGroupNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struExceptionHandle) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXCEPTION_V40), + "::", + stringify!(struExceptionHandle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 530696usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXCEPTION_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EXCEPTION_V40 = tagNET_DVR_EXCEPTION_V40; +pub type LPNET_DVR_EXCEPTION_V40 = *mut tagNET_DVR_EXCEPTION_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_EXCEPTION_V30 { + pub dwSize: DWORD, + pub struExceptionHandleType: [NET_DVR_HANDLEEXCEPTION_V30; 32usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_EXCEPTION_V30() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 3204usize, + concat!("Size of: ", stringify!(NET_DVR_EXCEPTION_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_EXCEPTION_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EXCEPTION_V30), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struExceptionHandleType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EXCEPTION_V30), + "::", + stringify!(struExceptionHandleType) + ) + ); +} +pub type LPNET_DVR_EXCEPTION_V30 = *mut NET_DVR_EXCEPTION_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_EXCEPTION { + pub dwSize: DWORD, + pub struExceptionHandleType: [NET_DVR_HANDLEEXCEPTION; 16usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_EXCEPTION() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(NET_DVR_EXCEPTION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_EXCEPTION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EXCEPTION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struExceptionHandleType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EXCEPTION), + "::", + stringify!(struExceptionHandleType) + ) + ); +} +pub type LPNET_DVR_EXCEPTION = *mut NET_DVR_EXCEPTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_CHANNELSTATE_V30 { + pub byRecordStatic: BYTE, + pub bySignalStatic: BYTE, + pub byHardwareStatic: BYTE, + pub byRes1: BYTE, + pub dwBitRate: DWORD, + pub dwLinkNum: DWORD, + pub struClientIP: [NET_DVR_IPADDR; 6usize], + pub dwIPLinkNum: DWORD, + pub byExceedMaxLink: BYTE, + pub byRes: [BYTE; 3usize], + pub dwAllBitRate: DWORD, + pub dwChannelNo: DWORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_CHANNELSTATE_V30() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 892usize, + concat!("Size of: ", stringify!(NET_DVR_CHANNELSTATE_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_CHANNELSTATE_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordStatic) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CHANNELSTATE_V30), + "::", + stringify!(byRecordStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySignalStatic) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CHANNELSTATE_V30), + "::", + stringify!(bySignalStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHardwareStatic) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CHANNELSTATE_V30), + "::", + stringify!(byHardwareStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CHANNELSTATE_V30), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBitRate) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CHANNELSTATE_V30), + "::", + stringify!(dwBitRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLinkNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CHANNELSTATE_V30), + "::", + stringify!(dwLinkNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struClientIP) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CHANNELSTATE_V30), + "::", + stringify!(struClientIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIPLinkNum) as usize - ptr as usize }, + 876usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CHANNELSTATE_V30), + "::", + stringify!(dwIPLinkNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExceedMaxLink) as usize - ptr as usize }, + 880usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CHANNELSTATE_V30), + "::", + stringify!(byExceedMaxLink) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 881usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CHANNELSTATE_V30), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAllBitRate) as usize - ptr as usize }, + 884usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CHANNELSTATE_V30), + "::", + stringify!(dwAllBitRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannelNo) as usize - ptr as usize }, + 888usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CHANNELSTATE_V30), + "::", + stringify!(dwChannelNo) + ) + ); +} +pub type LPNET_DVR_CHANNELSTATE_V30 = *mut NET_DVR_CHANNELSTATE_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_CHANNELSTATE { + pub byRecordStatic: BYTE, + pub bySignalStatic: BYTE, + pub byHardwareStatic: BYTE, + pub reservedData: ::std::os::raw::c_char, + pub dwBitRate: DWORD, + pub dwLinkNum: DWORD, + pub dwClientIP: [DWORD; 6usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_CHANNELSTATE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(NET_DVR_CHANNELSTATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_CHANNELSTATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordStatic) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CHANNELSTATE), + "::", + stringify!(byRecordStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySignalStatic) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CHANNELSTATE), + "::", + stringify!(bySignalStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHardwareStatic) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CHANNELSTATE), + "::", + stringify!(byHardwareStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).reservedData) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CHANNELSTATE), + "::", + stringify!(reservedData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBitRate) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CHANNELSTATE), + "::", + stringify!(dwBitRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLinkNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CHANNELSTATE), + "::", + stringify!(dwLinkNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwClientIP) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CHANNELSTATE), + "::", + stringify!(dwClientIP) + ) + ); +} +pub type LPNET_DVR_CHANNELSTATE = *mut NET_DVR_CHANNELSTATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DISKSTATE { + pub dwVolume: DWORD, + pub dwFreeSpace: DWORD, + pub dwHardDiskStatic: DWORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_DISKSTATE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(NET_DVR_DISKSTATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_DISKSTATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVolume) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DISKSTATE), + "::", + stringify!(dwVolume) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFreeSpace) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DISKSTATE), + "::", + stringify!(dwFreeSpace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHardDiskStatic) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DISKSTATE), + "::", + stringify!(dwHardDiskStatic) + ) + ); +} +pub type LPNET_DVR_DISKSTATE = *mut NET_DVR_DISKSTATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WORKSTATE_V40 { + pub dwSize: DWORD, + pub dwDeviceStatic: DWORD, + pub struHardDiskStatic: [NET_DVR_DISKSTATE; 33usize], + pub struChanStatic: [NET_DVR_CHANNELSTATE_V30; 512usize], + pub dwHasAlarmInStatic: [DWORD; 4128usize], + pub dwHasAlarmOutStatic: [DWORD; 4128usize], + pub dwLocalDisplay: DWORD, + pub byAudioInChanStatus: [BYTE; 2usize], + pub byRes1: [BYTE; 2usize], + pub fHumidity: f32, + pub fTemperature: f32, + pub byRes: [BYTE; 116usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WORKSTATE_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 490264usize, + concat!("Size of: ", stringify!(tagNET_DVR_WORKSTATE_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WORKSTATE_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKSTATE_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeviceStatic) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKSTATE_V40), + "::", + stringify!(dwDeviceStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHardDiskStatic) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKSTATE_V40), + "::", + stringify!(struHardDiskStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struChanStatic) as usize - ptr as usize }, + 404usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKSTATE_V40), + "::", + stringify!(struChanStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHasAlarmInStatic) as usize - ptr as usize }, + 457108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKSTATE_V40), + "::", + stringify!(dwHasAlarmInStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHasAlarmOutStatic) as usize - ptr as usize }, + 473620usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKSTATE_V40), + "::", + stringify!(dwHasAlarmOutStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalDisplay) as usize - ptr as usize }, + 490132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKSTATE_V40), + "::", + stringify!(dwLocalDisplay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioInChanStatus) as usize - ptr as usize }, + 490136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKSTATE_V40), + "::", + stringify!(byAudioInChanStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 490138usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKSTATE_V40), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fHumidity) as usize - ptr as usize }, + 490140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKSTATE_V40), + "::", + stringify!(fHumidity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fTemperature) as usize - ptr as usize }, + 490144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKSTATE_V40), + "::", + stringify!(fTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 490148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKSTATE_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WORKSTATE_V40 = tagNET_DVR_WORKSTATE_V40; +pub type LPNET_DVR_WORKSTATE_V40 = *mut tagNET_DVR_WORKSTATE_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GETWORKSTATE_COND { + pub dwSize: DWORD, + pub byFindHardByCond: BYTE, + pub byFindChanByCond: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwFindHardStatus: [DWORD; 33usize], + pub dwFindChanNo: [DWORD; 512usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GETWORKSTATE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2252usize, + concat!("Size of: ", stringify!(tagNET_DVR_GETWORKSTATE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GETWORKSTATE_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GETWORKSTATE_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFindHardByCond) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GETWORKSTATE_COND), + "::", + stringify!(byFindHardByCond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFindChanByCond) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GETWORKSTATE_COND), + "::", + stringify!(byFindChanByCond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GETWORKSTATE_COND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFindHardStatus) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GETWORKSTATE_COND), + "::", + stringify!(dwFindHardStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFindChanNo) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GETWORKSTATE_COND), + "::", + stringify!(dwFindChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2188usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GETWORKSTATE_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GETWORKSTATE_COND = tagNET_DVR_GETWORKSTATE_COND; +pub type LPNET_DVR_GETWORKSTATE_COND = *mut tagNET_DVR_GETWORKSTATE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_WORKSTATE_V30 { + pub dwDeviceStatic: DWORD, + pub struHardDiskStatic: [NET_DVR_DISKSTATE; 33usize], + pub struChanStatic: [NET_DVR_CHANNELSTATE_V30; 64usize], + pub byAlarmInStatic: [BYTE; 160usize], + pub byAlarmOutStatic: [BYTE; 96usize], + pub dwLocalDisplay: DWORD, + pub byAudioChanStatus: [BYTE; 2usize], + pub byRes: [BYTE; 10usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_WORKSTATE_V30() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 57760usize, + concat!("Size of: ", stringify!(NET_DVR_WORKSTATE_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_WORKSTATE_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeviceStatic) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WORKSTATE_V30), + "::", + stringify!(dwDeviceStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHardDiskStatic) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WORKSTATE_V30), + "::", + stringify!(struHardDiskStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struChanStatic) as usize - ptr as usize }, + 400usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WORKSTATE_V30), + "::", + stringify!(struChanStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInStatic) as usize - ptr as usize }, + 57488usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WORKSTATE_V30), + "::", + stringify!(byAlarmInStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutStatic) as usize - ptr as usize }, + 57648usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WORKSTATE_V30), + "::", + stringify!(byAlarmOutStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalDisplay) as usize - ptr as usize }, + 57744usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WORKSTATE_V30), + "::", + stringify!(dwLocalDisplay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioChanStatus) as usize - ptr as usize }, + 57748usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WORKSTATE_V30), + "::", + stringify!(byAudioChanStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 57750usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WORKSTATE_V30), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_WORKSTATE_V30 = *mut NET_DVR_WORKSTATE_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_WORKSTATE { + pub dwDeviceStatic: DWORD, + pub struHardDiskStatic: [NET_DVR_DISKSTATE; 16usize], + pub struChanStatic: [NET_DVR_CHANNELSTATE; 16usize], + pub byAlarmInStatic: [BYTE; 16usize], + pub byAlarmOutStatic: [BYTE; 4usize], + pub dwLocalDisplay: DWORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_WORKSTATE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 796usize, + concat!("Size of: ", stringify!(NET_DVR_WORKSTATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_WORKSTATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeviceStatic) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WORKSTATE), + "::", + stringify!(dwDeviceStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHardDiskStatic) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WORKSTATE), + "::", + stringify!(struHardDiskStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struChanStatic) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WORKSTATE), + "::", + stringify!(struChanStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInStatic) as usize - ptr as usize }, + 772usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WORKSTATE), + "::", + stringify!(byAlarmInStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutStatic) as usize - ptr as usize }, + 788usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WORKSTATE), + "::", + stringify!(byAlarmOutStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalDisplay) as usize - ptr as usize }, + 792usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WORKSTATE), + "::", + stringify!(dwLocalDisplay) + ) + ); +} +pub type LPNET_DVR_WORKSTATE = *mut NET_DVR_WORKSTATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_LOG_V30 { + pub strLogTime: NET_DVR_TIME, + pub dwMajorType: DWORD, + pub dwMinorType: DWORD, + pub sPanelUser: [BYTE; 16usize], + pub sNetUser: [BYTE; 16usize], + pub struRemoteHostAddr: NET_DVR_IPADDR, + pub dwParaType: DWORD, + pub dwChannel: DWORD, + pub dwDiskNumber: DWORD, + pub dwAlarmInPort: DWORD, + pub dwAlarmOutPort: DWORD, + pub dwInfoLen: DWORD, + pub sInfo: [::std::os::raw::c_char; 11840usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_LOG_V30() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12072usize, + concat!("Size of: ", stringify!(NET_DVR_LOG_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_LOG_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strLogTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V30), + "::", + stringify!(strLogTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMajorType) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V30), + "::", + stringify!(dwMajorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMinorType) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V30), + "::", + stringify!(dwMinorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPanelUser) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V30), + "::", + stringify!(sPanelUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sNetUser) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V30), + "::", + stringify!(sNetUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRemoteHostAddr) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V30), + "::", + stringify!(struRemoteHostAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwParaType) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V30), + "::", + stringify!(dwParaType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 212usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V30), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDiskNumber) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V30), + "::", + stringify!(dwDiskNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmInPort) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V30), + "::", + stringify!(dwAlarmInPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmOutPort) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V30), + "::", + stringify!(dwAlarmOutPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInfoLen) as usize - ptr as usize }, + 228usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V30), + "::", + stringify!(dwInfoLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sInfo) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V30), + "::", + stringify!(sInfo) + ) + ); +} +pub type LPNET_DVR_LOG_V30 = *mut NET_DVR_LOG_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_LOG { + pub strLogTime: NET_DVR_TIME, + pub dwMajorType: DWORD, + pub dwMinorType: DWORD, + pub sPanelUser: [BYTE; 16usize], + pub sNetUser: [BYTE; 16usize], + pub sRemoteHostAddr: [::std::os::raw::c_char; 16usize], + pub dwParaType: DWORD, + pub dwChannel: DWORD, + pub dwDiskNumber: DWORD, + pub dwAlarmInPort: DWORD, + pub dwAlarmOutPort: DWORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_LOG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 100usize, + concat!("Size of: ", stringify!(NET_DVR_LOG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_LOG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strLogTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG), + "::", + stringify!(strLogTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMajorType) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG), + "::", + stringify!(dwMajorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMinorType) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG), + "::", + stringify!(dwMinorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPanelUser) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG), + "::", + stringify!(sPanelUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sNetUser) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG), + "::", + stringify!(sNetUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sRemoteHostAddr) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG), + "::", + stringify!(sRemoteHostAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwParaType) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG), + "::", + stringify!(dwParaType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDiskNumber) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG), + "::", + stringify!(dwDiskNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmInPort) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG), + "::", + stringify!(dwAlarmInPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmOutPort) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG), + "::", + stringify!(dwAlarmOutPort) + ) + ); +} +pub type LPNET_DVR_LOG = *mut NET_DVR_LOG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FIND_LOG_COND { + pub dwSelectMode: DWORD, + pub dwMainType: DWORD, + pub dwSubType: DWORD, + pub struStartTime: NET_DVR_TIME_V50, + pub struEndTime: NET_DVR_TIME_V50, + pub bOnlySmart: ::std::os::raw::c_int, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FIND_LOG_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 168usize, + concat!("Size of: ", stringify!(tagNET_DVR_FIND_LOG_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FIND_LOG_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSelectMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_LOG_COND), + "::", + stringify!(dwSelectMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMainType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_LOG_COND), + "::", + stringify!(dwMainType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSubType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_LOG_COND), + "::", + stringify!(dwSubType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_LOG_COND), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_LOG_COND), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bOnlySmart) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_LOG_COND), + "::", + stringify!(bOnlySmart) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_LOG_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FIND_LOG_COND = tagNET_DVR_FIND_LOG_COND; +pub type LPNET_DVR_FIND_LOG_COND = *mut tagNET_DVR_FIND_LOG_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_LOG_V50 { + pub struLogTime: NET_DVR_TIME_V50, + pub dwMajorType: DWORD, + pub dwMinorType: DWORD, + pub sPanelUser: [BYTE; 16usize], + pub sNetUser: [BYTE; 16usize], + pub struRemoteHostAddr: NET_DVR_IPADDR, + pub dwParaType: DWORD, + pub dwChannel: DWORD, + pub dwDiskNumber: DWORD, + pub dwAlarmInPort: DWORD, + pub dwAlarmOutPort: DWORD, + pub dwInfoLen: DWORD, + pub sInfo: [::std::os::raw::c_char; 11840usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_LOG_V50() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12188usize, + concat!("Size of: ", stringify!(NET_DVR_LOG_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_LOG_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLogTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V50), + "::", + stringify!(struLogTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMajorType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V50), + "::", + stringify!(dwMajorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMinorType) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V50), + "::", + stringify!(dwMinorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPanelUser) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V50), + "::", + stringify!(sPanelUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sNetUser) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V50), + "::", + stringify!(sNetUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRemoteHostAddr) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V50), + "::", + stringify!(struRemoteHostAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwParaType) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V50), + "::", + stringify!(dwParaType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V50), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDiskNumber) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V50), + "::", + stringify!(dwDiskNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmInPort) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V50), + "::", + stringify!(dwAlarmInPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmOutPort) as usize - ptr as usize }, + 212usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V50), + "::", + stringify!(dwAlarmOutPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInfoLen) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V50), + "::", + stringify!(dwInfoLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sInfo) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V50), + "::", + stringify!(sInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12060usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_LOG_V50 = *mut NET_DVR_LOG_V50; +#[doc = "������������������־���� begin"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_SEARCH_LOG_PARAM { + pub wMajorType: WORD, + pub wMinorType: WORD, + pub struStartTime: NET_DVR_TIME, + pub struEndTime: NET_DVR_TIME, + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_SEARCH_LOG_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 60usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_SEARCH_LOG_PARAM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_SEARCH_LOG_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMajorType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SEARCH_LOG_PARAM), + "::", + stringify!(wMajorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMinorType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SEARCH_LOG_PARAM), + "::", + stringify!(wMinorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SEARCH_LOG_PARAM), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SEARCH_LOG_PARAM), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SEARCH_LOG_PARAM), + "::", + stringify!(byRes) + ) + ); +} +#[doc = "������������������־���� begin"] +pub type NET_DVR_ALARMHOST_SEARCH_LOG_PARAM = tagNET_DVR_ALARMHOST_SEARCH_LOG_PARAM; +#[doc = "������������������־���� begin"] +pub type LPNET_DVR_ALARMHOST_SEARCH_LOG_PARAM = tagNET_DVR_ALARMHOST_SEARCH_LOG_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_LOG_RET { + pub struLogTime: NET_DVR_TIME, + pub sUserName: [BYTE; 32usize], + pub struIPAddr: NET_DVR_IPADDR, + pub wMajorType: WORD, + pub wMinorType: WORD, + pub wParam: WORD, + pub byRes: [BYTE; 10usize], + pub dwInfoLen: DWORD, + pub sInfo: [::std::os::raw::c_char; 11840usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_LOG_RET() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12060usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMHOST_LOG_RET)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMHOST_LOG_RET)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLogTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_LOG_RET), + "::", + stringify!(struLogTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_LOG_RET), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPAddr) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_LOG_RET), + "::", + stringify!(struIPAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMajorType) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_LOG_RET), + "::", + stringify!(wMajorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMinorType) as usize - ptr as usize }, + 202usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_LOG_RET), + "::", + stringify!(wMinorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wParam) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_LOG_RET), + "::", + stringify!(wParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 206usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_LOG_RET), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInfoLen) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_LOG_RET), + "::", + stringify!(dwInfoLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sInfo) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_LOG_RET), + "::", + stringify!(sInfo) + ) + ); +} +pub type NET_DVR_ALARMHOST_LOG_RET = tagNET_DVR_ALARMHOST_LOG_RET; +pub type LPNET_DVR_ALARMHOST_LOG_RET = *mut tagNET_DVR_ALARMHOST_LOG_RET; +#[doc = "������������������־���� end"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_ALARMOUTSTATUS_V30 { + pub Output: [BYTE; 96usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_ALARMOUTSTATUS_V30() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 96usize, + concat!("Size of: ", stringify!(NET_DVR_ALARMOUTSTATUS_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_ALARMOUTSTATUS_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Output) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMOUTSTATUS_V30), + "::", + stringify!(Output) + ) + ); +} +#[doc = "������������������־���� end"] +pub type LPNET_DVR_ALARMOUTSTATUS_V30 = *mut NET_DVR_ALARMOUTSTATUS_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_ALARMOUTSTATUS { + pub Output: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_ALARMOUTSTATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(NET_DVR_ALARMOUTSTATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_ALARMOUTSTATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Output) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMOUTSTATUS), + "::", + stringify!(Output) + ) + ); +} +pub type LPNET_DVR_ALARMOUTSTATUS = *mut NET_DVR_ALARMOUTSTATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_TRADEINFO { + pub m_Year: USHORT, + pub m_Month: USHORT, + pub m_Day: USHORT, + pub m_Hour: USHORT, + pub m_Minute: USHORT, + pub m_Second: USHORT, + pub DeviceName: [BYTE; 24usize], + pub dwChannelNumer: DWORD, + pub CardNumber: [BYTE; 32usize], + pub cTradeType: [::std::os::raw::c_char; 12usize], + pub dwCash: DWORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_TRADEINFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(NET_DVR_TRADEINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_TRADEINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).m_Year) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_TRADEINFO), + "::", + stringify!(m_Year) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).m_Month) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_TRADEINFO), + "::", + stringify!(m_Month) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).m_Day) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_TRADEINFO), + "::", + stringify!(m_Day) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).m_Hour) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_TRADEINFO), + "::", + stringify!(m_Hour) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).m_Minute) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_TRADEINFO), + "::", + stringify!(m_Minute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).m_Second) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_TRADEINFO), + "::", + stringify!(m_Second) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).DeviceName) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_TRADEINFO), + "::", + stringify!(DeviceName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannelNumer) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_TRADEINFO), + "::", + stringify!(dwChannelNumer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).CardNumber) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_TRADEINFO), + "::", + stringify!(CardNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTradeType) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_TRADEINFO), + "::", + stringify!(cTradeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCash) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_TRADEINFO), + "::", + stringify!(dwCash) + ) + ); +} +pub type LPNET_DVR_TRADEINFO = *mut NET_DVR_TRADEINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_FRAMETYPECODE { + pub code: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_FRAMETYPECODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(NET_DVR_FRAMETYPECODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_FRAMETYPECODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).code) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMETYPECODE), + "::", + stringify!(code) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_FRAMEFORMAT { + pub dwSize: DWORD, + pub sATMIP: [::std::os::raw::c_char; 16usize], + pub dwATMType: DWORD, + pub dwInputMode: DWORD, + pub dwFrameSignBeginPos: DWORD, + pub dwFrameSignLength: DWORD, + pub byFrameSignContent: [BYTE; 12usize], + pub dwCardLengthInfoBeginPos: DWORD, + pub dwCardLengthInfoLength: DWORD, + pub dwCardNumberInfoBeginPos: DWORD, + pub dwCardNumberInfoLength: DWORD, + pub dwBusinessTypeBeginPos: DWORD, + pub dwBusinessTypeLength: DWORD, + pub frameTypeCode: [NET_DVR_FRAMETYPECODE; 10usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_FRAMEFORMAT() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 192usize, + concat!("Size of: ", stringify!(NET_DVR_FRAMEFORMAT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_FRAMEFORMAT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sATMIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT), + "::", + stringify!(sATMIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwATMType) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT), + "::", + stringify!(dwATMType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInputMode) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT), + "::", + stringify!(dwInputMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFrameSignBeginPos) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT), + "::", + stringify!(dwFrameSignBeginPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFrameSignLength) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT), + "::", + stringify!(dwFrameSignLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFrameSignContent) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT), + "::", + stringify!(byFrameSignContent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardLengthInfoBeginPos) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT), + "::", + stringify!(dwCardLengthInfoBeginPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardLengthInfoLength) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT), + "::", + stringify!(dwCardLengthInfoLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardNumberInfoBeginPos) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT), + "::", + stringify!(dwCardNumberInfoBeginPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardNumberInfoLength) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT), + "::", + stringify!(dwCardNumberInfoLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBusinessTypeBeginPos) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT), + "::", + stringify!(dwBusinessTypeBeginPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBusinessTypeLength) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT), + "::", + stringify!(dwBusinessTypeLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).frameTypeCode) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT), + "::", + stringify!(frameTypeCode) + ) + ); +} +pub type LPNET_DVR_FRAMEFORMAT = *mut NET_DVR_FRAMEFORMAT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_FRAMEFORMAT_V30 { + pub dwSize: DWORD, + pub struATMIP: NET_DVR_IPADDR, + pub dwATMType: DWORD, + pub dwInputMode: DWORD, + pub dwFrameSignBeginPos: DWORD, + pub dwFrameSignLength: DWORD, + pub byFrameSignContent: [BYTE; 12usize], + pub dwCardLengthInfoBeginPos: DWORD, + pub dwCardLengthInfoLength: DWORD, + pub dwCardNumberInfoBeginPos: DWORD, + pub dwCardNumberInfoLength: DWORD, + pub dwBusinessTypeBeginPos: DWORD, + pub dwBusinessTypeLength: DWORD, + pub frameTypeCode: [NET_DVR_FRAMETYPECODE; 10usize], + pub wATMPort: WORD, + pub wProtocolType: WORD, + pub byRes: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_FRAMEFORMAT_V30() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 348usize, + concat!("Size of: ", stringify!(NET_DVR_FRAMEFORMAT_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_FRAMEFORMAT_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT_V30), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struATMIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT_V30), + "::", + stringify!(struATMIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwATMType) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT_V30), + "::", + stringify!(dwATMType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInputMode) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT_V30), + "::", + stringify!(dwInputMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFrameSignBeginPos) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT_V30), + "::", + stringify!(dwFrameSignBeginPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFrameSignLength) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT_V30), + "::", + stringify!(dwFrameSignLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFrameSignContent) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT_V30), + "::", + stringify!(byFrameSignContent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardLengthInfoBeginPos) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT_V30), + "::", + stringify!(dwCardLengthInfoBeginPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardLengthInfoLength) as usize - ptr as usize }, + 180usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT_V30), + "::", + stringify!(dwCardLengthInfoLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardNumberInfoBeginPos) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT_V30), + "::", + stringify!(dwCardNumberInfoBeginPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardNumberInfoLength) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT_V30), + "::", + stringify!(dwCardNumberInfoLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBusinessTypeBeginPos) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT_V30), + "::", + stringify!(dwBusinessTypeBeginPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBusinessTypeLength) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT_V30), + "::", + stringify!(dwBusinessTypeLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).frameTypeCode) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT_V30), + "::", + stringify!(frameTypeCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wATMPort) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT_V30), + "::", + stringify!(wATMPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wProtocolType) as usize - ptr as usize }, + 322usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT_V30), + "::", + stringify!(wProtocolType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 324usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAMEFORMAT_V30), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_FRAMEFORMAT_V30 = *mut NET_DVR_FRAMEFORMAT_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FILTER { + pub byEnable: BYTE, + pub byMode: BYTE, + pub byFrameBeginPos: BYTE, + pub byRes: BYTE, + pub byFilterText: [BYTE; 16usize], + pub byRes2: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FILTER() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_DVR_FILTER)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FILTER)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILTER), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILTER), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFrameBeginPos) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILTER), + "::", + stringify!(byFrameBeginPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILTER), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFilterText) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILTER), + "::", + stringify!(byFilterText) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILTER), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_FILTER = tagNET_DVR_FILTER; +pub type LPNET_DVR_FILTER = *mut tagNET_DVR_FILTER; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IDENTIFICAT { + pub byStartMode: BYTE, + pub byEndMode: BYTE, + pub byRes: [BYTE; 2usize], + pub struStartCode: NET_DVR_FRAMETYPECODE, + pub struEndCode: NET_DVR_FRAMETYPECODE, + pub byRes1: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IDENTIFICAT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_IDENTIFICAT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IDENTIFICAT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IDENTIFICAT), + "::", + stringify!(byStartMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEndMode) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IDENTIFICAT), + "::", + stringify!(byEndMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IDENTIFICAT), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartCode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IDENTIFICAT), + "::", + stringify!(struStartCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndCode) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IDENTIFICAT), + "::", + stringify!(struEndCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IDENTIFICAT), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_IDENTIFICAT = tagNET_DVR_IDENTIFICAT; +pub type LPNET_DVR_IDENTIFICAT = *mut tagNET_DVR_IDENTIFICAT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PACKAGE_LOCATION { + pub byOffsetMode: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwOffsetPos: DWORD, + pub struTokenCode: NET_DVR_FRAMETYPECODE, + pub byMultiplierValue: BYTE, + pub byEternOffset: BYTE, + pub byCodeMode: BYTE, + pub byRes2: [BYTE; 9usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PACKAGE_LOCATION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_DVR_PACKAGE_LOCATION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PACKAGE_LOCATION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOffsetMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKAGE_LOCATION), + "::", + stringify!(byOffsetMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKAGE_LOCATION), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOffsetPos) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKAGE_LOCATION), + "::", + stringify!(dwOffsetPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTokenCode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKAGE_LOCATION), + "::", + stringify!(struTokenCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMultiplierValue) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKAGE_LOCATION), + "::", + stringify!(byMultiplierValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEternOffset) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKAGE_LOCATION), + "::", + stringify!(byEternOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCodeMode) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKAGE_LOCATION), + "::", + stringify!(byCodeMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 23usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKAGE_LOCATION), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PACKAGE_LOCATION = tagNET_DVR_PACKAGE_LOCATION; +pub type LPNET_DVR_PACKAGE_LOCATION = *mut tagNET_DVR_PACKAGE_LOCATION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PACKAGE_LENGTH { + pub byLengthMode: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwFixLength: DWORD, + pub dwMaxLength: DWORD, + pub dwMinLength: DWORD, + pub byEndMode: BYTE, + pub byRes2: [BYTE; 3usize], + pub struEndCode: NET_DVR_FRAMETYPECODE, + pub dwLengthPos: DWORD, + pub dwLengthLen: DWORD, + pub byRes3: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PACKAGE_LENGTH() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_DVR_PACKAGE_LENGTH)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PACKAGE_LENGTH)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLengthMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKAGE_LENGTH), + "::", + stringify!(byLengthMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKAGE_LENGTH), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFixLength) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKAGE_LENGTH), + "::", + stringify!(dwFixLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxLength) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKAGE_LENGTH), + "::", + stringify!(dwMaxLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMinLength) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKAGE_LENGTH), + "::", + stringify!(dwMinLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEndMode) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKAGE_LENGTH), + "::", + stringify!(byEndMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKAGE_LENGTH), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndCode) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKAGE_LENGTH), + "::", + stringify!(struEndCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLengthPos) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKAGE_LENGTH), + "::", + stringify!(dwLengthPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLengthLen) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKAGE_LENGTH), + "::", + stringify!(dwLengthLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKAGE_LENGTH), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_PACKAGE_LENGTH = tagNET_DVR_PACKAGE_LENGTH; +pub type LPNET_DVR_PACKAGE_LENGTH = *mut tagNET_DVR_PACKAGE_LENGTH; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OSD_POSITION { + pub byPositionMode: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwPosX: DWORD, + pub dwPosY: DWORD, + pub byRes2: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OSD_POSITION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_OSD_POSITION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OSD_POSITION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPositionMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSD_POSITION), + "::", + stringify!(byPositionMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSD_POSITION), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPosX) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSD_POSITION), + "::", + stringify!(dwPosX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPosY) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSD_POSITION), + "::", + stringify!(dwPosY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSD_POSITION), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_OSD_POSITION = tagNET_DVR_OSD_POSITION; +pub type LPNET_DVR_OSD_POSITION = *mut tagNET_DVR_OSD_POSITION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DATE_FORMAT { + pub byMonth: BYTE, + pub byDay: BYTE, + pub byYear: BYTE, + pub byDateForm: BYTE, + pub byRes: [BYTE; 20usize], + pub chSeprator: [::std::os::raw::c_char; 4usize], + pub chDisplaySeprator: [::std::os::raw::c_char; 4usize], + pub byDisplayForm: BYTE, + pub res: [BYTE; 27usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DATE_FORMAT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 60usize, + concat!("Size of: ", stringify!(tagNET_DVR_DATE_FORMAT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DATE_FORMAT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonth) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DATE_FORMAT), + "::", + stringify!(byMonth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDay) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DATE_FORMAT), + "::", + stringify!(byDay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byYear) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DATE_FORMAT), + "::", + stringify!(byYear) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDateForm) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DATE_FORMAT), + "::", + stringify!(byDateForm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DATE_FORMAT), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).chSeprator) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DATE_FORMAT), + "::", + stringify!(chSeprator) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).chDisplaySeprator) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DATE_FORMAT), + "::", + stringify!(chDisplaySeprator) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDisplayForm) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DATE_FORMAT), + "::", + stringify!(byDisplayForm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).res) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DATE_FORMAT), + "::", + stringify!(res) + ) + ); +} +pub type NET_DVR_DATE_FORMAT = tagNET_DVR_DATE_FORMAT; +pub type LPNET_DVR_DATE_FORMAT = *mut tagNET_DVR_DATE_FORMAT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVRT_TIME_FORMAT { + pub byTimeForm: BYTE, + pub byRes1: [BYTE; 23usize], + pub byHourMode: BYTE, + pub byRes2: [BYTE; 3usize], + pub chSeprator: [::std::os::raw::c_char; 4usize], + pub chDisplaySeprator: [::std::os::raw::c_char; 4usize], + pub byDisplayForm: BYTE, + pub byRes3: [BYTE; 3usize], + pub byDisplayHourMode: BYTE, + pub byRes4: [BYTE; 19usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVRT_TIME_FORMAT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 60usize, + concat!("Size of: ", stringify!(tagNET_DVRT_TIME_FORMAT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVRT_TIME_FORMAT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeForm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVRT_TIME_FORMAT), + "::", + stringify!(byTimeForm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVRT_TIME_FORMAT), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHourMode) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVRT_TIME_FORMAT), + "::", + stringify!(byHourMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVRT_TIME_FORMAT), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).chSeprator) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVRT_TIME_FORMAT), + "::", + stringify!(chSeprator) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).chDisplaySeprator) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVRT_TIME_FORMAT), + "::", + stringify!(chDisplaySeprator) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDisplayForm) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVRT_TIME_FORMAT), + "::", + stringify!(byDisplayForm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVRT_TIME_FORMAT), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDisplayHourMode) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVRT_TIME_FORMAT), + "::", + stringify!(byDisplayHourMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes4) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVRT_TIME_FORMAT), + "::", + stringify!(byRes4) + ) + ); +} +pub type NET_DVR_TIME_FORMAT = tagNET_DVRT_TIME_FORMAT; +pub type LPNET_DVR_TIME_FORMAT = *mut tagNET_DVRT_TIME_FORMAT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OVERLAY_CHANNEL { + pub byChannel: [BYTE; 64usize], + pub dwDelayTime: DWORD, + pub byEnableDelayTime: BYTE, + pub byRes: [BYTE; 11usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OVERLAY_CHANNEL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_OVERLAY_CHANNEL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OVERLAY_CHANNEL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OVERLAY_CHANNEL), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDelayTime) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OVERLAY_CHANNEL), + "::", + stringify!(dwDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableDelayTime) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OVERLAY_CHANNEL), + "::", + stringify!(byEnableDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 69usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OVERLAY_CHANNEL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_OVERLAY_CHANNEL = tagNET_DVR_OVERLAY_CHANNEL; +pub type LPNET_DVR_OVERLAY_CHANNEL = *mut tagNET_DVR_OVERLAY_CHANNEL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ATM_PACKAGE_ACTION { + pub struPackageLocation: NET_DVR_PACKAGE_LOCATION, + pub struOsdPosition: NET_DVR_OSD_POSITION, + pub struActionCode: NET_DVR_FRAMETYPECODE, + pub struPreCode: NET_DVR_FRAMETYPECODE, + pub byActionCodeMode: BYTE, + pub byRes: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ATM_PACKAGE_ACTION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 84usize, + concat!("Size of: ", stringify!(tagNET_DVR_ATM_PACKAGE_ACTION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ATM_PACKAGE_ACTION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPackageLocation) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PACKAGE_ACTION), + "::", + stringify!(struPackageLocation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOsdPosition) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PACKAGE_ACTION), + "::", + stringify!(struOsdPosition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struActionCode) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PACKAGE_ACTION), + "::", + stringify!(struActionCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPreCode) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PACKAGE_ACTION), + "::", + stringify!(struPreCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byActionCodeMode) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PACKAGE_ACTION), + "::", + stringify!(byActionCodeMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 77usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PACKAGE_ACTION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ATM_PACKAGE_ACTION = tagNET_DVR_ATM_PACKAGE_ACTION; +pub type LPNET_DVR_ATM_PACKAGE_ACTION = *mut tagNET_DVR_ATM_PACKAGE_ACTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ATM_PACKAGE_DATE { + pub struPackageLocation: NET_DVR_PACKAGE_LOCATION, + pub struDateForm: NET_DVR_DATE_FORMAT, + pub struOsdPosition: NET_DVR_OSD_POSITION, + pub res: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ATM_PACKAGE_DATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 120usize, + concat!("Size of: ", stringify!(tagNET_DVR_ATM_PACKAGE_DATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ATM_PACKAGE_DATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPackageLocation) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PACKAGE_DATE), + "::", + stringify!(struPackageLocation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDateForm) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PACKAGE_DATE), + "::", + stringify!(struDateForm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOsdPosition) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PACKAGE_DATE), + "::", + stringify!(struOsdPosition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).res) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PACKAGE_DATE), + "::", + stringify!(res) + ) + ); +} +pub type NET_DVR_ATM_PACKAGE_DATE = tagNET_DVR_ATM_PACKAGE_DATE; +pub type LPNET_DVR_ATM_PACKAGE_DATE = *mut tagNET_DVR_ATM_PACKAGE_DATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ATM_PACKAGE_TIME { + pub location: NET_DVR_PACKAGE_LOCATION, + pub struTimeForm: NET_DVR_TIME_FORMAT, + pub struOsdPosition: NET_DVR_OSD_POSITION, + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ATM_PACKAGE_TIME() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 120usize, + concat!("Size of: ", stringify!(tagNET_DVR_ATM_PACKAGE_TIME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ATM_PACKAGE_TIME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).location) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PACKAGE_TIME), + "::", + stringify!(location) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTimeForm) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PACKAGE_TIME), + "::", + stringify!(struTimeForm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOsdPosition) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PACKAGE_TIME), + "::", + stringify!(struOsdPosition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PACKAGE_TIME), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ATM_PACKAGE_TIME = tagNET_DVR_ATM_PACKAGE_TIME; +pub type LPNET_DVR_ATM_PACKAGE_TIME = *mut tagNET_DVR_ATM_PACKAGE_TIME; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ATM_PACKAGE_OTHERS { + pub struPackageLocation: NET_DVR_PACKAGE_LOCATION, + pub struPackageLength: NET_DVR_PACKAGE_LENGTH, + pub struOsdPosition: NET_DVR_OSD_POSITION, + pub struPreCode: NET_DVR_FRAMETYPECODE, + pub res: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ATM_PACKAGE_OTHERS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 120usize, + concat!("Size of: ", stringify!(tagNET_DVR_ATM_PACKAGE_OTHERS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ATM_PACKAGE_OTHERS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPackageLocation) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PACKAGE_OTHERS), + "::", + stringify!(struPackageLocation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPackageLength) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PACKAGE_OTHERS), + "::", + stringify!(struPackageLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOsdPosition) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PACKAGE_OTHERS), + "::", + stringify!(struOsdPosition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPreCode) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PACKAGE_OTHERS), + "::", + stringify!(struPreCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).res) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PACKAGE_OTHERS), + "::", + stringify!(res) + ) + ); +} +pub type NET_DVR_ATM_PACKAGE_OTHERS = tagNET_DVR_ATM_PACKAGE_OTHERS; +pub type LPNET_DVR_ATM_PACKAGE_OTHERS = *mut tagNET_DVR_ATM_PACKAGE_OTHERS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ATM_USER_DEFINE_PROTOCOL { + pub struIdentification: NET_DVR_IDENTIFICAT, + pub struFilter: NET_DVR_FILTER, + pub struCardNoPara: NET_DVR_ATM_PACKAGE_OTHERS, + pub struTradeActionPara: [NET_DVR_ATM_PACKAGE_ACTION; 12usize], + pub struAmountPara: NET_DVR_ATM_PACKAGE_OTHERS, + pub struSerialNoPara: NET_DVR_ATM_PACKAGE_OTHERS, + pub struOverlayChan: NET_DVR_OVERLAY_CHANNEL, + pub struRes1: NET_DVR_ATM_PACKAGE_DATE, + pub struRes2: NET_DVR_ATM_PACKAGE_TIME, + pub byRes3: [BYTE; 124usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ATM_USER_DEFINE_PROTOCOL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1884usize, + concat!("Size of: ", stringify!(tagNET_DVR_ATM_USER_DEFINE_PROTOCOL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ATM_USER_DEFINE_PROTOCOL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIdentification) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_USER_DEFINE_PROTOCOL), + "::", + stringify!(struIdentification) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFilter) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_USER_DEFINE_PROTOCOL), + "::", + stringify!(struFilter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCardNoPara) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_USER_DEFINE_PROTOCOL), + "::", + stringify!(struCardNoPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTradeActionPara) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_USER_DEFINE_PROTOCOL), + "::", + stringify!(struTradeActionPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAmountPara) as usize - ptr as usize }, + 1200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_USER_DEFINE_PROTOCOL), + "::", + stringify!(struAmountPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSerialNoPara) as usize - ptr as usize }, + 1320usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_USER_DEFINE_PROTOCOL), + "::", + stringify!(struSerialNoPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOverlayChan) as usize - ptr as usize }, + 1440usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_USER_DEFINE_PROTOCOL), + "::", + stringify!(struOverlayChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRes1) as usize - ptr as usize }, + 1520usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_USER_DEFINE_PROTOCOL), + "::", + stringify!(struRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRes2) as usize - ptr as usize }, + 1640usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_USER_DEFINE_PROTOCOL), + "::", + stringify!(struRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 1760usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_USER_DEFINE_PROTOCOL), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_ATM_USER_DEFINE_PROTOCOL = tagNET_DVR_ATM_USER_DEFINE_PROTOCOL; +pub type LPNET_DVR_ATM_USER_DEFINE_PROTOCOL = *mut tagNET_DVR_ATM_USER_DEFINE_PROTOCOL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ATM_FRAMEFORMAT_V30 { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byInputMode: BYTE, + #[doc = "���뷽ʽ:0-���������1����Э�顢2-���ڼ�����3-����Э��"] + pub byRes1: [BYTE; 34usize], + pub struAtmIp: NET_DVR_IPADDR, + pub wAtmPort: WORD, + pub byRes2: [BYTE; 2usize], + pub dwAtmType: DWORD, + pub struAtmUserDefineProtocol: NET_DVR_ATM_USER_DEFINE_PROTOCOL, + pub byRes3: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ATM_FRAMEFORMAT_V30() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2084usize, + concat!("Size of: ", stringify!(tagNET_DVR_ATM_FRAMEFORMAT_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ATM_FRAMEFORMAT_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_FRAMEFORMAT_V30), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_FRAMEFORMAT_V30), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInputMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_FRAMEFORMAT_V30), + "::", + stringify!(byInputMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_FRAMEFORMAT_V30), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAtmIp) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_FRAMEFORMAT_V30), + "::", + stringify!(struAtmIp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAtmPort) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_FRAMEFORMAT_V30), + "::", + stringify!(wAtmPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 186usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_FRAMEFORMAT_V30), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAtmType) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_FRAMEFORMAT_V30), + "::", + stringify!(dwAtmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAtmUserDefineProtocol) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_FRAMEFORMAT_V30), + "::", + stringify!(struAtmUserDefineProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 2076usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_FRAMEFORMAT_V30), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_ATM_FRAMEFORMAT_V30 = tagNET_DVR_ATM_FRAMEFORMAT_V30; +pub type LPNET_DVR_ATM_FRAMEFORMAT_V30 = *mut tagNET_DVR_ATM_FRAMEFORMAT_V30; +pub const _ATM_PROTO_TYPE__ATM_PROTO_NCR: _ATM_PROTO_TYPE_ = 0; +pub const _ATM_PROTO_TYPE__ATM_PROTO_DIEBOLD: _ATM_PROTO_TYPE_ = 1; +pub const _ATM_PROTO_TYPE__ATM_PROTO_WINCOR_NIXDORF: _ATM_PROTO_TYPE_ = 2; +pub const _ATM_PROTO_TYPE__ATM_PROTO_SIEMENS: _ATM_PROTO_TYPE_ = 4; +pub const _ATM_PROTO_TYPE__ATM_PROTO_OLIVETTI: _ATM_PROTO_TYPE_ = 5; +pub const _ATM_PROTO_TYPE__ATM_PROTO_FUJITSU: _ATM_PROTO_TYPE_ = 6; +pub const _ATM_PROTO_TYPE__ATM_PROTO_HITACHI: _ATM_PROTO_TYPE_ = 7; +pub const _ATM_PROTO_TYPE__ATM_PROTO_SMI: _ATM_PROTO_TYPE_ = 8; +pub const _ATM_PROTO_TYPE__ATM_PROTO_BULL: _ATM_PROTO_TYPE_ = 9; +pub const _ATM_PROTO_TYPE__ATM_PROTO_YIHUA: _ATM_PROTO_TYPE_ = 10; +pub const _ATM_PROTO_TYPE__ATM_PROTO_LIDE: _ATM_PROTO_TYPE_ = 11; +pub const _ATM_PROTO_TYPE__ATM_PROTO_GDYT: _ATM_PROTO_TYPE_ = 12; +pub const _ATM_PROTO_TYPE__ATM_PROTO_MINI_BANL: _ATM_PROTO_TYPE_ = 13; +pub const _ATM_PROTO_TYPE__ATM_PROTO_GUANGLI: _ATM_PROTO_TYPE_ = 14; +pub const _ATM_PROTO_TYPE__ATM_PROTO_DONGXIN: _ATM_PROTO_TYPE_ = 15; +pub const _ATM_PROTO_TYPE__ATM_PROTO_CHENTONG: _ATM_PROTO_TYPE_ = 16; +pub const _ATM_PROTO_TYPE__ATM_PROTO_NANTIAN: _ATM_PROTO_TYPE_ = 17; +pub const _ATM_PROTO_TYPE__ATM_PROTO_XIAOXING: _ATM_PROTO_TYPE_ = 18; +pub const _ATM_PROTO_TYPE__ATM_PROTO_GZYY: _ATM_PROTO_TYPE_ = 19; +pub const _ATM_PROTO_TYPE__ATM_PROTO_QHTLT: _ATM_PROTO_TYPE_ = 20; +pub const _ATM_PROTO_TYPE__ATM_PROTO_DRS918: _ATM_PROTO_TYPE_ = 21; +pub const _ATM_PROTO_TYPE__ATM_PROTO_KALATEL: _ATM_PROTO_TYPE_ = 22; +pub const _ATM_PROTO_TYPE__ATM_PROTO_NCR_2: _ATM_PROTO_TYPE_ = 23; +pub const _ATM_PROTO_TYPE__ATM_PROTO_NXS: _ATM_PROTO_TYPE_ = 24; +pub const _ATM_PROTO_TYPE__ATM_PROTO_ICBC: _ATM_PROTO_TYPE_ = 25; +pub const _ATM_PROTO_TYPE__ATM_PROTO_PSBC: _ATM_PROTO_TYPE_ = 26; +pub const _ATM_PROTO_TYPE__ATM_PROTO_CUSTOM: _ATM_PROTO_TYPE_ = 1025; +pub type _ATM_PROTO_TYPE_ = ::std::os::raw::c_uint; +pub use self::_ATM_PROTO_TYPE_ as ATM_PROTO_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ATM_PROTO_TYPE { + pub dwAtmType: DWORD, + pub chDesc: [::std::os::raw::c_char; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ATM_PROTO_TYPE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_ATM_PROTO_TYPE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ATM_PROTO_TYPE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAtmType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PROTO_TYPE), + "::", + stringify!(dwAtmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).chDesc) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PROTO_TYPE), + "::", + stringify!(chDesc) + ) + ); +} +pub type NET_DVR_ATM_PROTO_TYPE = tagNET_DVR_ATM_PROTO_TYPE; +pub type LPNET_DVR_ATM_PROTO_TYPE = *mut tagNET_DVR_ATM_PROTO_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ATM_PROTO_LIST { + pub dwAtmProtoNum: DWORD, + pub struAtmProtoType: [NET_DVR_ATM_PROTO_TYPE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ATM_PROTO_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 9220usize, + concat!("Size of: ", stringify!(tagNET_DVR_ATM_PROTO_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ATM_PROTO_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAtmProtoNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PROTO_LIST), + "::", + stringify!(dwAtmProtoNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAtmProtoType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PROTO_LIST), + "::", + stringify!(struAtmProtoType) + ) + ); +} +pub type NET_DVR_ATM_PROTO_LIST = tagNET_DVR_ATM_PROTO_LIST; +pub type LPNET_DVR_ATM_PROTO_LIST = *mut tagNET_DVR_ATM_PROTO_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ATM_PROTOCOL { + pub dwSize: DWORD, + pub struNetListenList: NET_DVR_ATM_PROTO_LIST, + pub struSerialListenList: NET_DVR_ATM_PROTO_LIST, + pub struNetProtoList: NET_DVR_ATM_PROTO_LIST, + pub struSerialProtoList: NET_DVR_ATM_PROTO_LIST, + pub struCustomProto: NET_DVR_ATM_PROTO_TYPE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ATM_PROTOCOL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36920usize, + concat!("Size of: ", stringify!(tagNET_DVR_ATM_PROTOCOL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ATM_PROTOCOL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PROTOCOL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNetListenList) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PROTOCOL), + "::", + stringify!(struNetListenList) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSerialListenList) as usize - ptr as usize }, + 9224usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PROTOCOL), + "::", + stringify!(struSerialListenList) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNetProtoList) as usize - ptr as usize }, + 18444usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PROTOCOL), + "::", + stringify!(struNetProtoList) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSerialProtoList) as usize - ptr as usize }, + 27664usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PROTOCOL), + "::", + stringify!(struSerialProtoList) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCustomProto) as usize - ptr as usize }, + 36884usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATM_PROTOCOL), + "::", + stringify!(struCustomProto) + ) + ); +} +pub type NET_DVR_ATM_PROTOCOL = tagNET_DVR_ATM_PROTOCOL; +pub type LPNET_DVR_ATM_PROTOCOL = *mut tagNET_DVR_ATM_PROTOCOL; +#[doc = "DS-6001D/F(begin)"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DECODERINFO { + pub byEncoderIP: [BYTE; 16usize], + pub byEncoderUser: [BYTE; 16usize], + pub byEncoderPasswd: [BYTE; 16usize], + pub bySendMode: BYTE, + pub byEncoderChannel: BYTE, + pub wEncoderPort: WORD, + pub reservedData: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_DECODERINFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(NET_DVR_DECODERINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_DECODERINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEncoderIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERINFO), + "::", + stringify!(byEncoderIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEncoderUser) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERINFO), + "::", + stringify!(byEncoderUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEncoderPasswd) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERINFO), + "::", + stringify!(byEncoderPasswd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySendMode) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERINFO), + "::", + stringify!(bySendMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEncoderChannel) as usize - ptr as usize }, + 49usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERINFO), + "::", + stringify!(byEncoderChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wEncoderPort) as usize - ptr as usize }, + 50usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERINFO), + "::", + stringify!(wEncoderPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).reservedData) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERINFO), + "::", + stringify!(reservedData) + ) + ); +} +#[doc = "DS-6001D/F(begin)"] +pub type LPNET_DVR_DECODERINFO = *mut NET_DVR_DECODERINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DECODERSTATE { + pub byEncoderIP: [BYTE; 16usize], + pub byEncoderUser: [BYTE; 16usize], + pub byEncoderPasswd: [BYTE; 16usize], + pub byEncoderChannel: BYTE, + pub bySendMode: BYTE, + pub wEncoderPort: WORD, + pub dwConnectState: DWORD, + pub reservedData: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_DECODERSTATE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 60usize, + concat!("Size of: ", stringify!(NET_DVR_DECODERSTATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_DECODERSTATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEncoderIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERSTATE), + "::", + stringify!(byEncoderIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEncoderUser) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERSTATE), + "::", + stringify!(byEncoderUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEncoderPasswd) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERSTATE), + "::", + stringify!(byEncoderPasswd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEncoderChannel) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERSTATE), + "::", + stringify!(byEncoderChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySendMode) as usize - ptr as usize }, + 49usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERSTATE), + "::", + stringify!(bySendMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wEncoderPort) as usize - ptr as usize }, + 50usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERSTATE), + "::", + stringify!(wEncoderPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwConnectState) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERSTATE), + "::", + stringify!(dwConnectState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).reservedData) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECODERSTATE), + "::", + stringify!(reservedData) + ) + ); +} +pub type LPNET_DVR_DECODERSTATE = *mut NET_DVR_DECODERSTATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DECCHANINFO { + pub sDVRIP: [::std::os::raw::c_char; 16usize], + pub wDVRPort: WORD, + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub byChannel: BYTE, + pub byLinkMode: BYTE, + pub byLinkType: BYTE, +} +#[test] +fn bindgen_test_layout_NET_DVR_DECCHANINFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 70usize, + concat!("Size of: ", stringify!(NET_DVR_DECCHANINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_DECCHANINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDVRIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCHANINFO), + "::", + stringify!(sDVRIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDVRPort) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCHANINFO), + "::", + stringify!(wDVRPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCHANINFO), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 50usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCHANINFO), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 66usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCHANINFO), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLinkMode) as usize - ptr as usize }, + 67usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCHANINFO), + "::", + stringify!(byLinkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLinkType) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCHANINFO), + "::", + stringify!(byLinkType) + ) + ); +} +pub type LPNET_DVR_DECCHANINFO = *mut NET_DVR_DECCHANINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DECINFO { + pub byPoolChans: BYTE, + pub struchanConInfo: [NET_DVR_DECCHANINFO; 4usize], + pub byEnablePoll: BYTE, + pub byPoolTime: BYTE, +} +#[test] +fn bindgen_test_layout_NET_DVR_DECINFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 284usize, + concat!("Size of: ", stringify!(NET_DVR_DECINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_DECINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPoolChans) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECINFO), + "::", + stringify!(byPoolChans) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struchanConInfo) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECINFO), + "::", + stringify!(struchanConInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnablePoll) as usize - ptr as usize }, + 282usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECINFO), + "::", + stringify!(byEnablePoll) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPoolTime) as usize - ptr as usize }, + 283usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECINFO), + "::", + stringify!(byPoolTime) + ) + ); +} +pub type LPNET_DVR_DECINFO = *mut NET_DVR_DECINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DECCFG { + pub dwSize: DWORD, + pub dwDecChanNum: DWORD, + pub struDecInfo: [NET_DVR_DECINFO; 4usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_DECCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1144usize, + concat!("Size of: ", stringify!(NET_DVR_DECCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_DECCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDecChanNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCFG), + "::", + stringify!(dwDecChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDecInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCFG), + "::", + stringify!(struDecInfo) + ) + ); +} +pub type LPNET_DVR_DECCFG = *mut NET_DVR_DECCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PORTINFO { + pub dwEnableTransPort: DWORD, + pub sDecoderIP: [::std::os::raw::c_char; 16usize], + pub wDecoderPort: WORD, + pub wDVRTransPort: WORD, + pub cReserve: [::std::os::raw::c_char; 4usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_PORTINFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28usize, + concat!("Size of: ", stringify!(NET_DVR_PORTINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_PORTINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnableTransPort) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PORTINFO), + "::", + stringify!(dwEnableTransPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDecoderIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PORTINFO), + "::", + stringify!(sDecoderIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDecoderPort) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PORTINFO), + "::", + stringify!(wDecoderPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDVRTransPort) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PORTINFO), + "::", + stringify!(wDVRTransPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cReserve) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PORTINFO), + "::", + stringify!(cReserve) + ) + ); +} +pub type LPNET_DVR_PORTINFO = *mut NET_DVR_PORTINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PORTCFG { + pub dwSize: DWORD, + pub struTransPortInfo: [NET_DVR_PORTINFO; 2usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_PORTCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 60usize, + concat!("Size of: ", stringify!(NET_DVR_PORTCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_PORTCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PORTCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTransPortInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PORTCFG), + "::", + stringify!(struTransPortInfo) + ) + ); +} +pub type LPNET_DVR_PORTCFG = *mut NET_DVR_PORTCFG; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct NET_DVR_PLAYREMOTEFILE { + pub dwSize: DWORD, + pub sDecoderIP: [::std::os::raw::c_char; 16usize], + pub wDecoderPort: WORD, + pub wLoadMode: WORD, + pub mode_size: NET_DVR_PLAYREMOTEFILE__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union NET_DVR_PLAYREMOTEFILE__bindgen_ty_1 { + pub byFile: [BYTE; 100usize], + pub bytime: NET_DVR_PLAYREMOTEFILE__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PLAYREMOTEFILE__bindgen_ty_1__bindgen_ty_1 { + pub dwChannel: DWORD, + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub struStartTime: NET_DVR_TIME, + pub struStopTime: NET_DVR_TIME, +} +#[test] +fn bindgen_test_layout_NET_DVR_PLAYREMOTEFILE__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 100usize, + concat!( + "Size of: ", + stringify!(NET_DVR_PLAYREMOTEFILE__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(NET_DVR_PLAYREMOTEFILE__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PLAYREMOTEFILE__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PLAYREMOTEFILE__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PLAYREMOTEFILE__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PLAYREMOTEFILE__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PLAYREMOTEFILE__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(struStopTime) + ) + ); +} +#[test] +fn bindgen_test_layout_NET_DVR_PLAYREMOTEFILE__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 100usize, + concat!( + "Size of: ", + stringify!(NET_DVR_PLAYREMOTEFILE__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(NET_DVR_PLAYREMOTEFILE__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFile) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PLAYREMOTEFILE__bindgen_ty_1), + "::", + stringify!(byFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bytime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PLAYREMOTEFILE__bindgen_ty_1), + "::", + stringify!(bytime) + ) + ); +} +#[test] +fn bindgen_test_layout_NET_DVR_PLAYREMOTEFILE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 124usize, + concat!("Size of: ", stringify!(NET_DVR_PLAYREMOTEFILE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_PLAYREMOTEFILE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PLAYREMOTEFILE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDecoderIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PLAYREMOTEFILE), + "::", + stringify!(sDecoderIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDecoderPort) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PLAYREMOTEFILE), + "::", + stringify!(wDecoderPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLoadMode) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PLAYREMOTEFILE), + "::", + stringify!(wLoadMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mode_size) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PLAYREMOTEFILE), + "::", + stringify!(mode_size) + ) + ); +} +pub type LPNET_DVR_PLAYREMOTEFILE = *mut NET_DVR_PLAYREMOTEFILE; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct NET_DVR_DECCHANSTATUS { + pub dwWorkType: DWORD, + pub sDVRIP: [::std::os::raw::c_char; 16usize], + pub wDVRPort: WORD, + pub byChannel: BYTE, + pub byLinkMode: BYTE, + pub dwLinkType: DWORD, + pub objectInfo: NET_DVR_DECCHANSTATUS__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union NET_DVR_DECCHANSTATUS__bindgen_ty_1 { + pub userInfo: NET_DVR_DECCHANSTATUS__bindgen_ty_1__bindgen_ty_1, + pub fileInfo: NET_DVR_DECCHANSTATUS__bindgen_ty_1__bindgen_ty_2, + pub timeInfo: NET_DVR_DECCHANSTATUS__bindgen_ty_1__bindgen_ty_3, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DECCHANSTATUS__bindgen_ty_1__bindgen_ty_1 { + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub cReserve: [::std::os::raw::c_char; 52usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_DECCHANSTATUS__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 100usize, + concat!( + "Size of: ", + stringify!(NET_DVR_DECCHANSTATUS__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(NET_DVR_DECCHANSTATUS__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCHANSTATUS__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCHANSTATUS__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cReserve) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCHANSTATUS__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(cReserve) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DECCHANSTATUS__bindgen_ty_1__bindgen_ty_2 { + pub fileName: [BYTE; 100usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_DECCHANSTATUS__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 100usize, + concat!( + "Size of: ", + stringify!(NET_DVR_DECCHANSTATUS__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(NET_DVR_DECCHANSTATUS__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fileName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCHANSTATUS__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(fileName) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DECCHANSTATUS__bindgen_ty_1__bindgen_ty_3 { + pub dwChannel: DWORD, + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub struStartTime: NET_DVR_TIME, + pub struStopTime: NET_DVR_TIME, +} +#[test] +fn bindgen_test_layout_NET_DVR_DECCHANSTATUS__bindgen_ty_1__bindgen_ty_3() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 100usize, + concat!( + "Size of: ", + stringify!(NET_DVR_DECCHANSTATUS__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(NET_DVR_DECCHANSTATUS__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCHANSTATUS__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCHANSTATUS__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCHANSTATUS__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCHANSTATUS__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCHANSTATUS__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(struStopTime) + ) + ); +} +#[test] +fn bindgen_test_layout_NET_DVR_DECCHANSTATUS__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 100usize, + concat!("Size of: ", stringify!(NET_DVR_DECCHANSTATUS__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(NET_DVR_DECCHANSTATUS__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).userInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCHANSTATUS__bindgen_ty_1), + "::", + stringify!(userInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fileInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCHANSTATUS__bindgen_ty_1), + "::", + stringify!(fileInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).timeInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCHANSTATUS__bindgen_ty_1), + "::", + stringify!(timeInfo) + ) + ); +} +#[test] +fn bindgen_test_layout_NET_DVR_DECCHANSTATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(NET_DVR_DECCHANSTATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_DECCHANSTATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWorkType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCHANSTATUS), + "::", + stringify!(dwWorkType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDVRIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCHANSTATUS), + "::", + stringify!(sDVRIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDVRPort) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCHANSTATUS), + "::", + stringify!(wDVRPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCHANSTATUS), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLinkMode) as usize - ptr as usize }, + 23usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCHANSTATUS), + "::", + stringify!(byLinkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLinkType) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCHANSTATUS), + "::", + stringify!(dwLinkType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).objectInfo) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECCHANSTATUS), + "::", + stringify!(objectInfo) + ) + ); +} +pub type LPNET_DVR_DECCHANSTATUS = *mut NET_DVR_DECCHANSTATUS; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct NET_DVR_DECSTATUS { + pub dwSize: DWORD, + pub struDecState: [NET_DVR_DECCHANSTATUS; 4usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_DECSTATUS() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 516usize, + concat!("Size of: ", stringify!(NET_DVR_DECSTATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_DECSTATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECSTATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDecState) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DECSTATUS), + "::", + stringify!(struDecState) + ) + ); +} +pub type LPNET_DVR_DECSTATUS = *mut NET_DVR_DECSTATUS; +#[doc = "DS-6001D/F(end)"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_SHOWSTRINGINFO { + pub wShowString: WORD, + pub wStringSize: WORD, + pub wShowStringTopLeftX: WORD, + pub wShowStringTopLeftY: WORD, + pub sString: [::std::os::raw::c_char; 44usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_SHOWSTRINGINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 52usize, + concat!("Size of: ", stringify!(NET_DVR_SHOWSTRINGINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_SHOWSTRINGINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wShowString) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SHOWSTRINGINFO), + "::", + stringify!(wShowString) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStringSize) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SHOWSTRINGINFO), + "::", + stringify!(wStringSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wShowStringTopLeftX) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SHOWSTRINGINFO), + "::", + stringify!(wShowStringTopLeftX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wShowStringTopLeftY) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SHOWSTRINGINFO), + "::", + stringify!(wShowStringTopLeftY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sString) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SHOWSTRINGINFO), + "::", + stringify!(sString) + ) + ); +} +#[doc = "DS-6001D/F(end)"] +pub type LPNET_DVR_SHOWSTRINGINFO = *mut NET_DVR_SHOWSTRINGINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_SHOWSTRING_V30 { + pub dwSize: DWORD, + pub struStringInfo: [NET_DVR_SHOWSTRINGINFO; 8usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_SHOWSTRING_V30() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 420usize, + concat!("Size of: ", stringify!(NET_DVR_SHOWSTRING_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_SHOWSTRING_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SHOWSTRING_V30), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStringInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SHOWSTRING_V30), + "::", + stringify!(struStringInfo) + ) + ); +} +pub type LPNET_DVR_SHOWSTRING_V30 = *mut NET_DVR_SHOWSTRING_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_SHOWSTRING_EX { + pub dwSize: DWORD, + pub struStringInfo: [NET_DVR_SHOWSTRINGINFO; 8usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_SHOWSTRING_EX() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 420usize, + concat!("Size of: ", stringify!(NET_DVR_SHOWSTRING_EX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_SHOWSTRING_EX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SHOWSTRING_EX), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStringInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SHOWSTRING_EX), + "::", + stringify!(struStringInfo) + ) + ); +} +pub type LPNET_DVR_SHOWSTRING_EX = *mut NET_DVR_SHOWSTRING_EX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_SHOWSTRING { + pub dwSize: DWORD, + pub struStringInfo: [NET_DVR_SHOWSTRINGINFO; 4usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_SHOWSTRING() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 212usize, + concat!("Size of: ", stringify!(NET_DVR_SHOWSTRING)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_SHOWSTRING)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SHOWSTRING), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStringInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SHOWSTRING), + "::", + stringify!(struStringInfo) + ) + ); +} +pub type LPNET_DVR_SHOWSTRING = *mut NET_DVR_SHOWSTRING; +#[doc = "DS9000�����ṹ(begin)"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_EMAILCFG_V30 { + pub dwSize: DWORD, + pub sAccount: [BYTE; 32usize], + pub sPassword: [BYTE; 32usize], + pub struSender: NET_DVR_EMAILCFG_V30__bindgen_ty_1, + pub sSmtpServer: [BYTE; 48usize], + pub sPop3Server: [BYTE; 48usize], + pub struReceiver: [NET_DVR_EMAILCFG_V30__bindgen_ty_2; 3usize], + pub byAttachment: BYTE, + pub bySmtpServerVerify: BYTE, + pub byMailInterval: BYTE, + pub byEnableSSL: BYTE, + pub wSmtpPort: WORD, + pub byEnableTLS: BYTE, + pub byStartTLS: BYTE, + pub byRes: [BYTE; 72usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_EMAILCFG_V30__bindgen_ty_1 { + pub sName: [BYTE; 32usize], + pub sAddress: [BYTE; 48usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_EMAILCFG_V30__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(NET_DVR_EMAILCFG_V30__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(NET_DVR_EMAILCFG_V30__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG_V30__bindgen_ty_1), + "::", + stringify!(sName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sAddress) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG_V30__bindgen_ty_1), + "::", + stringify!(sAddress) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_EMAILCFG_V30__bindgen_ty_2 { + pub sName: [BYTE; 32usize], + pub sAddress: [BYTE; 48usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_EMAILCFG_V30__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(NET_DVR_EMAILCFG_V30__bindgen_ty_2)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(NET_DVR_EMAILCFG_V30__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG_V30__bindgen_ty_2), + "::", + stringify!(sName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sAddress) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG_V30__bindgen_ty_2), + "::", + stringify!(sAddress) + ) + ); +} +#[test] +fn bindgen_test_layout_NET_DVR_EMAILCFG_V30() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 564usize, + concat!("Size of: ", stringify!(NET_DVR_EMAILCFG_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_EMAILCFG_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG_V30), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sAccount) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG_V30), + "::", + stringify!(sAccount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG_V30), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSender) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG_V30), + "::", + stringify!(struSender) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSmtpServer) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG_V30), + "::", + stringify!(sSmtpServer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPop3Server) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG_V30), + "::", + stringify!(sPop3Server) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struReceiver) as usize - ptr as usize }, + 244usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG_V30), + "::", + stringify!(struReceiver) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAttachment) as usize - ptr as usize }, + 484usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG_V30), + "::", + stringify!(byAttachment) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySmtpServerVerify) as usize - ptr as usize }, + 485usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG_V30), + "::", + stringify!(bySmtpServerVerify) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMailInterval) as usize - ptr as usize }, + 486usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG_V30), + "::", + stringify!(byMailInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableSSL) as usize - ptr as usize }, + 487usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG_V30), + "::", + stringify!(byEnableSSL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSmtpPort) as usize - ptr as usize }, + 488usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG_V30), + "::", + stringify!(wSmtpPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableTLS) as usize - ptr as usize }, + 490usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG_V30), + "::", + stringify!(byEnableTLS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartTLS) as usize - ptr as usize }, + 491usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG_V30), + "::", + stringify!(byStartTLS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 492usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG_V30), + "::", + stringify!(byRes) + ) + ); +} +#[doc = "DS9000�����ṹ(begin)"] +pub type LPNET_DVR_EMAILCFG_V30 = *mut NET_DVR_EMAILCFG_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_CRUISE_PARA { + pub dwSize: DWORD, + pub byPresetNo: [BYTE; 32usize], + pub byCruiseSpeed: [BYTE; 32usize], + pub wDwellTime: [WORD; 32usize], + pub byEnableThisCruise: BYTE, + pub res: [BYTE; 15usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_CRUISE_PARA() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!("Size of: ", stringify!(NET_DVR_CRUISE_PARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_CRUISE_PARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CRUISE_PARA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPresetNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CRUISE_PARA), + "::", + stringify!(byPresetNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCruiseSpeed) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CRUISE_PARA), + "::", + stringify!(byCruiseSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDwellTime) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CRUISE_PARA), + "::", + stringify!(wDwellTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableThisCruise) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CRUISE_PARA), + "::", + stringify!(byEnableThisCruise) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).res) as usize - ptr as usize }, + 133usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CRUISE_PARA), + "::", + stringify!(res) + ) + ); +} +pub type LPNET_DVR_CRUISE_PARA = *mut NET_DVR_CRUISE_PARA; +#[doc = "DS9000�����ṹ(end)"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_TIMEPOINT { + pub dwMonth: DWORD, + pub dwWeekNo: DWORD, + pub dwWeekDate: DWORD, + pub dwHour: DWORD, + pub dwMin: DWORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_TIMEPOINT() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(NET_DVR_TIMEPOINT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_TIMEPOINT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMonth) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_TIMEPOINT), + "::", + stringify!(dwMonth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWeekNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_TIMEPOINT), + "::", + stringify!(dwWeekNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWeekDate) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_TIMEPOINT), + "::", + stringify!(dwWeekDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHour) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_TIMEPOINT), + "::", + stringify!(dwHour) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMin) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_TIMEPOINT), + "::", + stringify!(dwMin) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_ZONEANDDST { + pub dwSize: DWORD, + pub dwZoneIndex: DWORD, + pub byRes1: [BYTE; 12usize], + pub dwEnableDST: DWORD, + pub byDSTBias: BYTE, + pub byRes2: [BYTE; 3usize], + pub struBeginPoint: NET_DVR_TIMEPOINT, + pub struEndPoint: NET_DVR_TIMEPOINT, +} +#[test] +fn bindgen_test_layout_NET_DVR_ZONEANDDST() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(NET_DVR_ZONEANDDST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_ZONEANDDST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ZONEANDDST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwZoneIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ZONEANDDST), + "::", + stringify!(dwZoneIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ZONEANDDST), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnableDST) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ZONEANDDST), + "::", + stringify!(dwEnableDST) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDSTBias) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ZONEANDDST), + "::", + stringify!(byDSTBias) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ZONEANDDST), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBeginPoint) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ZONEANDDST), + "::", + stringify!(struBeginPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndPoint) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ZONEANDDST), + "::", + stringify!(struEndPoint) + ) + ); +} +pub type LPNET_DVR_ZONEANDDST = *mut NET_DVR_ZONEANDDST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_JPEGPARA { + pub wPicSize: WORD, + pub wPicQuality: WORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_JPEGPARA() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(NET_DVR_JPEGPARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_JPEGPARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPicSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_JPEGPARA), + "::", + stringify!(wPicSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPicQuality) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_JPEGPARA), + "::", + stringify!(wPicQuality) + ) + ); +} +pub type LPNET_DVR_JPEGPARA = *mut NET_DVR_JPEGPARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_RECT { + pub fX: f32, + pub fY: f32, + pub fWidth: f32, + pub fHeight: f32, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_RECT() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_VCA_RECT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_RECT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fX) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RECT), + "::", + stringify!(fX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fY) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RECT), + "::", + stringify!(fY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fWidth) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RECT), + "::", + stringify!(fWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fHeight) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RECT), + "::", + stringify!(fHeight) + ) + ); +} +pub type NET_VCA_RECT = tagNET_VCA_RECT; +pub type LPNET_VCA_RECT = *mut tagNET_VCA_RECT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_JPEGPICTURE_WITH_APPENDDATA { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub dwJpegPicLen: DWORD, + pub pJpegPicBuff: *mut ::std::os::raw::c_char, + pub dwJpegPicWidth: DWORD, + pub dwJpegPicHeight: DWORD, + pub dwP2PDataLen: DWORD, + pub pP2PDataBuff: *mut ::std::os::raw::c_char, + pub byIsFreezedata: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwVisiblePicLen: DWORD, + pub pVisiblePicBuff: *mut ::std::os::raw::c_char, + pub struThermalValidRect: NET_VCA_RECT, + pub struVisibleValidRect: NET_VCA_RECT, + pub byRes: [BYTE; 208usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_JPEGPICTURE_WITH_APPENDDATA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 304usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_JPEGPICTURE_WITH_APPENDDATA) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_JPEGPICTURE_WITH_APPENDDATA) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JPEGPICTURE_WITH_APPENDDATA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JPEGPICTURE_WITH_APPENDDATA), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwJpegPicLen) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JPEGPICTURE_WITH_APPENDDATA), + "::", + stringify!(dwJpegPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pJpegPicBuff) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JPEGPICTURE_WITH_APPENDDATA), + "::", + stringify!(pJpegPicBuff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwJpegPicWidth) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JPEGPICTURE_WITH_APPENDDATA), + "::", + stringify!(dwJpegPicWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwJpegPicHeight) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JPEGPICTURE_WITH_APPENDDATA), + "::", + stringify!(dwJpegPicHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwP2PDataLen) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JPEGPICTURE_WITH_APPENDDATA), + "::", + stringify!(dwP2PDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pP2PDataBuff) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JPEGPICTURE_WITH_APPENDDATA), + "::", + stringify!(pP2PDataBuff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsFreezedata) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JPEGPICTURE_WITH_APPENDDATA), + "::", + stringify!(byIsFreezedata) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 49usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JPEGPICTURE_WITH_APPENDDATA), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVisiblePicLen) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JPEGPICTURE_WITH_APPENDDATA), + "::", + stringify!(dwVisiblePicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pVisiblePicBuff) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JPEGPICTURE_WITH_APPENDDATA), + "::", + stringify!(pVisiblePicBuff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struThermalValidRect) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JPEGPICTURE_WITH_APPENDDATA), + "::", + stringify!(struThermalValidRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVisibleValidRect) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JPEGPICTURE_WITH_APPENDDATA), + "::", + stringify!(struVisibleValidRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JPEGPICTURE_WITH_APPENDDATA), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_JPEGPICTURE_WITH_APPENDDATA = tagNET_DVR_JPEGPICTURE_WITH_APPENDDATA; +pub type LPNET_DVR_JPEGPICTURE_WITH_APPENDDATA = *mut tagNET_DVR_JPEGPICTURE_WITH_APPENDDATA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PICPARAM_V50 { + pub struParam: NET_DVR_JPEGPARA, + pub byPicFormat: BYTE, + pub byCapturePicType: BYTE, + pub bySceneID: BYTE, + pub byRes: [BYTE; 253usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_PICPARAM_V50() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(NET_DVR_PICPARAM_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_PICPARAM_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICPARAM_V50), + "::", + stringify!(struParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicFormat) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICPARAM_V50), + "::", + stringify!(byPicFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCapturePicType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICPARAM_V50), + "::", + stringify!(byCapturePicType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySceneID) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICPARAM_V50), + "::", + stringify!(bySceneID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICPARAM_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_PICPARAM_V50 = *mut NET_DVR_PICPARAM_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_AUXOUTCFG { + pub dwSize: DWORD, + pub dwAlarmOutChan: DWORD, + pub dwAlarmChanSwitchTime: DWORD, + pub dwAuxSwitchTime: [DWORD; 4usize], + pub byAuxOrder: [[BYTE; 16usize]; 4usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_AUXOUTCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(NET_DVR_AUXOUTCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_AUXOUTCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_AUXOUTCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmOutChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_AUXOUTCFG), + "::", + stringify!(dwAlarmOutChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmChanSwitchTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_AUXOUTCFG), + "::", + stringify!(dwAlarmChanSwitchTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAuxSwitchTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_AUXOUTCFG), + "::", + stringify!(dwAuxSwitchTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAuxOrder) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_AUXOUTCFG), + "::", + stringify!(byAuxOrder) + ) + ); +} +pub type LPNET_DVR_AUXOUTCFG = *mut NET_DVR_AUXOUTCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_NTPPARA { + pub sNTPServer: [BYTE; 64usize], + pub wInterval: WORD, + pub byEnableNTP: BYTE, + pub cTimeDifferenceH: ::std::os::raw::c_schar, + pub cTimeDifferenceM: ::std::os::raw::c_schar, + pub res1: BYTE, + pub wNtpPort: WORD, + pub res2: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_NTPPARA() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(NET_DVR_NTPPARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_NTPPARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sNTPServer) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NTPPARA), + "::", + stringify!(sNTPServer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInterval) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NTPPARA), + "::", + stringify!(wInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableNTP) as usize - ptr as usize }, + 66usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NTPPARA), + "::", + stringify!(byEnableNTP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceH) as usize - ptr as usize }, + 67usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NTPPARA), + "::", + stringify!(cTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceM) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NTPPARA), + "::", + stringify!(cTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).res1) as usize - ptr as usize }, + 69usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NTPPARA), + "::", + stringify!(res1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wNtpPort) as usize - ptr as usize }, + 70usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NTPPARA), + "::", + stringify!(wNtpPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).res2) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NTPPARA), + "::", + stringify!(res2) + ) + ); +} +pub type LPNET_DVR_NTPPARA = *mut NET_DVR_NTPPARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DDNSPARA { + pub sUsername: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub sDomainName: [BYTE; 64usize], + pub byEnableDDNS: BYTE, + pub res: [BYTE; 15usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_DDNSPARA() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(NET_DVR_DDNSPARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_DDNSPARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUsername) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DDNSPARA), + "::", + stringify!(sUsername) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DDNSPARA), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDomainName) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DDNSPARA), + "::", + stringify!(sDomainName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableDDNS) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DDNSPARA), + "::", + stringify!(byEnableDDNS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).res) as usize - ptr as usize }, + 113usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DDNSPARA), + "::", + stringify!(res) + ) + ); +} +pub type LPNET_DVR_DDNSPARA = *mut NET_DVR_DDNSPARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DDNSPARA_EX { + pub byHostIndex: BYTE, + pub byEnableDDNS: BYTE, + pub wDDNSPort: WORD, + pub sUsername: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub sDomainName: [BYTE; 64usize], + pub sServerName: [BYTE; 64usize], + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_DDNSPARA_EX() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 196usize, + concat!("Size of: ", stringify!(NET_DVR_DDNSPARA_EX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_DDNSPARA_EX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHostIndex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DDNSPARA_EX), + "::", + stringify!(byHostIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableDDNS) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DDNSPARA_EX), + "::", + stringify!(byEnableDDNS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDDNSPort) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DDNSPARA_EX), + "::", + stringify!(wDDNSPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUsername) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DDNSPARA_EX), + "::", + stringify!(sUsername) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DDNSPARA_EX), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDomainName) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DDNSPARA_EX), + "::", + stringify!(sDomainName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sServerName) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DDNSPARA_EX), + "::", + stringify!(sServerName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 180usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DDNSPARA_EX), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_DDNSPARA_EX = *mut NET_DVR_DDNSPARA_EX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DDNSPARA_V30 { + pub byEnableDDNS: BYTE, + pub byHostIndex: BYTE, + pub byRes1: [BYTE; 2usize], + pub struDDNS: [NET_DVR_DDNSPARA_V30__bindgen_ty_1; 10usize], + pub byRes2: [BYTE; 16usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DDNSPARA_V30__bindgen_ty_1 { + pub sUsername: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub sDomainName: [BYTE; 64usize], + pub sServerName: [BYTE; 64usize], + pub wDDNSPort: WORD, + pub wCountryID: WORD, + pub byStatus: BYTE, + pub byRes: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_DDNSPARA_V30__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 188usize, + concat!("Size of: ", stringify!(NET_DVR_DDNSPARA_V30__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(NET_DVR_DDNSPARA_V30__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUsername) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DDNSPARA_V30__bindgen_ty_1), + "::", + stringify!(sUsername) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DDNSPARA_V30__bindgen_ty_1), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDomainName) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DDNSPARA_V30__bindgen_ty_1), + "::", + stringify!(sDomainName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sServerName) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DDNSPARA_V30__bindgen_ty_1), + "::", + stringify!(sServerName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDDNSPort) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DDNSPARA_V30__bindgen_ty_1), + "::", + stringify!(wDDNSPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCountryID) as usize - ptr as usize }, + 178usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DDNSPARA_V30__bindgen_ty_1), + "::", + stringify!(wCountryID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 180usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DDNSPARA_V30__bindgen_ty_1), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 181usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DDNSPARA_V30__bindgen_ty_1), + "::", + stringify!(byRes) + ) + ); +} +#[test] +fn bindgen_test_layout_NET_DVR_DDNSPARA_V30() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1900usize, + concat!("Size of: ", stringify!(NET_DVR_DDNSPARA_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_DDNSPARA_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableDDNS) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DDNSPARA_V30), + "::", + stringify!(byEnableDDNS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHostIndex) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DDNSPARA_V30), + "::", + stringify!(byHostIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DDNSPARA_V30), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDDNS) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DDNSPARA_V30), + "::", + stringify!(struDDNS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1884usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DDNSPARA_V30), + "::", + stringify!(byRes2) + ) + ); +} +pub type LPNET_DVR_DDNSPARA_V30 = *mut NET_DVR_DDNSPARA_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_EMAILPARA { + pub sUsername: [BYTE; 64usize], + pub sPassword: [BYTE; 64usize], + pub sSmtpServer: [BYTE; 64usize], + pub sPop3Server: [BYTE; 64usize], + pub sMailAddr: [BYTE; 64usize], + pub sEventMailAddr1: [BYTE; 64usize], + pub sEventMailAddr2: [BYTE; 64usize], + pub res: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_EMAILPARA() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 464usize, + concat!("Size of: ", stringify!(NET_DVR_EMAILPARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_EMAILPARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUsername) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILPARA), + "::", + stringify!(sUsername) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILPARA), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSmtpServer) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILPARA), + "::", + stringify!(sSmtpServer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPop3Server) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILPARA), + "::", + stringify!(sPop3Server) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sMailAddr) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILPARA), + "::", + stringify!(sMailAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sEventMailAddr1) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILPARA), + "::", + stringify!(sEventMailAddr1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sEventMailAddr2) as usize - ptr as usize }, + 384usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILPARA), + "::", + stringify!(sEventMailAddr2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).res) as usize - ptr as usize }, + 448usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILPARA), + "::", + stringify!(res) + ) + ); +} +pub type LPNET_DVR_EMAILPARA = *mut NET_DVR_EMAILPARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_NETAPPCFG { + pub dwSize: DWORD, + pub sDNSIp: [::std::os::raw::c_char; 16usize], + pub struNtpClientParam: NET_DVR_NTPPARA, + pub struDDNSClientParam: NET_DVR_DDNSPARA, + pub res: [BYTE; 464usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_NETAPPCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 692usize, + concat!("Size of: ", stringify!(NET_DVR_NETAPPCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_NETAPPCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETAPPCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDNSIp) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETAPPCFG), + "::", + stringify!(sDNSIp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNtpClientParam) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETAPPCFG), + "::", + stringify!(struNtpClientParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDDNSClientParam) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETAPPCFG), + "::", + stringify!(struDDNSClientParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).res) as usize - ptr as usize }, + 228usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETAPPCFG), + "::", + stringify!(res) + ) + ); +} +pub type LPNET_DVR_NETAPPCFG = *mut NET_DVR_NETAPPCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_SINGLE_NFS { + pub sNfsHostIPAddr: [::std::os::raw::c_char; 16usize], + pub sNfsDirectory: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_SINGLE_NFS() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!("Size of: ", stringify!(NET_DVR_SINGLE_NFS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_SINGLE_NFS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sNfsHostIPAddr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_NFS), + "::", + stringify!(sNfsHostIPAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sNfsDirectory) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SINGLE_NFS), + "::", + stringify!(sNfsDirectory) + ) + ); +} +pub type LPNET_DVR_SINGLE_NFS = *mut NET_DVR_SINGLE_NFS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_NFSCFG { + pub dwSize: DWORD, + pub struNfsDiskParam: [NET_DVR_SINGLE_NFS; 8usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_NFSCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1156usize, + concat!("Size of: ", stringify!(NET_DVR_NFSCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_NFSCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NFSCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNfsDiskParam) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NFSCFG), + "::", + stringify!(struNfsDiskParam) + ) + ); +} +pub type LPNET_DVR_NFSCFG = *mut NET_DVR_NFSCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ISCSI_CFG { + pub dwSize: DWORD, + pub wVrmPort: WORD, + pub byEnable: BYTE, + pub byRes: [BYTE; 69usize], + pub struVrmAddr: NET_DVR_IPADDR, + pub chNvtIndexCode: [::std::os::raw::c_char; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ISCSI_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 284usize, + concat!("Size of: ", stringify!(tagNET_DVR_ISCSI_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ISCSI_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ISCSI_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wVrmPort) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ISCSI_CFG), + "::", + stringify!(wVrmPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ISCSI_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ISCSI_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVrmAddr) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ISCSI_CFG), + "::", + stringify!(struVrmAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).chNvtIndexCode) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ISCSI_CFG), + "::", + stringify!(chNvtIndexCode) + ) + ); +} +pub type NET_DVR_ISCSI_CFG = tagNET_DVR_ISCSI_CFG; +pub type LPNET_DVR_ISCSI_CFG = *mut tagNET_DVR_ISCSI_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_CRUISE_POINT { + pub PresetNum: BYTE, + pub Dwell: BYTE, + pub Speed: BYTE, + pub Reserve: BYTE, +} +#[test] +fn bindgen_test_layout_NET_DVR_CRUISE_POINT() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(NET_DVR_CRUISE_POINT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_CRUISE_POINT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).PresetNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CRUISE_POINT), + "::", + stringify!(PresetNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Dwell) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CRUISE_POINT), + "::", + stringify!(Dwell) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Speed) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CRUISE_POINT), + "::", + stringify!(Speed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Reserve) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CRUISE_POINT), + "::", + stringify!(Reserve) + ) + ); +} +pub type LPNET_DVR_CRUISE_POINT = *mut NET_DVR_CRUISE_POINT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_CRUISE_RET { + pub struCruisePoint: [NET_DVR_CRUISE_POINT; 32usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_CRUISE_RET() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(NET_DVR_CRUISE_RET)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_CRUISE_RET)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCruisePoint) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CRUISE_RET), + "::", + stringify!(struCruisePoint) + ) + ); +} +pub type LPNET_DVR_CRUISE_RET = *mut NET_DVR_CRUISE_RET; +#[doc = "��·������(begin)"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_NETCFG_OTHER { + pub dwSize: DWORD, + pub sFirstDNSIP: [::std::os::raw::c_char; 16usize], + pub sSecondDNSIP: [::std::os::raw::c_char; 16usize], + pub sRes: [::std::os::raw::c_char; 32usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_NETCFG_OTHER() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(NET_DVR_NETCFG_OTHER)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_NETCFG_OTHER)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_OTHER), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFirstDNSIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_OTHER), + "::", + stringify!(sFirstDNSIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSecondDNSIP) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_OTHER), + "::", + stringify!(sSecondDNSIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sRes) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NETCFG_OTHER), + "::", + stringify!(sRes) + ) + ); +} +#[doc = "��·������(begin)"] +pub type LPNET_DVR_NETCFG_OTHER = *mut NET_DVR_NETCFG_OTHER; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_MATRIX_DECINFO { + pub sDVRIP: [::std::os::raw::c_char; 16usize], + pub wDVRPort: WORD, + pub byChannel: BYTE, + pub byTransProtocol: BYTE, + pub byTransMode: BYTE, + pub byRes: [BYTE; 3usize], + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_MATRIX_DECINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(NET_DVR_MATRIX_DECINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_MATRIX_DECINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDVRIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DECINFO), + "::", + stringify!(sDVRIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDVRPort) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DECINFO), + "::", + stringify!(wDVRPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DECINFO), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransProtocol) as usize - ptr as usize }, + 19usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DECINFO), + "::", + stringify!(byTransProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransMode) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DECINFO), + "::", + stringify!(byTransMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DECINFO), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DECINFO), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DECINFO), + "::", + stringify!(sPassword) + ) + ); +} +pub type LPNET_DVR_MATRIX_DECINFO = *mut NET_DVR_MATRIX_DECINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_MATRIX_DYNAMIC_DEC { + pub dwSize: DWORD, + pub struDecChanInfo: NET_DVR_MATRIX_DECINFO, +} +#[test] +fn bindgen_test_layout_NET_DVR_MATRIX_DYNAMIC_DEC() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(NET_DVR_MATRIX_DYNAMIC_DEC)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_MATRIX_DYNAMIC_DEC)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DYNAMIC_DEC), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDecChanInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DYNAMIC_DEC), + "::", + stringify!(struDecChanInfo) + ) + ); +} +pub type LPNET_DVR_MATRIX_DYNAMIC_DEC = *mut NET_DVR_MATRIX_DYNAMIC_DEC; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_MATRIX_DEC_CHAN_STATUS { + pub dwSize: DWORD, + pub dwIsLinked: DWORD, + pub dwStreamCpRate: DWORD, + pub cRes: [::std::os::raw::c_char; 64usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_MATRIX_DEC_CHAN_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(NET_DVR_MATRIX_DEC_CHAN_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_MATRIX_DEC_CHAN_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_CHAN_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIsLinked) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_CHAN_STATUS), + "::", + stringify!(dwIsLinked) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStreamCpRate) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_CHAN_STATUS), + "::", + stringify!(dwStreamCpRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_CHAN_STATUS), + "::", + stringify!(cRes) + ) + ); +} +pub type LPNET_DVR_MATRIX_DEC_CHAN_STATUS = *mut NET_DVR_MATRIX_DEC_CHAN_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_MATRIX_DEC_CHAN_INFO { + pub dwSize: DWORD, + pub struDecChanInfo: NET_DVR_MATRIX_DECINFO, + pub dwDecState: DWORD, + pub StartTime: NET_DVR_TIME, + pub StopTime: NET_DVR_TIME, + pub sFileName: [::std::os::raw::c_char; 128usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_MATRIX_DEC_CHAN_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(NET_DVR_MATRIX_DEC_CHAN_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_MATRIX_DEC_CHAN_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_CHAN_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDecChanInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_CHAN_INFO), + "::", + stringify!(struDecChanInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDecState) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_CHAN_INFO), + "::", + stringify!(dwDecState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).StartTime) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_CHAN_INFO), + "::", + stringify!(StartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).StopTime) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_CHAN_INFO), + "::", + stringify!(StopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_CHAN_INFO), + "::", + stringify!(sFileName) + ) + ); +} +pub type LPNET_DVR_MATRIX_DEC_CHAN_INFO = *mut NET_DVR_MATRIX_DEC_CHAN_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_MATRIX_DECCHANINFO { + pub dwEnable: DWORD, + pub struDecChanInfo: NET_DVR_MATRIX_DECINFO, +} +#[test] +fn bindgen_test_layout_NET_DVR_MATRIX_DECCHANINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(NET_DVR_MATRIX_DECCHANINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_MATRIX_DECCHANINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DECCHANINFO), + "::", + stringify!(dwEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDecChanInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DECCHANINFO), + "::", + stringify!(struDecChanInfo) + ) + ); +} +pub type LPNET_DVR_MATRIX_DECCHANINFO = *mut NET_DVR_MATRIX_DECCHANINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_MATRIX_LOOP_DECINFO { + pub dwSize: DWORD, + pub dwPoolTime: DWORD, + pub struchanConInfo: [NET_DVR_MATRIX_DECCHANINFO; 16usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_MATRIX_LOOP_DECINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1224usize, + concat!("Size of: ", stringify!(NET_DVR_MATRIX_LOOP_DECINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_MATRIX_LOOP_DECINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_LOOP_DECINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPoolTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_LOOP_DECINFO), + "::", + stringify!(dwPoolTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struchanConInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_LOOP_DECINFO), + "::", + stringify!(struchanConInfo) + ) + ); +} +pub type LPNET_DVR_MATRIX_LOOP_DECINFO = *mut NET_DVR_MATRIX_LOOP_DECINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TTY_CONFIG { + pub baudrate: BYTE, + pub databits: BYTE, + pub stopbits: BYTE, + pub parity: BYTE, + pub flowcontrol: BYTE, + pub res: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_TTY_CONFIG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(TTY_CONFIG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(TTY_CONFIG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).baudrate) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(TTY_CONFIG), + "::", + stringify!(baudrate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).databits) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(TTY_CONFIG), + "::", + stringify!(databits) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).stopbits) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(TTY_CONFIG), + "::", + stringify!(stopbits) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).parity) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(TTY_CONFIG), + "::", + stringify!(parity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).flowcontrol) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(TTY_CONFIG), + "::", + stringify!(flowcontrol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).res) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(TTY_CONFIG), + "::", + stringify!(res) + ) + ); +} +pub type LPTTY_CONFIG = *mut TTY_CONFIG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_MATRIX_TRAN_CHAN_INFO { + pub byTranChanEnable: BYTE, + pub byLocalSerialDevice: BYTE, + pub byRemoteSerialDevice: BYTE, + pub res1: BYTE, + pub sRemoteDevIP: [::std::os::raw::c_char; 16usize], + pub wRemoteDevPort: WORD, + pub res2: [BYTE; 2usize], + pub RemoteSerialDevCfg: TTY_CONFIG, +} +#[test] +fn bindgen_test_layout_NET_DVR_MATRIX_TRAN_CHAN_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(NET_DVR_MATRIX_TRAN_CHAN_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_MATRIX_TRAN_CHAN_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTranChanEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_TRAN_CHAN_INFO), + "::", + stringify!(byTranChanEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalSerialDevice) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_TRAN_CHAN_INFO), + "::", + stringify!(byLocalSerialDevice) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRemoteSerialDevice) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_TRAN_CHAN_INFO), + "::", + stringify!(byRemoteSerialDevice) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).res1) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_TRAN_CHAN_INFO), + "::", + stringify!(res1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sRemoteDevIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_TRAN_CHAN_INFO), + "::", + stringify!(sRemoteDevIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRemoteDevPort) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_TRAN_CHAN_INFO), + "::", + stringify!(wRemoteDevPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).res2) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_TRAN_CHAN_INFO), + "::", + stringify!(res2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).RemoteSerialDevCfg) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_TRAN_CHAN_INFO), + "::", + stringify!(RemoteSerialDevCfg) + ) + ); +} +pub type LPNET_DVR_MATRIX_TRAN_CHAN_INFO = *mut NET_DVR_MATRIX_TRAN_CHAN_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_MATRIX_TRAN_CHAN_CONFIG { + pub dwSize: DWORD, + pub by232IsDualChan: BYTE, + pub by485IsDualChan: BYTE, + pub res: [BYTE; 2usize], + pub struTranInfo: [NET_DVR_MATRIX_TRAN_CHAN_INFO; 64usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_MATRIX_TRAN_CHAN_CONFIG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2056usize, + concat!("Size of: ", stringify!(NET_DVR_MATRIX_TRAN_CHAN_CONFIG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_MATRIX_TRAN_CHAN_CONFIG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_TRAN_CHAN_CONFIG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).by232IsDualChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_TRAN_CHAN_CONFIG), + "::", + stringify!(by232IsDualChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).by485IsDualChan) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_TRAN_CHAN_CONFIG), + "::", + stringify!(by485IsDualChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).res) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_TRAN_CHAN_CONFIG), + "::", + stringify!(res) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTranInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_TRAN_CHAN_CONFIG), + "::", + stringify!(struTranInfo) + ) + ); +} +pub type LPNET_DVR_MATRIX_TRAN_CHAN_CONFIG = *mut NET_DVR_MATRIX_TRAN_CHAN_CONFIG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_MATRIX_DEC_REMOTE_PLAY { + pub dwSize: DWORD, + pub sDVRIP: [::std::os::raw::c_char; 16usize], + pub wDVRPort: WORD, + pub byChannel: BYTE, + pub byReserve: BYTE, + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub dwPlayMode: DWORD, + pub StartTime: NET_DVR_TIME, + pub StopTime: NET_DVR_TIME, + pub sFileName: [::std::os::raw::c_char; 128usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_MATRIX_DEC_REMOTE_PLAY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 252usize, + concat!("Size of: ", stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDVRIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY), + "::", + stringify!(sDVRIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDVRPort) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY), + "::", + stringify!(wDVRPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReserve) as usize - ptr as usize }, + 23usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY), + "::", + stringify!(byReserve) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlayMode) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY), + "::", + stringify!(dwPlayMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).StartTime) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY), + "::", + stringify!(StartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).StopTime) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY), + "::", + stringify!(StopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY), + "::", + stringify!(sFileName) + ) + ); +} +pub type LPNET_DVR_MATRIX_DEC_REMOTE_PLAY = *mut NET_DVR_MATRIX_DEC_REMOTE_PLAY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_MATRIX_DEC_REMOTE_PLAY_CONTROL { + pub dwSize: DWORD, + pub dwPlayCmd: DWORD, + pub dwCmdParam: DWORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_MATRIX_DEC_REMOTE_PLAY_CONTROL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!( + "Size of: ", + stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY_CONTROL) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY_CONTROL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY_CONTROL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlayCmd) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY_CONTROL), + "::", + stringify!(dwPlayCmd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCmdParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY_CONTROL), + "::", + stringify!(dwCmdParam) + ) + ); +} +pub type LPNET_DVR_MATRIX_DEC_REMOTE_PLAY_CONTROL = *mut NET_DVR_MATRIX_DEC_REMOTE_PLAY_CONTROL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS { + pub dwSize: DWORD, + pub dwCurMediaFileLen: DWORD, + pub dwCurMediaFilePosition: DWORD, + pub dwCurMediaFileDuration: DWORD, + pub dwCurPlayTime: DWORD, + pub dwCurMediaFIleFrames: DWORD, + pub dwCurDataType: DWORD, + pub res: [BYTE; 72usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 100usize, + concat!( + "Size of: ", + stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCurMediaFileLen) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS), + "::", + stringify!(dwCurMediaFileLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCurMediaFilePosition) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS), + "::", + stringify!(dwCurMediaFilePosition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCurMediaFileDuration) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS), + "::", + stringify!(dwCurMediaFileDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCurPlayTime) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS), + "::", + stringify!(dwCurPlayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCurMediaFIleFrames) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS), + "::", + stringify!(dwCurMediaFIleFrames) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCurDataType) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS), + "::", + stringify!(dwCurDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).res) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS), + "::", + stringify!(res) + ) + ); +} +pub type LPNET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS = *mut NET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_MATRIX_PASSIVEMODE { + pub wTransProtol: WORD, + pub wPassivePort: WORD, + pub struMcastIP: NET_DVR_IPADDR, + pub byStreamType: BYTE, + pub byRes: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_MATRIX_PASSIVEMODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 156usize, + concat!("Size of: ", stringify!(tagNET_MATRIX_PASSIVEMODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_MATRIX_PASSIVEMODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTransProtol) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_PASSIVEMODE), + "::", + stringify!(wTransProtol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPassivePort) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_PASSIVEMODE), + "::", + stringify!(wPassivePort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMcastIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_PASSIVEMODE), + "::", + stringify!(struMcastIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_PASSIVEMODE), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 149usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_PASSIVEMODE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MATRIX_PASSIVEMODE = tagNET_MATRIX_PASSIVEMODE; +pub type LPNET_DVR_MATRIX_PASSIVEMODE = *mut tagNET_MATRIX_PASSIVEMODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIX_TRAN_CHAN_INFO_V30 { + pub byTranChanEnable: BYTE, + pub byLocalSerialDevice: BYTE, + pub byRemoteSerialDevice: BYTE, + pub byRes1: BYTE, + pub struRemoteDevIP: NET_DVR_IPADDR, + pub wRemoteDevPort: WORD, + pub byIsEstablished: BYTE, + pub byRes2: BYTE, + pub RemoteSerialDevCfg: TTY_CONFIG, + pub byUsername: [BYTE; 32usize], + pub byPassword: [BYTE; 16usize], + pub dwLocalSerialNo: DWORD, + pub dwRemoteSerialNo: DWORD, + pub byRes3: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_TRAN_CHAN_INFO_V30() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 224usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_MATRIX_TRAN_CHAN_INFO_V30) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MATRIX_TRAN_CHAN_INFO_V30) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTranChanEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRAN_CHAN_INFO_V30), + "::", + stringify!(byTranChanEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalSerialDevice) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRAN_CHAN_INFO_V30), + "::", + stringify!(byLocalSerialDevice) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRemoteSerialDevice) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRAN_CHAN_INFO_V30), + "::", + stringify!(byRemoteSerialDevice) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRAN_CHAN_INFO_V30), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRemoteDevIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRAN_CHAN_INFO_V30), + "::", + stringify!(struRemoteDevIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRemoteDevPort) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRAN_CHAN_INFO_V30), + "::", + stringify!(wRemoteDevPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsEstablished) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRAN_CHAN_INFO_V30), + "::", + stringify!(byIsEstablished) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 151usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRAN_CHAN_INFO_V30), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).RemoteSerialDevCfg) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRAN_CHAN_INFO_V30), + "::", + stringify!(RemoteSerialDevCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUsername) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRAN_CHAN_INFO_V30), + "::", + stringify!(byUsername) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPassword) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRAN_CHAN_INFO_V30), + "::", + stringify!(byPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalSerialNo) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRAN_CHAN_INFO_V30), + "::", + stringify!(dwLocalSerialNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRemoteSerialNo) as usize - ptr as usize }, + 212usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRAN_CHAN_INFO_V30), + "::", + stringify!(dwRemoteSerialNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRAN_CHAN_INFO_V30), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_MATRIX_TRAN_CHAN_INFO_V30 = tagNET_DVR_MATRIX_TRAN_CHAN_INFO_V30; +pub type LPNET_DVR_MATRIX_TRAN_CHAN_INFO_V30 = *mut tagNET_DVR_MATRIX_TRAN_CHAN_INFO_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagMATRIX_TRAN_CHAN_CONFIG { + pub dwSize: DWORD, + pub by232IsDualChan: BYTE, + pub by485IsDualChan: BYTE, + pub byRes: [BYTE; 2usize], + pub struTranInfo: [NET_DVR_MATRIX_TRAN_CHAN_INFO_V30; 64usize], +} +#[test] +fn bindgen_test_layout_tagMATRIX_TRAN_CHAN_CONFIG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 14344usize, + concat!("Size of: ", stringify!(tagMATRIX_TRAN_CHAN_CONFIG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagMATRIX_TRAN_CHAN_CONFIG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagMATRIX_TRAN_CHAN_CONFIG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).by232IsDualChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagMATRIX_TRAN_CHAN_CONFIG), + "::", + stringify!(by232IsDualChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).by485IsDualChan) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagMATRIX_TRAN_CHAN_CONFIG), + "::", + stringify!(by485IsDualChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagMATRIX_TRAN_CHAN_CONFIG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTranInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagMATRIX_TRAN_CHAN_CONFIG), + "::", + stringify!(struTranInfo) + ) + ); +} +pub type NET_DVR_MATRIX_TRAN_CHAN_CONFIG_V30 = tagMATRIX_TRAN_CHAN_CONFIG; +pub type LPNET_DVR_MATRIX_TRAN_CHAN_CONFIG_V30 = *mut tagMATRIX_TRAN_CHAN_CONFIG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_MATRIX_CHAN_INFO_V30 { + pub dwEnable: DWORD, + pub streamMediaServerCfg: NET_DVR_STREAM_MEDIA_SERVER_CFG, + pub struDevChanInfo: NET_DVR_DEV_CHAN_INFO, +} +#[test] +fn bindgen_test_layout_NET_DVR_MATRIX_CHAN_INFO_V30() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 492usize, + concat!("Size of: ", stringify!(NET_DVR_MATRIX_CHAN_INFO_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_MATRIX_CHAN_INFO_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_CHAN_INFO_V30), + "::", + stringify!(dwEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).streamMediaServerCfg) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_CHAN_INFO_V30), + "::", + stringify!(streamMediaServerCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevChanInfo) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_CHAN_INFO_V30), + "::", + stringify!(struDevChanInfo) + ) + ); +} +pub type LPNET_DVR_CYC_SUR_CHAN_ELE_V30 = *mut NET_DVR_MATRIX_CHAN_INFO_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagMATRIX_LOOP_DECINFO_V30 { + pub dwSize: DWORD, + pub dwPoolTime: DWORD, + pub struchanConInfo: [NET_DVR_MATRIX_CHAN_INFO_V30; 64usize], + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagMATRIX_LOOP_DECINFO_V30() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 31512usize, + concat!("Size of: ", stringify!(tagMATRIX_LOOP_DECINFO_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagMATRIX_LOOP_DECINFO_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagMATRIX_LOOP_DECINFO_V30), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPoolTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagMATRIX_LOOP_DECINFO_V30), + "::", + stringify!(dwPoolTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struchanConInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagMATRIX_LOOP_DECINFO_V30), + "::", + stringify!(struchanConInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 31496usize, + concat!( + "Offset of field: ", + stringify!(tagMATRIX_LOOP_DECINFO_V30), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MATRIX_LOOP_DECINFO_V30 = tagMATRIX_LOOP_DECINFO_V30; +pub type LPNET_DVR_MATRIX_LOOP_DECINFO_V30 = *mut tagMATRIX_LOOP_DECINFO_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagDEC_MATRIX_CHAN_INFO_V30 { + pub dwSize: DWORD, + pub streamMediaServerCfg: NET_DVR_STREAM_MEDIA_SERVER_CFG, + pub struDevChanInfo: NET_DVR_DEV_CHAN_INFO, + pub dwDecState: DWORD, + pub StartTime: NET_DVR_TIME, + pub StopTime: NET_DVR_TIME, + pub sFileName: [::std::os::raw::c_char; 128usize], + pub dwGetStreamMode: DWORD, + pub struPassiveMode: NET_DVR_MATRIX_PASSIVEMODE, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagDEC_MATRIX_CHAN_INFO_V30() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 864usize, + concat!("Size of: ", stringify!(tagDEC_MATRIX_CHAN_INFO_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagDEC_MATRIX_CHAN_INFO_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagDEC_MATRIX_CHAN_INFO_V30), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).streamMediaServerCfg) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagDEC_MATRIX_CHAN_INFO_V30), + "::", + stringify!(streamMediaServerCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevChanInfo) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(tagDEC_MATRIX_CHAN_INFO_V30), + "::", + stringify!(struDevChanInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDecState) as usize - ptr as usize }, + 492usize, + concat!( + "Offset of field: ", + stringify!(tagDEC_MATRIX_CHAN_INFO_V30), + "::", + stringify!(dwDecState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).StartTime) as usize - ptr as usize }, + 496usize, + concat!( + "Offset of field: ", + stringify!(tagDEC_MATRIX_CHAN_INFO_V30), + "::", + stringify!(StartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).StopTime) as usize - ptr as usize }, + 520usize, + concat!( + "Offset of field: ", + stringify!(tagDEC_MATRIX_CHAN_INFO_V30), + "::", + stringify!(StopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 544usize, + concat!( + "Offset of field: ", + stringify!(tagDEC_MATRIX_CHAN_INFO_V30), + "::", + stringify!(sFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGetStreamMode) as usize - ptr as usize }, + 672usize, + concat!( + "Offset of field: ", + stringify!(tagDEC_MATRIX_CHAN_INFO_V30), + "::", + stringify!(dwGetStreamMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPassiveMode) as usize - ptr as usize }, + 676usize, + concat!( + "Offset of field: ", + stringify!(tagDEC_MATRIX_CHAN_INFO_V30), + "::", + stringify!(struPassiveMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 832usize, + concat!( + "Offset of field: ", + stringify!(tagDEC_MATRIX_CHAN_INFO_V30), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MATRIX_DEC_CHAN_INFO_V30 = tagDEC_MATRIX_CHAN_INFO_V30; +pub type LPNET_DVR_MATRIX_DEC_CHAN_INFO_V30 = *mut tagDEC_MATRIX_CHAN_INFO_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIX_ABILITY { + pub dwSize: DWORD, + pub byDecNums: BYTE, + pub byStartChan: BYTE, + pub byVGANums: BYTE, + pub byBNCNums: BYTE, + pub byVGAWindowMode: [[BYTE; 12usize]; 8usize], + pub byBNCWindowMode: [BYTE; 4usize], + pub byDspNums: BYTE, + pub byHDMINums: BYTE, + pub byDVINums: BYTE, + pub byRes1: [BYTE; 13usize], + pub bySupportResolution: [BYTE; 64usize], + pub byHDMIWindowMode: [[BYTE; 8usize]; 4usize], + pub byDVIWindowMode: [[BYTE; 8usize]; 4usize], + pub byRes2: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_ABILITY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 276usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIX_ABILITY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIX_ABILITY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecNums) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY), + "::", + stringify!(byDecNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartChan) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY), + "::", + stringify!(byStartChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVGANums) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY), + "::", + stringify!(byVGANums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBNCNums) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY), + "::", + stringify!(byBNCNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVGAWindowMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY), + "::", + stringify!(byVGAWindowMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBNCWindowMode) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY), + "::", + stringify!(byBNCWindowMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDspNums) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY), + "::", + stringify!(byDspNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHDMINums) as usize - ptr as usize }, + 109usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY), + "::", + stringify!(byHDMINums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDVINums) as usize - ptr as usize }, + 110usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY), + "::", + stringify!(byDVINums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 111usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportResolution) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY), + "::", + stringify!(bySupportResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHDMIWindowMode) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY), + "::", + stringify!(byHDMIWindowMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDVIWindowMode) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY), + "::", + stringify!(byDVIWindowMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 252usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_MATRIX_ABILITY = tagNET_DVR_MATRIX_ABILITY; +pub type LPNET_DVR_MATRIX_ABILITY = *mut tagNET_DVR_MATRIX_ABILITY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DISP_LOGOCFG { + pub dwCorordinateX: DWORD, + pub dwCorordinateY: DWORD, + pub wPicWidth: WORD, + pub wPicHeight: WORD, + pub byRes1: [BYTE; 4usize], + pub byFlash: BYTE, + pub byTranslucent: BYTE, + pub byRes2: [BYTE; 6usize], + pub dwLogoSize: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DISP_LOGOCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28usize, + concat!("Size of: ", stringify!(tagNET_DVR_DISP_LOGOCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DISP_LOGOCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCorordinateX) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_LOGOCFG), + "::", + stringify!(dwCorordinateX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCorordinateY) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_LOGOCFG), + "::", + stringify!(dwCorordinateY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPicWidth) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_LOGOCFG), + "::", + stringify!(wPicWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPicHeight) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_LOGOCFG), + "::", + stringify!(wPicHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_LOGOCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlash) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_LOGOCFG), + "::", + stringify!(byFlash) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTranslucent) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_LOGOCFG), + "::", + stringify!(byTranslucent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_LOGOCFG), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLogoSize) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_LOGOCFG), + "::", + stringify!(dwLogoSize) + ) + ); +} +pub type NET_DVR_DISP_LOGOCFG = tagNET_DVR_DISP_LOGOCFG; +pub type LPNET_DVR_DISP_LOGOCFG = *mut tagNET_DVR_DISP_LOGOCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_MATRIX_CHAN_STATUS { + pub byDecodeStatus: BYTE, + pub byStreamType: BYTE, + pub byPacketType: BYTE, + pub byRecvBufUsage: BYTE, + pub byDecBufUsage: BYTE, + pub byFpsDecV: BYTE, + pub byFpsDecA: BYTE, + pub byCpuLoad: BYTE, + pub byRes1: [BYTE; 4usize], + pub dwDecodedV: DWORD, + pub dwDecodedA: DWORD, + pub wImgW: WORD, + pub wImgH: WORD, + pub byVideoFormat: BYTE, + pub byRes2: [BYTE; 3usize], + pub dwDecChan: DWORD, + pub byRes3: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_MATRIX_CHAN_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 52usize, + concat!("Size of: ", stringify!(NET_DVR_MATRIX_CHAN_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_MATRIX_CHAN_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecodeStatus) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_CHAN_STATUS), + "::", + stringify!(byDecodeStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_CHAN_STATUS), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPacketType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_CHAN_STATUS), + "::", + stringify!(byPacketType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecvBufUsage) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_CHAN_STATUS), + "::", + stringify!(byRecvBufUsage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecBufUsage) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_CHAN_STATUS), + "::", + stringify!(byDecBufUsage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFpsDecV) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_CHAN_STATUS), + "::", + stringify!(byFpsDecV) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFpsDecA) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_CHAN_STATUS), + "::", + stringify!(byFpsDecA) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCpuLoad) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_CHAN_STATUS), + "::", + stringify!(byCpuLoad) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_CHAN_STATUS), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDecodedV) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_CHAN_STATUS), + "::", + stringify!(dwDecodedV) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDecodedA) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_CHAN_STATUS), + "::", + stringify!(dwDecodedA) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wImgW) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_CHAN_STATUS), + "::", + stringify!(wImgW) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wImgH) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_CHAN_STATUS), + "::", + stringify!(wImgH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoFormat) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_CHAN_STATUS), + "::", + stringify!(byVideoFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_CHAN_STATUS), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDecChan) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_CHAN_STATUS), + "::", + stringify!(dwDecChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_CHAN_STATUS), + "::", + stringify!(byRes3) + ) + ); +} +pub type LPNET_DVR_MATRIX_CHAN_STATUS = *mut NET_DVR_MATRIX_CHAN_STATUS; +pub const VGA_MODE_VGA_NOT_AVALIABLE: VGA_MODE = 0; +pub const VGA_MODE_VGA_THS8200_MODE_SVGA_60HZ: VGA_MODE = 1; +pub const VGA_MODE_VGA_THS8200_MODE_SVGA_75HZ: VGA_MODE = 2; +pub const VGA_MODE_VGA_THS8200_MODE_XGA_60HZ: VGA_MODE = 3; +pub const VGA_MODE_VGA_THS8200_MODE_XGA_75HZ: VGA_MODE = 4; +pub const VGA_MODE_VGA_THS8200_MODE_SXGA_60HZ: VGA_MODE = 5; +pub const VGA_MODE_VGA_THS8200_MODE_720P_60HZ: VGA_MODE = 6; +pub const VGA_MODE_VGA_THS8200_MODE_1080I_60HZ: VGA_MODE = 7; +pub const VGA_MODE_VGA_THS8200_MODE_1080P_30HZ: VGA_MODE = 8; +pub const VGA_MODE_VGA_THS8200_MODE_UXGA_30HZ: VGA_MODE = 9; +pub const VGA_MODE_HDMI_SII9134_MODE_XGA_60HZ: VGA_MODE = 10; +pub const VGA_MODE_HDMI_SII9134_MODE_SXGA_60HZ: VGA_MODE = 11; +pub const VGA_MODE_HDMI_SII9134_MODE_SXGA2_60HZ: VGA_MODE = 12; +pub const VGA_MODE_HDMI_SII9134_MODE_720P_60HZ: VGA_MODE = 13; +pub const VGA_MODE_HDMI_SII9134_MODE_720P_50HZ: VGA_MODE = 14; +pub const VGA_MODE_HDMI_SII9134_MODE_1080I_60HZ: VGA_MODE = 15; +pub const VGA_MODE_HDMI_SII9134_MODE_1080I_50HZ: VGA_MODE = 16; +pub const VGA_MODE_HDMI_SII9134_MODE_1080P_25HZ: VGA_MODE = 17; +pub const VGA_MODE_HDMI_SII9134_MODE_1080P_30HZ: VGA_MODE = 18; +pub const VGA_MODE_HDMI_SII9134_MODE_1080P_50HZ: VGA_MODE = 19; +pub const VGA_MODE_HDMI_SII9134_MODE_1080P_60HZ: VGA_MODE = 20; +pub const VGA_MODE_HDMI_SII9134_MODE_UXGA_60HZ: VGA_MODE = 21; +pub const VGA_MODE_DVI_SII9134_MODE_XGA_60HZ: VGA_MODE = 22; +pub const VGA_MODE_DVI_SII9134_MODE_SXGA_60HZ: VGA_MODE = 23; +pub const VGA_MODE_DVI_SII9134_MODE_SXGA2_60HZ: VGA_MODE = 24; +pub const VGA_MODE_DVI_SII9134_MODE_720P_60HZ: VGA_MODE = 25; +pub const VGA_MODE_DVI_SII9134_MODE_720P_50HZ: VGA_MODE = 26; +pub const VGA_MODE_DVI_SII9134_MODE_1080I_60HZ: VGA_MODE = 27; +pub const VGA_MODE_DVI_SII9134_MODE_1080I_50HZ: VGA_MODE = 28; +pub const VGA_MODE_DVI_SII9134_MODE_1080P_25HZ: VGA_MODE = 29; +pub const VGA_MODE_DVI_SII9134_MODE_1080P_30HZ: VGA_MODE = 30; +pub const VGA_MODE_DVI_SII9134_MODE_1080P_50HZ: VGA_MODE = 31; +pub const VGA_MODE_DVI_SII9134_MODE_1080P_60HZ: VGA_MODE = 32; +pub const VGA_MODE_DVI_SII9134_MODE_UXGA_60HZ: VGA_MODE = 33; +pub const VGA_MODE_VGA_DECSVR_MODE_SXGA2_60HZ: VGA_MODE = 34; +pub const VGA_MODE_HDMI_DECSVR_MODE_1080P_24HZ: VGA_MODE = 35; +pub const VGA_MODE_DVI_DECSVR_MODE_1080P_24HZ: VGA_MODE = 36; +pub const VGA_MODE_YPbPr_DECSVR_MODE_720P_60HZ: VGA_MODE = 37; +pub const VGA_MODE_YPbPr_DECSVR_MODE_1080I_60HZ: VGA_MODE = 38; +pub type VGA_MODE = ::std::os::raw::c_uint; +pub const VIDEO_STANDARD_VS_NON: VIDEO_STANDARD = 0; +pub const VIDEO_STANDARD_VS_NTSC: VIDEO_STANDARD = 1; +pub const VIDEO_STANDARD_VS_PAL: VIDEO_STANDARD = 2; +pub type VIDEO_STANDARD = ::std::os::raw::c_uint; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_VGA_DISP_CHAN_CFG { + pub dwSize: DWORD, + pub byAudio: BYTE, + pub byAudioWindowIdx: BYTE, + pub byVgaResolution: BYTE, + pub byVedioFormat: BYTE, + pub dwWindowMode: DWORD, + pub byJoinDecChan: [BYTE; 16usize], + pub byEnlargeStatus: BYTE, + pub byEnlargeSubWindowIndex: BYTE, + pub struDiff: tagNET_DVR_VGA_DISP_CHAN_CFG__bindgen_ty_1, + pub byUnionType: BYTE, + pub byScale: BYTE, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_VGA_DISP_CHAN_CFG__bindgen_ty_1 { + pub byRes: [BYTE; 16usize], + pub struVideoPlatform: tagNET_DVR_VGA_DISP_CHAN_CFG__bindgen_ty_1__bindgen_ty_1, + pub struNotVideoPlatform: tagNET_DVR_VGA_DISP_CHAN_CFG__bindgen_ty_1__bindgen_ty_2, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VGA_DISP_CHAN_CFG__bindgen_ty_1__bindgen_ty_1 { + pub byJoinDecoderId: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VGA_DISP_CHAN_CFG__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_VGA_DISP_CHAN_CFG__bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJoinDecoderId) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byJoinDecoderId) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VGA_DISP_CHAN_CFG__bindgen_ty_1__bindgen_ty_2 { + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VGA_DISP_CHAN_CFG__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_VGA_DISP_CHAN_CFG__bindgen_ty_1__bindgen_ty_2, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byRes) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VGA_DISP_CHAN_CFG__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG__bindgen_ty_1), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVideoPlatform) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG__bindgen_ty_1), + "::", + stringify!(struVideoPlatform) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNotVideoPlatform) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG__bindgen_ty_1), + "::", + stringify!(struNotVideoPlatform) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VGA_DISP_CHAN_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudio) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG), + "::", + stringify!(byAudio) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioWindowIdx) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG), + "::", + stringify!(byAudioWindowIdx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVgaResolution) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG), + "::", + stringify!(byVgaResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVedioFormat) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG), + "::", + stringify!(byVedioFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWindowMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG), + "::", + stringify!(dwWindowMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJoinDecChan) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG), + "::", + stringify!(byJoinDecChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnlargeStatus) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG), + "::", + stringify!(byEnlargeStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnlargeSubWindowIndex) as usize - ptr as usize }, + 29usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG), + "::", + stringify!(byEnlargeSubWindowIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDiff) as usize - ptr as usize }, + 30usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG), + "::", + stringify!(struDiff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUnionType) as usize - ptr as usize }, + 46usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG), + "::", + stringify!(byUnionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScale) as usize - ptr as usize }, + 47usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG), + "::", + stringify!(byScale) + ) + ); +} +pub type NET_DVR_VGA_DISP_CHAN_CFG = tagNET_DVR_VGA_DISP_CHAN_CFG; +pub type LPNET_DVR_VGA_DISP_CHAN_CFG = *mut tagNET_DVR_VGA_DISP_CHAN_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DISP_CHAN_STATUS { + pub byDispStatus: BYTE, + pub byBVGA: BYTE, + pub byVideoFormat: BYTE, + pub byWindowMode: BYTE, + pub byJoinDecChan: [BYTE; 16usize], + pub byFpsDisp: [BYTE; 16usize], + pub byScreenMode: BYTE, + pub byRes2: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_DISP_CHAN_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(NET_DVR_DISP_CHAN_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_DISP_CHAN_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispStatus) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DISP_CHAN_STATUS), + "::", + stringify!(byDispStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBVGA) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DISP_CHAN_STATUS), + "::", + stringify!(byBVGA) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoFormat) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DISP_CHAN_STATUS), + "::", + stringify!(byVideoFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWindowMode) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DISP_CHAN_STATUS), + "::", + stringify!(byWindowMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJoinDecChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DISP_CHAN_STATUS), + "::", + stringify!(byJoinDecChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFpsDisp) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DISP_CHAN_STATUS), + "::", + stringify!(byFpsDisp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScreenMode) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DISP_CHAN_STATUS), + "::", + stringify!(byScreenMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DISP_CHAN_STATUS), + "::", + stringify!(byRes2) + ) + ); +} +pub type LPNET_DVR_DISP_CHAN_STATUS = *mut NET_DVR_DISP_CHAN_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DECODER_WORK_STATUS { + pub dwSize: DWORD, + pub struDecChanStatus: [NET_DVR_MATRIX_CHAN_STATUS; 32usize], + pub struDispChanStatus: [NET_DVR_DISP_CHAN_STATUS; 24usize], + pub byAlarmInStatus: [BYTE; 32usize], + pub byAlarmOutStatus: [BYTE; 32usize], + pub byAudioInChanStatus: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DECODER_WORK_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 3492usize, + concat!("Size of: ", stringify!(tagNET_DVR_DECODER_WORK_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DECODER_WORK_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODER_WORK_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDecChanStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODER_WORK_STATUS), + "::", + stringify!(struDecChanStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDispChanStatus) as usize - ptr as usize }, + 1668usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODER_WORK_STATUS), + "::", + stringify!(struDispChanStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInStatus) as usize - ptr as usize }, + 3300usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODER_WORK_STATUS), + "::", + stringify!(byAlarmInStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutStatus) as usize - ptr as usize }, + 3332usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODER_WORK_STATUS), + "::", + stringify!(byAlarmOutStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioInChanStatus) as usize - ptr as usize }, + 3364usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODER_WORK_STATUS), + "::", + stringify!(byAudioInChanStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3365usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODER_WORK_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DECODER_WORK_STATUS = tagNET_DVR_DECODER_WORK_STATUS; +pub type LPNET_DVR_DECODER_WORK_STATUS = *mut tagNET_DVR_DECODER_WORK_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PASSIVEDECODE_CONTROL { + pub dwSize: DWORD, + pub dwPlayCmd: DWORD, + pub dwCmdParam: DWORD, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PASSIVEDECODE_CONTROL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28usize, + concat!("Size of: ", stringify!(tagNET_DVR_PASSIVEDECODE_CONTROL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PASSIVEDECODE_CONTROL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSIVEDECODE_CONTROL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlayCmd) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSIVEDECODE_CONTROL), + "::", + stringify!(dwPlayCmd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCmdParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSIVEDECODE_CONTROL), + "::", + stringify!(dwCmdParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSIVEDECODE_CONTROL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PASSIVEDECODE_CONTROL = tagNET_DVR_PASSIVEDECODE_CONTROL; +pub type LPNET_DVR_PASSIVEDECODE_CONTROL = *mut tagNET_DVR_PASSIVEDECODE_CONTROL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIX_DECCHAN_CONTROL { + pub dwSize: DWORD, + pub byDecChanScaleStatus: BYTE, + pub byDecodeDelay: BYTE, + pub byEnableSpartan: BYTE, + pub byLowLight: BYTE, + pub byNoiseReduction: BYTE, + pub byDefog: BYTE, + pub byEnableVcaDec: BYTE, + pub byEnableAudio: BYTE, + pub dwAllCtrlType: DWORD, + pub byVolume: BYTE, + pub byRes: [BYTE; 55usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_DECCHAN_CONTROL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIX_DECCHAN_CONTROL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MATRIX_DECCHAN_CONTROL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DECCHAN_CONTROL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecChanScaleStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DECCHAN_CONTROL), + "::", + stringify!(byDecChanScaleStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecodeDelay) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DECCHAN_CONTROL), + "::", + stringify!(byDecodeDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableSpartan) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DECCHAN_CONTROL), + "::", + stringify!(byEnableSpartan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLowLight) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DECCHAN_CONTROL), + "::", + stringify!(byLowLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNoiseReduction) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DECCHAN_CONTROL), + "::", + stringify!(byNoiseReduction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDefog) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DECCHAN_CONTROL), + "::", + stringify!(byDefog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableVcaDec) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DECCHAN_CONTROL), + "::", + stringify!(byEnableVcaDec) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableAudio) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DECCHAN_CONTROL), + "::", + stringify!(byEnableAudio) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAllCtrlType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DECCHAN_CONTROL), + "::", + stringify!(dwAllCtrlType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVolume) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DECCHAN_CONTROL), + "::", + stringify!(byVolume) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DECCHAN_CONTROL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MATRIX_DECCHAN_CONTROL = tagNET_DVR_MATRIX_DECCHAN_CONTROL; +pub type LPNET_DVR_MATRIX_DECCHAN_CONTROL = *mut tagNET_DVR_MATRIX_DECCHAN_CONTROL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SUBSYSTEMINFO { + pub bySubSystemType: BYTE, + pub byChan: BYTE, + pub byLoginType: BYTE, + pub byRes1: [BYTE; 5usize], + pub struSubSystemIP: NET_DVR_IPADDR, + pub wSubSystemPort: WORD, + pub byRes2: [BYTE; 6usize], + pub struSubSystemIPMask: NET_DVR_IPADDR, + pub struGatewayIpAddr: NET_DVR_IPADDR, + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub sDomainName: [::std::os::raw::c_char; 64usize], + pub sDnsAddress: [::std::os::raw::c_char; 64usize], + pub sSerialNumber: [BYTE; 48usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUBSYSTEMINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 672usize, + concat!("Size of: ", stringify!(tagNET_DVR_SUBSYSTEMINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SUBSYSTEMINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO), + "::", + stringify!(bySubSystemType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChan) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO), + "::", + stringify!(byChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLoginType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO), + "::", + stringify!(byLoginType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSubSystemIP) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO), + "::", + stringify!(struSubSystemIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSubSystemPort) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO), + "::", + stringify!(wSubSystemPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 154usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSubSystemIPMask) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO), + "::", + stringify!(struSubSystemIPMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGatewayIpAddr) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO), + "::", + stringify!(struGatewayIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 448usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 480usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDomainName) as usize - ptr as usize }, + 496usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO), + "::", + stringify!(sDomainName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDnsAddress) as usize - ptr as usize }, + 560usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO), + "::", + stringify!(sDnsAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSerialNumber) as usize - ptr as usize }, + 624usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO), + "::", + stringify!(sSerialNumber) + ) + ); +} +pub type NET_DVR_SUBSYSTEMINFO = tagNET_DVR_SUBSYSTEMINFO; +pub type LPNET_DVR_SUBSYSTEMINFO = *mut tagNET_DVR_SUBSYSTEMINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALLSUBSYSTEMINFO { + pub dwSize: DWORD, + pub struSubSystemInfo: [NET_DVR_SUBSYSTEMINFO; 80usize], + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALLSUBSYSTEMINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 53772usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALLSUBSYSTEMINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALLSUBSYSTEMINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALLSUBSYSTEMINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSubSystemInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALLSUBSYSTEMINFO), + "::", + stringify!(struSubSystemInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 53764usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALLSUBSYSTEMINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALLSUBSYSTEMINFO = tagNET_DVR_ALLSUBSYSTEMINFO; +pub type LPNET_DVR_ALLSUBSYSTEMINFO = *mut tagNET_DVR_ALLSUBSYSTEMINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOOPPLAN_SUBCFG { + pub dwSize: DWORD, + pub dwPoolTime: DWORD, + pub struChanConInfo: [NET_DVR_MATRIX_CHAN_INFO_V30; 64usize], + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOOPPLAN_SUBCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 31512usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOOPPLAN_SUBCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOOPPLAN_SUBCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOOPPLAN_SUBCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPoolTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOOPPLAN_SUBCFG), + "::", + stringify!(dwPoolTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struChanConInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOOPPLAN_SUBCFG), + "::", + stringify!(struChanConInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 31496usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOOPPLAN_SUBCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOOPPLAN_SUBCFG = tagNET_DVR_LOOPPLAN_SUBCFG; +pub type LPNET_DVR_LOOPPLAN_SUBCFG = *mut tagNET_DVR_LOOPPLAN_SUBCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMMODECFG { + pub dwSize: DWORD, + pub byAlarmMode: BYTE, + pub wLoopTime: WORD, + pub byRes: [BYTE; 9usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMMODECFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMMODECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMMODECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMMODECFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMMODECFG), + "::", + stringify!(byAlarmMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLoopTime) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMMODECFG), + "::", + stringify!(wLoopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMMODECFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMMODECFG = tagNET_DVR_ALARMMODECFG; +pub type LPNET_DVR_ALARMMODECFG = *mut tagNET_DVR_ALARMMODECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CODESPLITTERINFO { + pub dwSize: DWORD, + pub struIP: NET_DVR_IPADDR, + pub wPort: WORD, + pub byRes1: [BYTE; 6usize], + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub byChan: BYTE, + pub by485Port: BYTE, + pub byRes2: [BYTE; 14usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CODESPLITTERINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 220usize, + concat!("Size of: ", stringify!(tagNET_DVR_CODESPLITTERINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CODESPLITTERINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESPLITTERINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESPLITTERINFO), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESPLITTERINFO), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESPLITTERINFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESPLITTERINFO), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESPLITTERINFO), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChan) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESPLITTERINFO), + "::", + stringify!(byChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).by485Port) as usize - ptr as usize }, + 205usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESPLITTERINFO), + "::", + stringify!(by485Port) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 206usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESPLITTERINFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CODESPLITTERINFO = tagNET_DVR_CODESPLITTERINFO; +pub type LPNET_DVR_CODESPLITTERINFO = *mut tagNET_DVR_CODESPLITTERINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ASSOCIATECFG { + pub byAssociateType: BYTE, + pub wAlarmDelay: WORD, + pub byAlarmNum: BYTE, + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ASSOCIATECFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 14usize, + concat!("Size of: ", stringify!(tagNET_DVR_ASSOCIATECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ASSOCIATECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAssociateType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ASSOCIATECFG), + "::", + stringify!(byAssociateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAlarmDelay) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ASSOCIATECFG), + "::", + stringify!(wAlarmDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ASSOCIATECFG), + "::", + stringify!(byAlarmNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ASSOCIATECFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ASSOCIATECFG = tagNET_DVR_ASSOCIATECFG; +pub type LPNET_DVR_ASSOCIATECFG = *mut tagNET_DVR_ASSOCIATECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DYNAMICDECODE { + pub dwSize: DWORD, + pub struAssociateCfg: NET_DVR_ASSOCIATECFG, + pub struPuStreamCfg: NET_DVR_PU_STREAM_CFG, + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DYNAMICDECODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 520usize, + concat!("Size of: ", stringify!(tagNET_DVR_DYNAMICDECODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DYNAMICDECODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DYNAMICDECODE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAssociateCfg) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DYNAMICDECODE), + "::", + stringify!(struAssociateCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPuStreamCfg) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DYNAMICDECODE), + "::", + stringify!(struPuStreamCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 512usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DYNAMICDECODE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DYNAMICDECODE = tagNET_DVR_DYNAMICDECODE; +pub type LPNET_DVR_DYNAMICDECODE = *mut tagNET_DVR_DYNAMICDECODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DECODESCHED { + pub struSchedTime: NET_DVR_SCHEDTIME, + pub byDecodeType: BYTE, + pub byLoopGroup: BYTE, + pub byRes: [BYTE; 6usize], + pub struDynamicDec: NET_DVR_PU_STREAM_CFG, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DECODESCHED() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 504usize, + concat!("Size of: ", stringify!(tagNET_DVR_DECODESCHED)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DECODESCHED)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSchedTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODESCHED), + "::", + stringify!(struSchedTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecodeType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODESCHED), + "::", + stringify!(byDecodeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLoopGroup) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODESCHED), + "::", + stringify!(byLoopGroup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODESCHED), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDynamicDec) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODESCHED), + "::", + stringify!(struDynamicDec) + ) + ); +} +pub type NET_DVR_DECODESCHED = tagNET_DVR_DECODESCHED; +pub type LPNET_DVR_DECODESCHED = *mut tagNET_DVR_DECODESCHED; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLANDECODE { + pub dwSize: DWORD, + pub struDecodeSched: [[NET_DVR_DECODESCHED; 4usize]; 7usize], + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLANDECODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 14124usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLANDECODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PLANDECODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLANDECODE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDecodeSched) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLANDECODE), + "::", + stringify!(struDecodeSched) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 14116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLANDECODE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PLANDECODE = tagNET_DVR_PLANDECODE; +pub type LPNET_DVR_PLANDECODE = *mut tagNET_DVR_PLANDECODE; +#[doc = "��Ƶ�ۺ�ƽ\u{328}(end)"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_EMAILCFG { + pub dwSize: DWORD, + pub sUserName: [::std::os::raw::c_char; 32usize], + pub sPassWord: [::std::os::raw::c_char; 32usize], + pub sFromName: [::std::os::raw::c_char; 32usize], + pub sFromAddr: [::std::os::raw::c_char; 48usize], + pub sToName1: [::std::os::raw::c_char; 32usize], + pub sToName2: [::std::os::raw::c_char; 32usize], + pub sToAddr1: [::std::os::raw::c_char; 48usize], + pub sToAddr2: [::std::os::raw::c_char; 48usize], + pub sEmailServer: [::std::os::raw::c_char; 32usize], + pub byServerType: BYTE, + pub byUseAuthen: BYTE, + pub byAttachment: BYTE, + pub byMailinterval: BYTE, +} +#[test] +fn bindgen_test_layout_NET_DVR_EMAILCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 344usize, + concat!("Size of: ", stringify!(NET_DVR_EMAILCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_EMAILCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassWord) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG), + "::", + stringify!(sPassWord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFromName) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG), + "::", + stringify!(sFromName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFromAddr) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG), + "::", + stringify!(sFromAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sToName1) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG), + "::", + stringify!(sToName1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sToName2) as usize - ptr as usize }, + 180usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG), + "::", + stringify!(sToName2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sToAddr1) as usize - ptr as usize }, + 212usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG), + "::", + stringify!(sToAddr1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sToAddr2) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG), + "::", + stringify!(sToAddr2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sEmailServer) as usize - ptr as usize }, + 308usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG), + "::", + stringify!(sEmailServer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byServerType) as usize - ptr as usize }, + 340usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG), + "::", + stringify!(byServerType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseAuthen) as usize - ptr as usize }, + 341usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG), + "::", + stringify!(byUseAuthen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAttachment) as usize - ptr as usize }, + 342usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG), + "::", + stringify!(byAttachment) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMailinterval) as usize - ptr as usize }, + 343usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EMAILCFG), + "::", + stringify!(byMailinterval) + ) + ); +} +#[doc = "��Ƶ�ۺ�ƽ\u{328}(end)"] +pub type LPNET_DVR_EMAILCFG = *mut NET_DVR_EMAILCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_COMPRESSIONCFG_NEW { + pub dwSize: DWORD, + pub struLowCompression: NET_DVR_COMPRESSION_INFO_EX, + pub struEventCompression: NET_DVR_COMPRESSION_INFO_EX, +} +#[test] +fn bindgen_test_layout_NET_DVR_COMPRESSIONCFG_NEW() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(NET_DVR_COMPRESSIONCFG_NEW)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_COMPRESSIONCFG_NEW)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSIONCFG_NEW), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLowCompression) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSIONCFG_NEW), + "::", + stringify!(struLowCompression) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEventCompression) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSIONCFG_NEW), + "::", + stringify!(struEventCompression) + ) + ); +} +pub type LPNET_DVR_COMPRESSIONCFG_NEW = *mut NET_DVR_COMPRESSIONCFG_NEW; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PTZPOS { + pub wAction: WORD, + pub wPanPos: WORD, + pub wTiltPos: WORD, + pub wZoomPos: WORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_PTZPOS() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(NET_DVR_PTZPOS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_PTZPOS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAction) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PTZPOS), + "::", + stringify!(wAction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPanPos) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PTZPOS), + "::", + stringify!(wPanPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTiltPos) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PTZPOS), + "::", + stringify!(wTiltPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wZoomPos) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PTZPOS), + "::", + stringify!(wZoomPos) + ) + ); +} +pub type LPNET_DVR_PTZPOS = *mut NET_DVR_PTZPOS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PTZSCOPE { + pub wPanPosMin: WORD, + pub wPanPosMax: WORD, + pub wTiltPosMin: WORD, + pub wTiltPosMax: WORD, + pub wZoomPosMin: WORD, + pub wZoomPosMax: WORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_PTZSCOPE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(NET_DVR_PTZSCOPE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_PTZSCOPE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPanPosMin) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PTZSCOPE), + "::", + stringify!(wPanPosMin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPanPosMax) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PTZSCOPE), + "::", + stringify!(wPanPosMax) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTiltPosMin) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PTZSCOPE), + "::", + stringify!(wTiltPosMin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTiltPosMax) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PTZSCOPE), + "::", + stringify!(wTiltPosMax) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wZoomPosMin) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PTZSCOPE), + "::", + stringify!(wZoomPosMin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wZoomPosMax) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PTZSCOPE), + "::", + stringify!(wZoomPosMax) + ) + ); +} +pub type LPNET_DVR_PTZSCOPE = *mut NET_DVR_PTZSCOPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_RTSPCFG { + pub dwSize: DWORD, + pub wPort: WORD, + pub byReserve1: [BYTE; 40usize], + pub wRtspsPort: WORD, + pub byReserve: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_RTSPCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 60usize, + concat!("Size of: ", stringify!(NET_DVR_RTSPCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_RTSPCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RTSPCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RTSPCFG), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReserve1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RTSPCFG), + "::", + stringify!(byReserve1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRtspsPort) as usize - ptr as usize }, + 46usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RTSPCFG), + "::", + stringify!(wRtspsPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReserve) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RTSPCFG), + "::", + stringify!(byReserve) + ) + ); +} +pub type LPNET_DVR_RTSPCFG = *mut NET_DVR_RTSPCFG; +#[doc = "�ӿڲ����ṹ(begin)"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DEVICEINFO { + pub sSerialNumber: [BYTE; 48usize], + pub byAlarmInPortNum: BYTE, + pub byAlarmOutPortNum: BYTE, + pub byDiskNum: BYTE, + pub byDVRType: BYTE, + pub byChanNum: BYTE, + pub byStartChan: BYTE, +} +#[test] +fn bindgen_test_layout_NET_DVR_DEVICEINFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 54usize, + concat!("Size of: ", stringify!(NET_DVR_DEVICEINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_DEVICEINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSerialNumber) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO), + "::", + stringify!(sSerialNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInPortNum) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO), + "::", + stringify!(byAlarmInPortNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutPortNum) as usize - ptr as usize }, + 49usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO), + "::", + stringify!(byAlarmOutPortNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDiskNum) as usize - ptr as usize }, + 50usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO), + "::", + stringify!(byDiskNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDVRType) as usize - ptr as usize }, + 51usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO), + "::", + stringify!(byDVRType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanNum) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO), + "::", + stringify!(byChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartChan) as usize - ptr as usize }, + 53usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO), + "::", + stringify!(byStartChan) + ) + ); +} +#[doc = "�ӿڲ����ṹ(begin)"] +pub type LPNET_DVR_DEVICEINFO = *mut NET_DVR_DEVICEINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DEVICEINFO_V30 { + pub sSerialNumber: [BYTE; 48usize], + pub byAlarmInPortNum: BYTE, + pub byAlarmOutPortNum: BYTE, + pub byDiskNum: BYTE, + pub byDVRType: BYTE, + pub byChanNum: BYTE, + pub byStartChan: BYTE, + pub byAudioChanNum: BYTE, + pub byIPChanNum: BYTE, + pub byZeroChanNum: BYTE, + pub byMainProto: BYTE, + pub bySubProto: BYTE, + pub bySupport: BYTE, + pub bySupport1: BYTE, + pub bySupport2: BYTE, + pub wDevType: WORD, + pub bySupport3: BYTE, + pub byMultiStreamProto: BYTE, + pub byStartDChan: BYTE, + pub byStartDTalkChan: BYTE, + pub byHighDChanNum: BYTE, + pub bySupport4: BYTE, + pub byLanguageType: BYTE, + pub byVoiceInChanNum: BYTE, + pub byStartVoiceInChanNo: BYTE, + pub bySupport5: BYTE, + pub bySupport6: BYTE, + pub byMirrorChanNum: BYTE, + pub wStartMirrorChanNo: WORD, + pub bySupport7: BYTE, + pub byRes2: BYTE, +} +#[test] +fn bindgen_test_layout_NET_DVR_DEVICEINFO_V30() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(NET_DVR_DEVICEINFO_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_DEVICEINFO_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSerialNumber) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(sSerialNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInPortNum) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(byAlarmInPortNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutPortNum) as usize - ptr as usize }, + 49usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(byAlarmOutPortNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDiskNum) as usize - ptr as usize }, + 50usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(byDiskNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDVRType) as usize - ptr as usize }, + 51usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(byDVRType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanNum) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(byChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartChan) as usize - ptr as usize }, + 53usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(byStartChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioChanNum) as usize - ptr as usize }, + 54usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(byAudioChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIPChanNum) as usize - ptr as usize }, + 55usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(byIPChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZeroChanNum) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(byZeroChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainProto) as usize - ptr as usize }, + 57usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(byMainProto) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubProto) as usize - ptr as usize }, + 58usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(bySubProto) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupport) as usize - ptr as usize }, + 59usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(bySupport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupport1) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(bySupport1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupport2) as usize - ptr as usize }, + 61usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(bySupport2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevType) as usize - ptr as usize }, + 62usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(wDevType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupport3) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(bySupport3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMultiStreamProto) as usize - ptr as usize }, + 65usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(byMultiStreamProto) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartDChan) as usize - ptr as usize }, + 66usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(byStartDChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartDTalkChan) as usize - ptr as usize }, + 67usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(byStartDTalkChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHighDChanNum) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(byHighDChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupport4) as usize - ptr as usize }, + 69usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(bySupport4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLanguageType) as usize - ptr as usize }, + 70usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(byLanguageType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVoiceInChanNum) as usize - ptr as usize }, + 71usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(byVoiceInChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartVoiceInChanNo) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(byStartVoiceInChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupport5) as usize - ptr as usize }, + 73usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(bySupport5) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupport6) as usize - ptr as usize }, + 74usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(bySupport6) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMirrorChanNum) as usize - ptr as usize }, + 75usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(byMirrorChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStartMirrorChanNo) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(wStartMirrorChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupport7) as usize - ptr as usize }, + 78usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(bySupport7) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 79usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICEINFO_V30), + "::", + stringify!(byRes2) + ) + ); +} +pub type LPNET_DVR_DEVICEINFO_V30 = *mut NET_DVR_DEVICEINFO_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEVICEINFO_V40 { + pub struDeviceV30: NET_DVR_DEVICEINFO_V30, + pub bySupportLock: BYTE, + pub byRetryLoginTime: BYTE, + pub byPasswordLevel: BYTE, + pub byProxyType: BYTE, + pub dwSurplusLockTime: DWORD, + pub byCharEncodeType: BYTE, + pub bySupportDev5: BYTE, + pub bySupport: BYTE, + pub byLoginMode: BYTE, + pub dwOEMCode: DWORD, + pub iResidualValidity: ::std::os::raw::c_int, + pub byResidualValidity: BYTE, + pub bySingleStartDTalkChan: BYTE, + pub bySingleDTalkChanNums: BYTE, + pub byPassWordResetLevel: BYTE, + pub bySupportStreamEncrypt: BYTE, + pub byMarketType: BYTE, + pub byTLSCap: BYTE, + pub byRes2: [BYTE; 237usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEVICEINFO_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 344usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEVICEINFO_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEVICEINFO_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDeviceV30) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEINFO_V40), + "::", + stringify!(struDeviceV30) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportLock) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEINFO_V40), + "::", + stringify!(bySupportLock) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRetryLoginTime) as usize - ptr as usize }, + 81usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEINFO_V40), + "::", + stringify!(byRetryLoginTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPasswordLevel) as usize - ptr as usize }, + 82usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEINFO_V40), + "::", + stringify!(byPasswordLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProxyType) as usize - ptr as usize }, + 83usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEINFO_V40), + "::", + stringify!(byProxyType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSurplusLockTime) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEINFO_V40), + "::", + stringify!(dwSurplusLockTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCharEncodeType) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEINFO_V40), + "::", + stringify!(byCharEncodeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportDev5) as usize - ptr as usize }, + 89usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEINFO_V40), + "::", + stringify!(bySupportDev5) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupport) as usize - ptr as usize }, + 90usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEINFO_V40), + "::", + stringify!(bySupport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLoginMode) as usize - ptr as usize }, + 91usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEINFO_V40), + "::", + stringify!(byLoginMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOEMCode) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEINFO_V40), + "::", + stringify!(dwOEMCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iResidualValidity) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEINFO_V40), + "::", + stringify!(iResidualValidity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byResidualValidity) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEINFO_V40), + "::", + stringify!(byResidualValidity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySingleStartDTalkChan) as usize - ptr as usize }, + 101usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEINFO_V40), + "::", + stringify!(bySingleStartDTalkChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySingleDTalkChanNums) as usize - ptr as usize }, + 102usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEINFO_V40), + "::", + stringify!(bySingleDTalkChanNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPassWordResetLevel) as usize - ptr as usize }, + 103usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEINFO_V40), + "::", + stringify!(byPassWordResetLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportStreamEncrypt) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEINFO_V40), + "::", + stringify!(bySupportStreamEncrypt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMarketType) as usize - ptr as usize }, + 105usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEINFO_V40), + "::", + stringify!(byMarketType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTLSCap) as usize - ptr as usize }, + 106usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEINFO_V40), + "::", + stringify!(byTLSCap) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 107usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEINFO_V40), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DEVICEINFO_V40 = tagNET_DVR_DEVICEINFO_V40; +pub type LPNET_DVR_DEVICEINFO_V40 = *mut tagNET_DVR_DEVICEINFO_V40; +pub type fLoginResultCallBack = ::std::option::Option< + unsafe extern "C" fn( + lUserID: LONG, + dwResult: DWORD, + lpDeviceInfo: LPNET_DVR_DEVICEINFO_V30, + pUser: *mut ::std::os::raw::c_void, + ), +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_USER_LOGIN_INFO { + pub sDeviceAddress: [::std::os::raw::c_char; 129usize], + pub byUseTransport: BYTE, + pub wPort: WORD, + pub sUserName: [::std::os::raw::c_char; 64usize], + pub sPassword: [::std::os::raw::c_char; 64usize], + pub cbLoginResult: fLoginResultCallBack, + pub pUser: *mut ::std::os::raw::c_void, + pub bUseAsynLogin: ::std::os::raw::c_int, + pub byProxyType: BYTE, + pub byUseUTCTime: BYTE, + pub byLoginMode: BYTE, + pub byHttps: BYTE, + pub iProxyID: LONG, + pub byVerifyMode: BYTE, + pub byRes3: [BYTE; 119usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_USER_LOGIN_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 416usize, + concat!("Size of: ", stringify!(NET_DVR_USER_LOGIN_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(NET_DVR_USER_LOGIN_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDeviceAddress) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_LOGIN_INFO), + "::", + stringify!(sDeviceAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseTransport) as usize - ptr as usize }, + 129usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_LOGIN_INFO), + "::", + stringify!(byUseTransport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 130usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_LOGIN_INFO), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_LOGIN_INFO), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_LOGIN_INFO), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cbLoginResult) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_LOGIN_INFO), + "::", + stringify!(cbLoginResult) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pUser) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_LOGIN_INFO), + "::", + stringify!(pUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bUseAsynLogin) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_LOGIN_INFO), + "::", + stringify!(bUseAsynLogin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProxyType) as usize - ptr as usize }, + 284usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_LOGIN_INFO), + "::", + stringify!(byProxyType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseUTCTime) as usize - ptr as usize }, + 285usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_LOGIN_INFO), + "::", + stringify!(byUseUTCTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLoginMode) as usize - ptr as usize }, + 286usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_LOGIN_INFO), + "::", + stringify!(byLoginMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHttps) as usize - ptr as usize }, + 287usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_LOGIN_INFO), + "::", + stringify!(byHttps) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iProxyID) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_LOGIN_INFO), + "::", + stringify!(iProxyID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVerifyMode) as usize - ptr as usize }, + 292usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_LOGIN_INFO), + "::", + stringify!(byVerifyMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 293usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_USER_LOGIN_INFO), + "::", + stringify!(byRes3) + ) + ); +} +pub type LPNET_DVR_USER_LOGIN_INFO = *mut NET_DVR_USER_LOGIN_INFO; +pub const _SDK_NET_ENV_LOCAL_AREA_NETWORK: _SDK_NET_ENV = 0; +pub const _SDK_NET_ENV_WIDE_AREA_NETWORK: _SDK_NET_ENV = 1; +pub type _SDK_NET_ENV = ::std::os::raw::c_uint; +pub use self::_SDK_NET_ENV as SDK_NETWORK_ENVIRONMENT; +pub const DISPLAY_MODE_NORMALMODE: DISPLAY_MODE = 0; +pub const DISPLAY_MODE_OVERLAYMODE: DISPLAY_MODE = 1; +pub type DISPLAY_MODE = ::std::os::raw::c_uint; +pub const SEND_MODE_PTOPTCPMODE: SEND_MODE = 0; +pub const SEND_MODE_PTOPUDPMODE: SEND_MODE = 1; +pub const SEND_MODE_MULTIMODE: SEND_MODE = 2; +pub const SEND_MODE_RTPMODE: SEND_MODE = 3; +pub const SEND_MODE_RESERVEDMODE: SEND_MODE = 4; +pub type SEND_MODE = ::std::os::raw::c_uint; +pub const CAPTURE_MODE_BMP_MODE: CAPTURE_MODE = 0; +pub const CAPTURE_MODE_JPEG_MODE: CAPTURE_MODE = 1; +pub type CAPTURE_MODE = ::std::os::raw::c_uint; +pub const REALSOUND_MODE_MONOPOLIZE_MODE: REALSOUND_MODE = 1; +pub const REALSOUND_MODE_SHARE_MODE: REALSOUND_MODE = 2; +pub type REALSOUND_MODE = ::std::os::raw::c_uint; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_CLIENTINFO { + pub lChannel: LONG, + pub lLinkMode: LONG, + pub hPlayWnd: HWND, + pub sMultiCastIP: *mut ::std::os::raw::c_char, + pub byProtoType: BYTE, + pub byRes: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_CLIENTINFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(NET_DVR_CLIENTINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(NET_DVR_CLIENTINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CLIENTINFO), + "::", + stringify!(lChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lLinkMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CLIENTINFO), + "::", + stringify!(lLinkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).hPlayWnd) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CLIENTINFO), + "::", + stringify!(hPlayWnd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sMultiCastIP) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CLIENTINFO), + "::", + stringify!(sMultiCastIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProtoType) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CLIENTINFO), + "::", + stringify!(byProtoType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CLIENTINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_CLIENTINFO = *mut NET_DVR_CLIENTINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_SDKSTATE { + pub dwTotalLoginNum: DWORD, + pub dwTotalRealPlayNum: DWORD, + pub dwTotalPlayBackNum: DWORD, + pub dwTotalAlarmChanNum: DWORD, + pub dwTotalFormatNum: DWORD, + pub dwTotalFileSearchNum: DWORD, + pub dwTotalLogSearchNum: DWORD, + pub dwTotalSerialNum: DWORD, + pub dwTotalUpgradeNum: DWORD, + pub dwTotalVoiceComNum: DWORD, + pub dwTotalBroadCastNum: DWORD, + pub dwTotalListenNum: DWORD, + pub dwEmailTestNum: DWORD, + pub dwBackupNum: DWORD, + pub dwTotalInquestUploadNum: DWORD, + pub dwRes: [DWORD; 6usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_SDKSTATE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 84usize, + concat!("Size of: ", stringify!(NET_DVR_SDKSTATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_SDKSTATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotalLoginNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKSTATE), + "::", + stringify!(dwTotalLoginNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotalRealPlayNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKSTATE), + "::", + stringify!(dwTotalRealPlayNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotalPlayBackNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKSTATE), + "::", + stringify!(dwTotalPlayBackNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotalAlarmChanNum) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKSTATE), + "::", + stringify!(dwTotalAlarmChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotalFormatNum) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKSTATE), + "::", + stringify!(dwTotalFormatNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotalFileSearchNum) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKSTATE), + "::", + stringify!(dwTotalFileSearchNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotalLogSearchNum) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKSTATE), + "::", + stringify!(dwTotalLogSearchNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotalSerialNum) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKSTATE), + "::", + stringify!(dwTotalSerialNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotalUpgradeNum) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKSTATE), + "::", + stringify!(dwTotalUpgradeNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotalVoiceComNum) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKSTATE), + "::", + stringify!(dwTotalVoiceComNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotalBroadCastNum) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKSTATE), + "::", + stringify!(dwTotalBroadCastNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotalListenNum) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKSTATE), + "::", + stringify!(dwTotalListenNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEmailTestNum) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKSTATE), + "::", + stringify!(dwEmailTestNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBackupNum) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKSTATE), + "::", + stringify!(dwBackupNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotalInquestUploadNum) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKSTATE), + "::", + stringify!(dwTotalInquestUploadNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRes) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKSTATE), + "::", + stringify!(dwRes) + ) + ); +} +pub type LPNET_DVR_SDKSTATE = *mut NET_DVR_SDKSTATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_SDKABL { + pub dwMaxLoginNum: DWORD, + pub dwMaxRealPlayNum: DWORD, + pub dwMaxPlayBackNum: DWORD, + pub dwMaxAlarmChanNum: DWORD, + pub dwMaxFormatNum: DWORD, + pub dwMaxFileSearchNum: DWORD, + pub dwMaxLogSearchNum: DWORD, + pub dwMaxSerialNum: DWORD, + pub dwMaxUpgradeNum: DWORD, + pub dwMaxVoiceComNum: DWORD, + pub dwMaxBroadCastNum: DWORD, + pub dwRes: [DWORD; 10usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_SDKABL() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 84usize, + concat!("Size of: ", stringify!(NET_DVR_SDKABL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_SDKABL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxLoginNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKABL), + "::", + stringify!(dwMaxLoginNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxRealPlayNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKABL), + "::", + stringify!(dwMaxRealPlayNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxPlayBackNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKABL), + "::", + stringify!(dwMaxPlayBackNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxAlarmChanNum) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKABL), + "::", + stringify!(dwMaxAlarmChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxFormatNum) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKABL), + "::", + stringify!(dwMaxFormatNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxFileSearchNum) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKABL), + "::", + stringify!(dwMaxFileSearchNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxLogSearchNum) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKABL), + "::", + stringify!(dwMaxLogSearchNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxSerialNum) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKABL), + "::", + stringify!(dwMaxSerialNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxUpgradeNum) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKABL), + "::", + stringify!(dwMaxUpgradeNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxVoiceComNum) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKABL), + "::", + stringify!(dwMaxVoiceComNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxBroadCastNum) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKABL), + "::", + stringify!(dwMaxBroadCastNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRes) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SDKABL), + "::", + stringify!(dwRes) + ) + ); +} +pub type LPNET_DVR_SDKABL = *mut NET_DVR_SDKABL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_ALARMER { + pub byUserIDValid: BYTE, + pub bySerialValid: BYTE, + pub byVersionValid: BYTE, + pub byDeviceNameValid: BYTE, + pub byMacAddrValid: BYTE, + pub byLinkPortValid: BYTE, + pub byDeviceIPValid: BYTE, + pub bySocketIPValid: BYTE, + pub lUserID: LONG, + pub sSerialNumber: [BYTE; 48usize], + pub dwDeviceVersion: DWORD, + pub sDeviceName: [::std::os::raw::c_char; 32usize], + pub byMacAddr: [BYTE; 6usize], + pub wLinkPort: WORD, + pub sDeviceIP: [::std::os::raw::c_char; 128usize], + pub sSocketIP: [::std::os::raw::c_char; 128usize], + pub byIpProtocol: BYTE, + pub byRes1: [BYTE; 2usize], + pub bJSONBroken: BYTE, + pub wSocketPort: WORD, + pub byRes2: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_ALARMER() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 372usize, + concat!("Size of: ", stringify!(NET_DVR_ALARMER)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_ALARMER)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUserIDValid) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMER), + "::", + stringify!(byUserIDValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySerialValid) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMER), + "::", + stringify!(bySerialValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVersionValid) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMER), + "::", + stringify!(byVersionValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceNameValid) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMER), + "::", + stringify!(byDeviceNameValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMacAddrValid) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMER), + "::", + stringify!(byMacAddrValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLinkPortValid) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMER), + "::", + stringify!(byLinkPortValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceIPValid) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMER), + "::", + stringify!(byDeviceIPValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySocketIPValid) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMER), + "::", + stringify!(bySocketIPValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lUserID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMER), + "::", + stringify!(lUserID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSerialNumber) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMER), + "::", + stringify!(sSerialNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeviceVersion) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMER), + "::", + stringify!(dwDeviceVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDeviceName) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMER), + "::", + stringify!(sDeviceName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMacAddr) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMER), + "::", + stringify!(byMacAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLinkPort) as usize - ptr as usize }, + 102usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMER), + "::", + stringify!(wLinkPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDeviceIP) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMER), + "::", + stringify!(sDeviceIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSocketIP) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMER), + "::", + stringify!(sSocketIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIpProtocol) as usize - ptr as usize }, + 360usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMER), + "::", + stringify!(byIpProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 361usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMER), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bJSONBroken) as usize - ptr as usize }, + 363usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMER), + "::", + stringify!(bJSONBroken) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSocketPort) as usize - ptr as usize }, + 364usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMER), + "::", + stringify!(wSocketPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 366usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMER), + "::", + stringify!(byRes2) + ) + ); +} +pub type LPNET_DVR_ALARMER = *mut NET_DVR_ALARMER; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DISPLAY_PARA { + pub bToScreen: ::std::os::raw::c_long, + pub bToVideoOut: ::std::os::raw::c_long, + pub nLeft: ::std::os::raw::c_long, + pub nTop: ::std::os::raw::c_long, + pub nWidth: ::std::os::raw::c_long, + pub nHeight: ::std::os::raw::c_long, + pub nReserved: ::std::os::raw::c_long, +} +#[test] +fn bindgen_test_layout_NET_DVR_DISPLAY_PARA() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(NET_DVR_DISPLAY_PARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(NET_DVR_DISPLAY_PARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bToScreen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DISPLAY_PARA), + "::", + stringify!(bToScreen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bToVideoOut) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DISPLAY_PARA), + "::", + stringify!(bToVideoOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nLeft) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DISPLAY_PARA), + "::", + stringify!(nLeft) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nTop) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DISPLAY_PARA), + "::", + stringify!(nTop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nWidth) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DISPLAY_PARA), + "::", + stringify!(nWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nHeight) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DISPLAY_PARA), + "::", + stringify!(nHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nReserved) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DISPLAY_PARA), + "::", + stringify!(nReserved) + ) + ); +} +pub type LPNET_DVR_DISPLAY_PARA = *mut NET_DVR_DISPLAY_PARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_CARDINFO { + pub lChannel: LONG, + pub lLinkMode: LONG, + pub sMultiCastIP: *mut ::std::os::raw::c_char, + pub struDisplayPara: NET_DVR_DISPLAY_PARA, +} +#[test] +fn bindgen_test_layout_NET_DVR_CARDINFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(NET_DVR_CARDINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(NET_DVR_CARDINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CARDINFO), + "::", + stringify!(lChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lLinkMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CARDINFO), + "::", + stringify!(lLinkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sMultiCastIP) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CARDINFO), + "::", + stringify!(sMultiCastIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDisplayPara) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CARDINFO), + "::", + stringify!(struDisplayPara) + ) + ); +} +pub type LPNET_DVR_CARDINFO = *mut NET_DVR_CARDINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_FIND_DATA { + pub sFileName: [::std::os::raw::c_char; 100usize], + pub struStartTime: NET_DVR_TIME, + pub struStopTime: NET_DVR_TIME, + pub dwFileSize: DWORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_FIND_DATA() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 152usize, + concat!("Size of: ", stringify!(NET_DVR_FIND_DATA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_FIND_DATA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FIND_DATA), + "::", + stringify!(sFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FIND_DATA), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FIND_DATA), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileSize) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FIND_DATA), + "::", + stringify!(dwFileSize) + ) + ); +} +pub type LPNET_DVR_FIND_DATA = *mut NET_DVR_FIND_DATA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_FINDDATA_V30 { + pub sFileName: [::std::os::raw::c_char; 100usize], + pub struStartTime: NET_DVR_TIME, + pub struStopTime: NET_DVR_TIME, + pub dwFileSize: DWORD, + pub sCardNum: [::std::os::raw::c_char; 32usize], + pub byLocked: BYTE, + pub byFileType: BYTE, + pub byRes: [BYTE; 2usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_FINDDATA_V30() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 188usize, + concat!("Size of: ", stringify!(NET_DVR_FINDDATA_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_FINDDATA_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FINDDATA_V30), + "::", + stringify!(sFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FINDDATA_V30), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FINDDATA_V30), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileSize) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FINDDATA_V30), + "::", + stringify!(dwFileSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCardNum) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FINDDATA_V30), + "::", + stringify!(sCardNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocked) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FINDDATA_V30), + "::", + stringify!(byLocked) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileType) as usize - ptr as usize }, + 185usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FINDDATA_V30), + "::", + stringify!(byFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 186usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FINDDATA_V30), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_FINDDATA_V30 = *mut NET_DVR_FINDDATA_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_FINDDATA_V40 { + pub sFileName: [::std::os::raw::c_char; 100usize], + pub struStartTime: NET_DVR_TIME, + pub struStopTime: NET_DVR_TIME, + pub dwFileSize: DWORD, + pub sCardNum: [::std::os::raw::c_char; 32usize], + pub byLocked: BYTE, + pub byFileType: BYTE, + pub byQuickSearch: BYTE, + pub byRes: BYTE, + pub dwFileIndex: DWORD, + pub byStreamType: BYTE, + pub byRes1: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_FINDDATA_V40() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 320usize, + concat!("Size of: ", stringify!(NET_DVR_FINDDATA_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_FINDDATA_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FINDDATA_V40), + "::", + stringify!(sFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FINDDATA_V40), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FINDDATA_V40), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileSize) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FINDDATA_V40), + "::", + stringify!(dwFileSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCardNum) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FINDDATA_V40), + "::", + stringify!(sCardNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocked) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FINDDATA_V40), + "::", + stringify!(byLocked) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileType) as usize - ptr as usize }, + 185usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FINDDATA_V40), + "::", + stringify!(byFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byQuickSearch) as usize - ptr as usize }, + 186usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FINDDATA_V40), + "::", + stringify!(byQuickSearch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 187usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FINDDATA_V40), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileIndex) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FINDDATA_V40), + "::", + stringify!(dwFileIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FINDDATA_V40), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 193usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FINDDATA_V40), + "::", + stringify!(byRes1) + ) + ); +} +pub type LPNET_DVR_FINDDATA_V40 = *mut NET_DVR_FINDDATA_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FINDDATA_V50 { + pub sFileName: [::std::os::raw::c_char; 100usize], + pub struStartTime: NET_DVR_TIME_SEARCH, + pub struStopTime: NET_DVR_TIME_SEARCH, + pub struAddr: NET_DVR_ADDRESS, + pub dwFileSize: DWORD, + pub byLocked: BYTE, + pub byFileType: BYTE, + pub byQuickSearch: BYTE, + pub byStreamType: BYTE, + pub dwFileIndex: DWORD, + pub sCardNum: [::std::os::raw::c_char; 32usize], + pub dwTotalLenH: DWORD, + pub dwTotalLenL: DWORD, + pub byBigFileType: BYTE, + pub byRes: [BYTE; 247usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FINDDATA_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 572usize, + concat!("Size of: ", stringify!(tagNET_DVR_FINDDATA_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FINDDATA_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDDATA_V50), + "::", + stringify!(sFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDDATA_V50), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDDATA_V50), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAddr) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDDATA_V50), + "::", + stringify!(struAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileSize) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDDATA_V50), + "::", + stringify!(dwFileSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocked) as usize - ptr as usize }, + 276usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDDATA_V50), + "::", + stringify!(byLocked) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileType) as usize - ptr as usize }, + 277usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDDATA_V50), + "::", + stringify!(byFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byQuickSearch) as usize - ptr as usize }, + 278usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDDATA_V50), + "::", + stringify!(byQuickSearch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 279usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDDATA_V50), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileIndex) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDDATA_V50), + "::", + stringify!(dwFileIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCardNum) as usize - ptr as usize }, + 284usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDDATA_V50), + "::", + stringify!(sCardNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotalLenH) as usize - ptr as usize }, + 316usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDDATA_V50), + "::", + stringify!(dwTotalLenH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotalLenL) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDDATA_V50), + "::", + stringify!(dwTotalLenL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBigFileType) as usize - ptr as usize }, + 324usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDDATA_V50), + "::", + stringify!(byBigFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 325usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDDATA_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FINDDATA_V50 = tagNET_DVR_FINDDATA_V50; +pub type LPNET_DVR_FINDDATA_V50 = *mut tagNET_DVR_FINDDATA_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_FINDDATA_CARD { + pub sFileName: [::std::os::raw::c_char; 100usize], + pub struStartTime: NET_DVR_TIME, + pub struStopTime: NET_DVR_TIME, + pub dwFileSize: DWORD, + pub sCardNum: [::std::os::raw::c_char; 32usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_FINDDATA_CARD() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 184usize, + concat!("Size of: ", stringify!(NET_DVR_FINDDATA_CARD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_FINDDATA_CARD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FINDDATA_CARD), + "::", + stringify!(sFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FINDDATA_CARD), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FINDDATA_CARD), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileSize) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FINDDATA_CARD), + "::", + stringify!(dwFileSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCardNum) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FINDDATA_CARD), + "::", + stringify!(sCardNum) + ) + ); +} +pub type LPNET_DVR_FINDDATA_CARD = *mut NET_DVR_FINDDATA_CARD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_FILECOND { + pub lChannel: LONG, + pub dwFileType: DWORD, + pub dwIsLocked: DWORD, + pub dwUseCardNo: DWORD, + pub sCardNumber: [BYTE; 32usize], + pub struStartTime: NET_DVR_TIME, + pub struStopTime: NET_DVR_TIME, +} +#[test] +fn bindgen_test_layout_NET_DVR_FILECOND() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 96usize, + concat!("Size of: ", stringify!(NET_DVR_FILECOND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_FILECOND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FILECOND), + "::", + stringify!(lChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FILECOND), + "::", + stringify!(dwFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIsLocked) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FILECOND), + "::", + stringify!(dwIsLocked) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwUseCardNo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FILECOND), + "::", + stringify!(dwUseCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCardNumber) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FILECOND), + "::", + stringify!(sCardNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FILECOND), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FILECOND), + "::", + stringify!(struStopTime) + ) + ); +} +pub type LPNET_DVR_FILECOND = *mut NET_DVR_FILECOND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_POINT_FRAME { + pub xTop: ::std::os::raw::c_int, + pub yTop: ::std::os::raw::c_int, + pub xBottom: ::std::os::raw::c_int, + pub yBottom: ::std::os::raw::c_int, + pub bCounter: ::std::os::raw::c_int, +} +#[test] +fn bindgen_test_layout_NET_DVR_POINT_FRAME() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(NET_DVR_POINT_FRAME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_POINT_FRAME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).xTop) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POINT_FRAME), + "::", + stringify!(xTop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).yTop) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POINT_FRAME), + "::", + stringify!(yTop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).xBottom) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POINT_FRAME), + "::", + stringify!(xBottom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).yBottom) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POINT_FRAME), + "::", + stringify!(yBottom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bCounter) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POINT_FRAME), + "::", + stringify!(bCounter) + ) + ); +} +pub type LPNET_DVR_POINT_FRAME = *mut NET_DVR_POINT_FRAME; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_COMPRESSION_AUDIO { + pub byAudioEncType: BYTE, + pub byAudioSamplingRate: BYTE, + pub byAudioBitRate: BYTE, + pub byres: [BYTE; 4usize], + pub bySupport: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_COMPRESSION_AUDIO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_COMPRESSION_AUDIO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_COMPRESSION_AUDIO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioEncType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COMPRESSION_AUDIO), + "::", + stringify!(byAudioEncType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioSamplingRate) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COMPRESSION_AUDIO), + "::", + stringify!(byAudioSamplingRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioBitRate) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COMPRESSION_AUDIO), + "::", + stringify!(byAudioBitRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byres) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COMPRESSION_AUDIO), + "::", + stringify!(byres) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupport) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COMPRESSION_AUDIO), + "::", + stringify!(bySupport) + ) + ); +} +pub type NET_DVR_COMPRESSION_AUDIO = tagNET_DVR_COMPRESSION_AUDIO; +pub type LPNET_DVR_COMPRESSION_AUDIO = *mut tagNET_DVR_COMPRESSION_AUDIO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AP_INFO { + pub sSsid: [::std::os::raw::c_char; 32usize], + pub dwMode: DWORD, + pub dwSecurity: DWORD, + pub dwChannel: DWORD, + pub dwSignalStrength: DWORD, + pub dwSpeed: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AP_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 52usize, + concat!("Size of: ", stringify!(tagNET_DVR_AP_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AP_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSsid) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AP_INFO), + "::", + stringify!(sSsid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMode) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AP_INFO), + "::", + stringify!(dwMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSecurity) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AP_INFO), + "::", + stringify!(dwSecurity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AP_INFO), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSignalStrength) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AP_INFO), + "::", + stringify!(dwSignalStrength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSpeed) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AP_INFO), + "::", + stringify!(dwSpeed) + ) + ); +} +pub type NET_DVR_AP_INFO = tagNET_DVR_AP_INFO; +pub type LPNET_DVR_AP_INFO = *mut tagNET_DVR_AP_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AP_INFO_LIST { + pub dwSize: DWORD, + pub dwCount: DWORD, + pub struApInfo: [NET_DVR_AP_INFO; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AP_INFO_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1048usize, + concat!("Size of: ", stringify!(tagNET_DVR_AP_INFO_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AP_INFO_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AP_INFO_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCount) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AP_INFO_LIST), + "::", + stringify!(dwCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struApInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AP_INFO_LIST), + "::", + stringify!(struApInfo) + ) + ); +} +pub type NET_DVR_AP_INFO_LIST = tagNET_DVR_AP_INFO_LIST; +pub type LPNET_DVR_AP_INFO_LIST = *mut tagNET_DVR_AP_INFO_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WIFIETHERNET { + pub sIpAddress: [::std::os::raw::c_char; 16usize], + pub sIpMask: [::std::os::raw::c_char; 16usize], + pub byMACAddr: [BYTE; 6usize], + pub byCloseWifi: BYTE, + pub bRes: BYTE, + pub dwEnableDhcp: DWORD, + pub dwAutoDns: DWORD, + pub sFirstDns: [::std::os::raw::c_char; 16usize], + pub sSecondDns: [::std::os::raw::c_char; 16usize], + pub sGatewayIpAddr: [::std::os::raw::c_char; 16usize], + pub bRes2: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIFIETHERNET() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 104usize, + concat!("Size of: ", stringify!(tagNET_DVR_WIFIETHERNET)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WIFIETHERNET)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sIpAddress) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFIETHERNET), + "::", + stringify!(sIpAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sIpMask) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFIETHERNET), + "::", + stringify!(sIpMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMACAddr) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFIETHERNET), + "::", + stringify!(byMACAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCloseWifi) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFIETHERNET), + "::", + stringify!(byCloseWifi) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bRes) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFIETHERNET), + "::", + stringify!(bRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnableDhcp) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFIETHERNET), + "::", + stringify!(dwEnableDhcp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAutoDns) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFIETHERNET), + "::", + stringify!(dwAutoDns) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFirstDns) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFIETHERNET), + "::", + stringify!(sFirstDns) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSecondDns) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFIETHERNET), + "::", + stringify!(sSecondDns) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sGatewayIpAddr) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFIETHERNET), + "::", + stringify!(sGatewayIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bRes2) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFIETHERNET), + "::", + stringify!(bRes2) + ) + ); +} +pub type NET_DVR_WIFIETHERNET = tagNET_DVR_WIFIETHERNET; +pub type LPNET_DVR_WIFIETHERNET = *mut tagNET_DVR_WIFIETHERNET; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_WIFI_CFG_EX { + pub struEtherNet: NET_DVR_WIFIETHERNET, + pub sEssid: [::std::os::raw::c_char; 32usize], + pub dwMode: DWORD, + pub dwSecurity: DWORD, + pub key: tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1 { + pub wep: tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_1, + pub wpa_psk: tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_2, + pub wpa_wpa2: tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_1 { + pub dwAuthentication: DWORD, + pub dwKeyLength: DWORD, + pub dwKeyType: DWORD, + pub dwActive: DWORD, + pub sKeyInfo: [[::std::os::raw::c_char; 33usize]; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAuthentication) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(dwAuthentication) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwKeyLength) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(dwKeyLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwKeyType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(dwKeyType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwActive) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(dwActive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sKeyInfo) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(sKeyInfo) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_2 { + pub dwKeyLength: DWORD, + pub sKeyInfo: [::std::os::raw::c_char; 63usize], + pub byEncryptType: BYTE, + pub sNewKeyInfo: [::std::os::raw::c_char; 68usize], + pub byKeyType: BYTE, + pub byRes: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwKeyLength) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(dwKeyLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sKeyInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(sKeyInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEncryptType) as usize - ptr as usize }, + 67usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byEncryptType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sNewKeyInfo) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(sNewKeyInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byKeyType) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byKeyType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 137usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3 { + pub byEncryptType: BYTE, + pub byAuthType: BYTE, + pub byRes: [BYTE; 2usize], + pub auth_param: tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1 { + pub EAP_TTLS: tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1, + pub EAP_PEAP: tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_2, + pub EAP_TLS: tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_3, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1 { + pub byEapolVersion: BYTE, + pub byAuthType: BYTE, + pub byRes1: [BYTE; 2usize], + pub byAnonyIdentity: [BYTE; 32usize], + pub byUserName: [BYTE; 32usize], + pub byPassword: [BYTE; 32usize], + pub byRes: [BYTE; 44usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1( +) { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::< + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1, + >(), + 144usize, + concat!( + "Size of: ", + stringify!( + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1 + ) + ) + ); + assert_eq!( + ::std::mem::align_of::< + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1, + >(), + 1usize, + concat!( + "Alignment of ", + stringify!( + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1 + ) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEapolVersion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!( + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1 + ), + "::", + stringify!(byEapolVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAuthType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!( + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1 + ), + "::", + stringify!(byAuthType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!( + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1 + ), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAnonyIdentity) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!( + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1 + ), + "::", + stringify!(byAnonyIdentity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUserName) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!( + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1 + ), + "::", + stringify!(byUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPassword) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!( + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1 + ), + "::", + stringify!(byPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!( + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1 + ), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_2 { + pub byEapolVersion: BYTE, + pub byAuthType: BYTE, + pub byPeapVersion: BYTE, + pub byPeapLabel: BYTE, + pub byAnonyIdentity: [BYTE; 32usize], + pub byUserName: [BYTE; 32usize], + pub byPassword: [BYTE; 32usize], + pub byRes: [BYTE; 44usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_2( +) { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_2, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::< + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_2, + >(), + 144usize, + concat!( + "Size of: ", + stringify!( + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_2 + ) + ) + ); + assert_eq!( + ::std::mem::align_of::< + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_2, + >(), + 1usize, + concat!( + "Alignment of ", + stringify!( + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_2 + ) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEapolVersion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!( + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_2 + ), + "::", + stringify!(byEapolVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAuthType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!( + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_2 + ), + "::", + stringify!(byAuthType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPeapVersion) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!( + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_2 + ), + "::", + stringify!(byPeapVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPeapLabel) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!( + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_2 + ), + "::", + stringify!(byPeapLabel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAnonyIdentity) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!( + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_2 + ), + "::", + stringify!(byAnonyIdentity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUserName) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!( + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_2 + ), + "::", + stringify!(byUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPassword) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!( + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_2 + ), + "::", + stringify!(byPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!( + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_2 + ), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_3 { + pub byEapolVersion: BYTE, + pub byRes1: [BYTE; 3usize], + pub byIdentity: [BYTE; 32usize], + pub byPrivateKeyPswd: [BYTE; 32usize], + pub byRes: [BYTE; 76usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_3( +) { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_3, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::< + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_3, + >(), + 144usize, + concat!( + "Size of: ", + stringify!( + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_3 + ) + ) + ); + assert_eq!( + ::std::mem::align_of::< + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_3, + >(), + 1usize, + concat!( + "Alignment of ", + stringify!( + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_3 + ) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEapolVersion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!( + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_3 + ), + "::", + stringify!(byEapolVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!( + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_3 + ), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIdentity) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!( + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_3 + ), + "::", + stringify!(byIdentity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPrivateKeyPswd) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!( + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_3 + ), + "::", + stringify!(byPrivateKeyPswd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!( + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_3 + ), + "::", + stringify!(byRes) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).EAP_TTLS) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1), + "::", + stringify!(EAP_TTLS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).EAP_PEAP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1), + "::", + stringify!(EAP_PEAP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).EAP_TLS) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1), + "::", + stringify!(EAP_TLS) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEncryptType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byEncryptType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAuthType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byAuthType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).auth_param) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(auth_param) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wep) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1), + "::", + stringify!(wep) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wpa_psk) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1), + "::", + stringify!(wpa_psk) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wpa_wpa2) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG_EX__bindgen_ty_1), + "::", + stringify!(wpa_wpa2) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIFI_CFG_EX() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 292usize, + concat!("Size of: ", stringify!(tagNET_DVR_WIFI_CFG_EX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WIFI_CFG_EX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEtherNet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG_EX), + "::", + stringify!(struEtherNet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sEssid) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG_EX), + "::", + stringify!(sEssid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMode) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG_EX), + "::", + stringify!(dwMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSecurity) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG_EX), + "::", + stringify!(dwSecurity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).key) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG_EX), + "::", + stringify!(key) + ) + ); +} +pub type NET_DVR_WIFI_CFG_EX = tagNET_DVR_WIFI_CFG_EX; +pub type LPNET_DVR_WIFI_CFG_EX = *mut tagNET_DVR_WIFI_CFG_EX; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_WIFI_CFG { + pub dwSize: DWORD, + pub struWifiCfg: NET_DVR_WIFI_CFG_EX, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIFI_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 296usize, + concat!("Size of: ", stringify!(tagNET_DVR_WIFI_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WIFI_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWifiCfg) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CFG), + "::", + stringify!(struWifiCfg) + ) + ); +} +pub type NET_DVR_WIFI_CFG = tagNET_DVR_WIFI_CFG; +pub type LPNET_DVR_WIFI_CFG = *mut tagNET_DVR_WIFI_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WIFI_CONNECT_STATUS { + pub dwSize: DWORD, + pub byCurStatus: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwErrorCode: DWORD, + pub byRes: [BYTE; 244usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIFI_CONNECT_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_WIFI_CONNECT_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WIFI_CONNECT_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CONNECT_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCurStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CONNECT_STATUS), + "::", + stringify!(byCurStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CONNECT_STATUS), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwErrorCode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CONNECT_STATUS), + "::", + stringify!(dwErrorCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CONNECT_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WIFI_CONNECT_STATUS = tagNET_DVR_WIFI_CONNECT_STATUS; +pub type LPNET_DVR_WIFI_CONNECT_STATUS = *mut tagNET_DVR_WIFI_CONNECT_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WIFI_WORKMODE { + pub dwSize: DWORD, + pub dwNetworkInterfaceMode: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIFI_WORKMODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_WIFI_WORKMODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WIFI_WORKMODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_WORKMODE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNetworkInterfaceMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_WORKMODE), + "::", + stringify!(dwNetworkInterfaceMode) + ) + ); +} +pub type NET_DVR_WIFI_WORKMODE = tagNET_DVR_WIFI_WORKMODE; +pub type LPNET_DVR_WIFI_WORKMODE = *mut tagNET_DVR_WIFI_WORKMODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_VEHICLE_INFO_COND { + pub dwSize: DWORD, + pub strStartTime: NET_DVR_TIME_EX, + pub strStopTime: NET_DVR_TIME_EX, + pub sLicense: [::std::os::raw::c_char; 32usize], + pub dwChannel: DWORD, + pub byRegion: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_VEHICLE_INFO_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 184usize, + concat!("Size of: ", stringify!(NET_DVR_VEHICLE_INFO_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_VEHICLE_INFO_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_COND), + "::", + stringify!(strStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strStopTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_COND), + "::", + stringify!(strStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLicense) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_COND), + "::", + stringify!(sLicense) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRegion) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_COND), + "::", + stringify!(byRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 57usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_VEHICLE_INFO_COND = *mut NET_DVR_VEHICLE_INFO_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_VEHICLE_INFO_CFG { + pub dwSize: DWORD, + pub dwIndex: DWORD, + pub byDeviceID: [BYTE; 48usize], + pub byBelieve: BYTE, + pub byDir: BYTE, + pub byLineID: BYTE, + pub byRes1: BYTE, + pub struSnapTime: NET_DVR_TIME_EX, + pub sLicense: [::std::os::raw::c_char; 32usize], + pub byMonitoringSiteID: [BYTE; 48usize], + pub byCountry: BYTE, + pub byMatchingResult: BYTE, + pub byArea: BYTE, + pub byPlateType: BYTE, + pub sDeviceName: [::std::os::raw::c_char; 32usize], + pub byPlateColor: BYTE, + pub byPlateSize: BYTE, + pub byRes2: [BYTE; 2usize], + pub sPlateCategory: [::std::os::raw::c_char; 8usize], + pub sPlateImageURL: [::std::os::raw::c_char; 256usize], + pub sEffectiveTime: [::std::os::raw::c_char; 32usize], + pub byRes: [BYTE; 176usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_VEHICLE_INFO_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 660usize, + concat!("Size of: ", stringify!(NET_DVR_VEHICLE_INFO_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_VEHICLE_INFO_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_CFG), + "::", + stringify!(dwIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_CFG), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBelieve) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_CFG), + "::", + stringify!(byBelieve) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDir) as usize - ptr as usize }, + 57usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_CFG), + "::", + stringify!(byDir) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLineID) as usize - ptr as usize }, + 58usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_CFG), + "::", + stringify!(byLineID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 59usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSnapTime) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_CFG), + "::", + stringify!(struSnapTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLicense) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_CFG), + "::", + stringify!(sLicense) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonitoringSiteID) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_CFG), + "::", + stringify!(byMonitoringSiteID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCountry) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_CFG), + "::", + stringify!(byCountry) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMatchingResult) as usize - ptr as usize }, + 149usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_CFG), + "::", + stringify!(byMatchingResult) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byArea) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_CFG), + "::", + stringify!(byArea) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateType) as usize - ptr as usize }, + 151usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_CFG), + "::", + stringify!(byPlateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDeviceName) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_CFG), + "::", + stringify!(sDeviceName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateColor) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_CFG), + "::", + stringify!(byPlateColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateSize) as usize - ptr as usize }, + 185usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_CFG), + "::", + stringify!(byPlateSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 186usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_CFG), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPlateCategory) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_CFG), + "::", + stringify!(sPlateCategory) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPlateImageURL) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_CFG), + "::", + stringify!(sPlateImageURL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sEffectiveTime) as usize - ptr as usize }, + 452usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_CFG), + "::", + stringify!(sEffectiveTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 484usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_INFO_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_VEHICLE_INFO_CFG = *mut NET_DVR_VEHICLE_INFO_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_CTRLINFO { + pub byVCAEnable: BYTE, + pub byVCAType: BYTE, + pub byStreamWithVCA: BYTE, + pub byMode: BYTE, + pub byControlType: BYTE, + pub byPicWithVCA: BYTE, + pub byRes: [BYTE; 2usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_CTRLINFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_VCA_CTRLINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_VCA_CTRLINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVCAEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_CTRLINFO), + "::", + stringify!(byVCAEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVCAType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_CTRLINFO), + "::", + stringify!(byVCAType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamWithVCA) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_CTRLINFO), + "::", + stringify!(byStreamWithVCA) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_CTRLINFO), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byControlType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_CTRLINFO), + "::", + stringify!(byControlType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicWithVCA) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_CTRLINFO), + "::", + stringify!(byPicWithVCA) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_CTRLINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_CTRLINFO = tagNET_VCA_CTRLINFO; +pub type LPNET_VCA_CTRLINFO = *mut tagNET_VCA_CTRLINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_CTRLCFG { + pub dwSize: DWORD, + pub struCtrlInfo: [NET_VCA_CTRLINFO; 16usize], + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_CTRLCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!("Size of: ", stringify!(tagNET_VCA_CTRLCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_CTRLCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_CTRLCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCtrlInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_CTRLCFG), + "::", + stringify!(struCtrlInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_CTRLCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_CTRLCFG = tagNET_VCA_CTRLCFG; +pub type LPNET_VCA_CTRLCFG = *mut tagNET_VCA_CTRLCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_DEV_ABILITY { + pub dwSize: DWORD, + pub byVCAChanNum: BYTE, + pub byPlateChanNum: BYTE, + pub byBBaseChanNum: BYTE, + pub byBAdvanceChanNum: BYTE, + pub byBFullChanNum: BYTE, + pub byATMChanNum: BYTE, + pub byPDCChanNum: BYTE, + pub byITSChanNum: BYTE, + pub byBPrisonChanNum: BYTE, + pub byFSnapChanNum: BYTE, + pub byFSnapRecogChanNum: BYTE, + pub byFRetrievalChanNum: BYTE, + pub bySupport: BYTE, + pub byFRecogChanNum: BYTE, + pub byBPPerimeterChanNum: BYTE, + pub byTPSChanNum: BYTE, + pub byTFSChanNum: BYTE, + pub byFSnapBFullChanNum: BYTE, + pub byHeatMapChanNum: BYTE, + pub bySmartVehicleNum: BYTE, + pub bySmartHVTNum: BYTE, + pub bySmartNum: BYTE, + pub byVehicleNum: BYTE, + pub bySmartRoadDetectionNum: BYTE, + pub bySmartFaceDetectionNum: BYTE, + pub bySmartHeatMapNum: BYTE, + pub byHumanRecognitionNum: BYTE, + pub byEdcationStudentNum: BYTE, + pub byRoadDetectionNum: BYTE, + pub byPersonDensityDetection: BYTE, + pub bySafetyHelmetDetection: BYTE, + pub byPerimeterCapture: BYTE, + pub byHeelPDC: BYTE, + pub by12MPLiveView: BYTE, + pub byTeacherBehaviorDetectNum: BYTE, + pub byMixedTargetDetection: BYTE, + pub byFaceContrast: BYTE, + pub byCityManagement: BYTE, + pub byMixedTargetDetectionSmart: BYTE, + pub byRes: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_DEV_ABILITY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_VCA_DEV_ABILITY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_DEV_ABILITY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVCAChanNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byVCAChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateChanNum) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byPlateChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBBaseChanNum) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byBBaseChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBAdvanceChanNum) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byBAdvanceChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBFullChanNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byBFullChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byATMChanNum) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byATMChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPDCChanNum) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byPDCChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byITSChanNum) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byITSChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBPrisonChanNum) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byBPrisonChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFSnapChanNum) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byFSnapChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFSnapRecogChanNum) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byFSnapRecogChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFRetrievalChanNum) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byFRetrievalChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupport) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(bySupport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFRecogChanNum) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byFRecogChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBPPerimeterChanNum) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byBPPerimeterChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTPSChanNum) as usize - ptr as usize }, + 19usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byTPSChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTFSChanNum) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byTFSChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFSnapBFullChanNum) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byFSnapBFullChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHeatMapChanNum) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byHeatMapChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySmartVehicleNum) as usize - ptr as usize }, + 23usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(bySmartVehicleNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySmartHVTNum) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(bySmartHVTNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySmartNum) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(bySmartNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleNum) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byVehicleNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySmartRoadDetectionNum) as usize - ptr as usize }, + 27usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(bySmartRoadDetectionNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySmartFaceDetectionNum) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(bySmartFaceDetectionNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySmartHeatMapNum) as usize - ptr as usize }, + 29usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(bySmartHeatMapNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHumanRecognitionNum) as usize - ptr as usize }, + 30usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byHumanRecognitionNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEdcationStudentNum) as usize - ptr as usize }, + 31usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byEdcationStudentNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRoadDetectionNum) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byRoadDetectionNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPersonDensityDetection) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byPersonDensityDetection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySafetyHelmetDetection) as usize - ptr as usize }, + 34usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(bySafetyHelmetDetection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPerimeterCapture) as usize - ptr as usize }, + 35usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byPerimeterCapture) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHeelPDC) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byHeelPDC) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).by12MPLiveView) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(by12MPLiveView) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTeacherBehaviorDetectNum) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byTeacherBehaviorDetectNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMixedTargetDetection) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byMixedTargetDetection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaceContrast) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byFaceContrast) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCityManagement) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byCityManagement) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMixedTargetDetectionSmart) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byMixedTargetDetectionSmart) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 43usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_ABILITY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_DEV_ABILITY = tagNET_VCA_DEV_ABILITY; +pub type LPNET_VCA_DEV_ABILITY = *mut tagNET_VCA_DEV_ABILITY; +pub const _VCA_ABILITY_TYPE__TRAVERSE_PLANE_ABILITY: _VCA_ABILITY_TYPE_ = 1; +pub const _VCA_ABILITY_TYPE__ENTER_AREA_ABILITY: _VCA_ABILITY_TYPE_ = 2; +pub const _VCA_ABILITY_TYPE__EXIT_AREA_ABILITY: _VCA_ABILITY_TYPE_ = 4; +pub const _VCA_ABILITY_TYPE__INTRUSION_ABILITY: _VCA_ABILITY_TYPE_ = 8; +pub const _VCA_ABILITY_TYPE__LOITER_ABILITY: _VCA_ABILITY_TYPE_ = 16; +pub const _VCA_ABILITY_TYPE__LEFT_TAKE_ABILITY: _VCA_ABILITY_TYPE_ = 32; +pub const _VCA_ABILITY_TYPE__PARKING_ABILITY: _VCA_ABILITY_TYPE_ = 64; +pub const _VCA_ABILITY_TYPE__RUN_ABILITY: _VCA_ABILITY_TYPE_ = 128; +pub const _VCA_ABILITY_TYPE__HIGH_DENSITY_ABILITY: _VCA_ABILITY_TYPE_ = 256; +pub const _VCA_ABILITY_TYPE__LF_TRACK_ABILITY: _VCA_ABILITY_TYPE_ = 512; +pub const _VCA_ABILITY_TYPE__VIOLENT_MOTION_ABILITY: _VCA_ABILITY_TYPE_ = 1024; +pub const _VCA_ABILITY_TYPE__REACH_HIGHT_ABILITY: _VCA_ABILITY_TYPE_ = 2048; +pub const _VCA_ABILITY_TYPE__GET_UP_ABILITY: _VCA_ABILITY_TYPE_ = 4096; +pub const _VCA_ABILITY_TYPE__LEFT_ABILITY: _VCA_ABILITY_TYPE_ = 8192; +pub const _VCA_ABILITY_TYPE__TAKE_ABILITY: _VCA_ABILITY_TYPE_ = 16384; +pub const _VCA_ABILITY_TYPE__LEAVE_POSITION: _VCA_ABILITY_TYPE_ = 32768; +pub const _VCA_ABILITY_TYPE__TRAIL_ABILITY: _VCA_ABILITY_TYPE_ = 65536; +pub const _VCA_ABILITY_TYPE__KEY_PERSON_GET_UP_ABILITY: _VCA_ABILITY_TYPE_ = 131072; +pub const _VCA_ABILITY_TYPE__STANDUP_ABILITY: _VCA_ABILITY_TYPE_ = 262144; +pub const _VCA_ABILITY_TYPE__FALL_DOWN_ABILITY: _VCA_ABILITY_TYPE_ = 524288; +pub const _VCA_ABILITY_TYPE__AUDIO_ABNORMAL_ABILITY: _VCA_ABILITY_TYPE_ = 1048576; +pub const _VCA_ABILITY_TYPE__ADV_REACH_HEIGHT_ABILITY: _VCA_ABILITY_TYPE_ = 2097152; +pub const _VCA_ABILITY_TYPE__TOILET_TARRY_ABILITY: _VCA_ABILITY_TYPE_ = 4194304; +pub const _VCA_ABILITY_TYPE__YARD_TARRY_ABILITY: _VCA_ABILITY_TYPE_ = 8388608; +pub const _VCA_ABILITY_TYPE__ADV_TRAVERSE_PLANE_ABILITY: _VCA_ABILITY_TYPE_ = 16777216; +pub const _VCA_ABILITY_TYPE__LECTURE_ABILITY: _VCA_ABILITY_TYPE_ = 33554432; +pub const _VCA_ABILITY_TYPE__ANSWER_ABILITY: _VCA_ABILITY_TYPE_ = 67108864; +pub const _VCA_ABILITY_TYPE__HUMAN_ENTER_ABILITY: _VCA_ABILITY_TYPE_ = 268435456; +pub const _VCA_ABILITY_TYPE__OVER_TIME_ABILITY: _VCA_ABILITY_TYPE_ = 536870912; +pub const _VCA_ABILITY_TYPE__STICK_UP_ABILITY: _VCA_ABILITY_TYPE_ = 1073741824; +pub const _VCA_ABILITY_TYPE__INSTALL_SCANNER_ABILITY: _VCA_ABILITY_TYPE_ = 2147483648; +pub type _VCA_ABILITY_TYPE_ = ::std::os::raw::c_uint; +pub use self::_VCA_ABILITY_TYPE_ as VCA_ABILITY_TYPE; +pub const _VCA_ABILITY_TYPE_EX__PEOPLENUM_CHANGE_ABILITY: _VCA_ABILITY_TYPE_EX_ = 2; +pub const _VCA_ABILITY_TYPE_EX__SPACING_CHANGE_ABILITY: _VCA_ABILITY_TYPE_EX_ = 4; +pub const _VCA_ABILITY_TYPE_EX__EVENT_COMBINED_ABILITY: _VCA_ABILITY_TYPE_EX_ = 8; +pub const _VCA_ABILITY_TYPE_EX__EVENT_SIT_QUIETLY: _VCA_ABILITY_TYPE_EX_ = 16; +pub const _VCA_ABILITY_TYPE_EX__EVENT_HIGH_DENSITY_STATUS_ABILITY: _VCA_ABILITY_TYPE_EX_ = 32; +pub const _VCA_ABILITY_TYPE_EX__EVENT_RUNNING: _VCA_ABILITY_TYPE_EX_ = 64; +pub const _VCA_ABILITY_TYPE_EX__EVENT_RETENTION: _VCA_ABILITY_TYPE_EX_ = 128; +pub const _VCA_ABILITY_TYPE_EX__EVENT_TEACHER_WRITING: _VCA_ABILITY_TYPE_EX_ = 256; +pub const _VCA_ABILITY_TYPE_EX__EVENT_FAKECARD: _VCA_ABILITY_TYPE_EX_ = 512; +pub type _VCA_ABILITY_TYPE_EX_ = ::std::os::raw::c_uint; +pub use self::_VCA_ABILITY_TYPE_EX_ as VCA_ABILITY_TYPE_EX; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_BEHAVIOR_BASE: _VCA_CHAN_ABILITY_TYPE_ = 1; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_BEHAVIOR_ADVANCE: _VCA_CHAN_ABILITY_TYPE_ = 2; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_BEHAVIOR_FULL: _VCA_CHAN_ABILITY_TYPE_ = 3; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_PLATE: _VCA_CHAN_ABILITY_TYPE_ = 4; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_ATM: _VCA_CHAN_ABILITY_TYPE_ = 5; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_PDC: _VCA_CHAN_ABILITY_TYPE_ = 6; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_ITS: _VCA_CHAN_ABILITY_TYPE_ = 7; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_BEHAVIOR_PRISON: _VCA_CHAN_ABILITY_TYPE_ = 8; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_FACE_SNAP: _VCA_CHAN_ABILITY_TYPE_ = 9; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_FACE_SNAPRECOG: _VCA_CHAN_ABILITY_TYPE_ = 10; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_FACE_RETRIEVAL: _VCA_CHAN_ABILITY_TYPE_ = 11; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_FACE_RECOG: _VCA_CHAN_ABILITY_TYPE_ = 12; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_BEHAVIOR_PRISON_PERIMETER: _VCA_CHAN_ABILITY_TYPE_ = 13; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_TPS: _VCA_CHAN_ABILITY_TYPE_ = 14; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_TFS: _VCA_CHAN_ABILITY_TYPE_ = 15; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_BEHAVIOR_FACESNAP: _VCA_CHAN_ABILITY_TYPE_ = 16; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_HEATMAP: _VCA_CHAN_ABILITY_TYPE_ = 17; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_SMART_VEHICLE_DETECTION: _VCA_CHAN_ABILITY_TYPE_ = 18; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_SMART_HVT_DETECTION: _VCA_CHAN_ABILITY_TYPE_ = 19; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_SMART_EVENT: _VCA_CHAN_ABILITY_TYPE_ = 20; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_VEHICLE_DETECTION: _VCA_CHAN_ABILITY_TYPE_ = 21; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_SMART_ROAD_DETECTION: _VCA_CHAN_ABILITY_TYPE_ = 22; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_SMART_FACE_DETECTION: _VCA_CHAN_ABILITY_TYPE_ = 23; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_SMART_HEATMAP: _VCA_CHAN_ABILITY_TYPE_ = 24; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_HUMAN_RECOGNITION: _VCA_CHAN_ABILITY_TYPE_ = 25; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_EDUCATION_STUDENT_DETECTION: _VCA_CHAN_ABILITY_TYPE_ = 26; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_ROAD_DETECTION: _VCA_CHAN_ABILITY_TYPE_ = 27; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_PERSON_DENSITY_DETECTION: _VCA_CHAN_ABILITY_TYPE_ = 28; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_PERIMETER_CAPTURE: _VCA_CHAN_ABILITY_TYPE_ = 29; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_SAFETY_HELMET_DETECTION: _VCA_CHAN_ABILITY_TYPE_ = 30; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_HEEL_PDC: _VCA_CHAN_ABILITY_TYPE_ = 31; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_12MPLIVE_VIEW: _VCA_CHAN_ABILITY_TYPE_ = 32; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_TEACHER_BEHAVIOR_DETECTION: _VCA_CHAN_ABILITY_TYPE_ = 33; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_MIXED_TARGET_DETECTION: _VCA_CHAN_ABILITY_TYPE_ = 34; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_FACE_CONTRAST: _VCA_CHAN_ABILITY_TYPE_ = 35; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_CITY_MANAGEMENT: _VCA_CHAN_ABILITY_TYPE_ = 36; +pub const _VCA_CHAN_ABILITY_TYPE__VCA_MIXED_TARGET_DETECTION_SMART: _VCA_CHAN_ABILITY_TYPE_ = 37; +pub type _VCA_CHAN_ABILITY_TYPE_ = ::std::os::raw::c_uint; +pub use self::_VCA_CHAN_ABILITY_TYPE_ as VCA_CHAN_ABILITY_TYPE; +pub const _VCA_CHAN_MODE_TYPE__VCA_ATM_PANEL: _VCA_CHAN_MODE_TYPE_ = 0; +pub const _VCA_CHAN_MODE_TYPE__VCA_ATM_SURROUND: _VCA_CHAN_MODE_TYPE_ = 1; +pub const _VCA_CHAN_MODE_TYPE__VCA_ATM_FACE: _VCA_CHAN_MODE_TYPE_ = 2; +pub const _VCA_CHAN_MODE_TYPE__VCA_ATM_SAFETYCABIN: _VCA_CHAN_MODE_TYPE_ = 3; +pub type _VCA_CHAN_MODE_TYPE_ = ::std::os::raw::c_uint; +pub use self::_VCA_CHAN_MODE_TYPE_ as VCA_CHAN_MODE_TYPE; +pub const _TFS_CHAN_MODE_TYPE__TFS_CITYROAD: _TFS_CHAN_MODE_TYPE_ = 0; +pub const _TFS_CHAN_MODE_TYPE__TFS_FREEWAY: _TFS_CHAN_MODE_TYPE_ = 1; +pub type _TFS_CHAN_MODE_TYPE_ = ::std::os::raw::c_uint; +pub use self::_TFS_CHAN_MODE_TYPE_ as TFS_CHAN_MODE_TYPE; +pub const _BEHAVIOR_SCENE_MODE_TYPE__BEHAVIOR_SCENE_DEFAULT: _BEHAVIOR_SCENE_MODE_TYPE_ = 0; +pub const _BEHAVIOR_SCENE_MODE_TYPE__BEHAVIOR_SCENE_WALL: _BEHAVIOR_SCENE_MODE_TYPE_ = 1; +pub const _BEHAVIOR_SCENE_MODE_TYPE__BEHAVIOR_SCENE_INDOOR: _BEHAVIOR_SCENE_MODE_TYPE_ = 2; +pub type _BEHAVIOR_SCENE_MODE_TYPE_ = ::std::os::raw::c_uint; +pub use self::_BEHAVIOR_SCENE_MODE_TYPE_ as BEHAVIOR_SCENE_MODE_TYPE; +pub const _BEHAVIOR_PRISON_MODE_TYPE__BEHAVIOR_PRISON: _BEHAVIOR_PRISON_MODE_TYPE_ = 0; +pub const _BEHAVIOR_PRISON_MODE_TYPE__BEHAVIOR_HEARING: _BEHAVIOR_PRISON_MODE_TYPE_ = 1; +pub const _BEHAVIOR_PRISON_MODE_TYPE__BEHAVIOR_RECFIELD: _BEHAVIOR_PRISON_MODE_TYPE_ = 2; +pub type _BEHAVIOR_PRISON_MODE_TYPE_ = ::std::os::raw::c_uint; +pub use self::_BEHAVIOR_PRISON_MODE_TYPE_ as BEHAVIOR_PRISON_MODE_TYPE; +pub use self::_BEHAVIOR_PRISON_MODE_TYPE_ as LPBEHAVIOR_PRISON_MODE_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_CHAN_IN_PARAM { + pub byVCAType: BYTE, + pub byMode: BYTE, + pub byRes: [BYTE; 2usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_CHAN_IN_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(tagNET_VCA_CHAN_IN_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_VCA_CHAN_IN_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVCAType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_CHAN_IN_PARAM), + "::", + stringify!(byVCAType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_CHAN_IN_PARAM), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_CHAN_IN_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_CHAN_IN_PARAM = tagNET_VCA_CHAN_IN_PARAM; +pub type LPNET_VCA_CHAN_IN_PARAM = *mut tagNET_VCA_CHAN_IN_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_BEHAVIOR_ABILITY { + pub dwSize: DWORD, + pub dwAbilityType: DWORD, + pub byMaxRuleNum: BYTE, + pub byMaxTargetNum: BYTE, + pub bySupport: BYTE, + pub byRes: [BYTE; 5usize], + pub dwAbilityTypeEx: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_BEHAVIOR_ABILITY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_VCA_BEHAVIOR_ABILITY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_BEHAVIOR_ABILITY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BEHAVIOR_ABILITY), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbilityType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BEHAVIOR_ABILITY), + "::", + stringify!(dwAbilityType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMaxRuleNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BEHAVIOR_ABILITY), + "::", + stringify!(byMaxRuleNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMaxTargetNum) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BEHAVIOR_ABILITY), + "::", + stringify!(byMaxTargetNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupport) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BEHAVIOR_ABILITY), + "::", + stringify!(bySupport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BEHAVIOR_ABILITY), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbilityTypeEx) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BEHAVIOR_ABILITY), + "::", + stringify!(dwAbilityTypeEx) + ) + ); +} +pub type NET_VCA_BEHAVIOR_ABILITY = tagNET_VCA_BEHAVIOR_ABILITY; +pub type LPNET_VCA_BEHAVIOR_ABILITY = *mut tagNET_VCA_BEHAVIOR_ABILITY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCENE_CHANGE_UPDATE_PARAM { + pub dwSize: DWORD, + pub byIDCount: BYTE, + pub byRes1: [BYTE; 3usize], + pub byStreamID: [[BYTE; 32usize]; 30usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCENE_CHANGE_UPDATE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1224usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SCENE_CHANGE_UPDATE_PARAM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SCENE_CHANGE_UPDATE_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENE_CHANGE_UPDATE_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIDCount) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENE_CHANGE_UPDATE_PARAM), + "::", + stringify!(byIDCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENE_CHANGE_UPDATE_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENE_CHANGE_UPDATE_PARAM), + "::", + stringify!(byStreamID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 968usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENE_CHANGE_UPDATE_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCENE_CHANGE_UPDATE_PARAM = tagNET_DVR_SCENE_CHANGE_UPDATE_PARAM; +pub type LPNET_DVR_SCENE_CHANGE_UPDATE_PARAM = *mut tagNET_DVR_SCENE_CHANGE_UPDATE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ITS_ABILITY { + pub dwSize: DWORD, + pub dwAbilityType: DWORD, + pub byMaxRuleNum: BYTE, + pub byMaxTargetNum: BYTE, + pub byRes: [BYTE; 10usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ITS_ABILITY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_ITS_ABILITY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ITS_ABILITY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ITS_ABILITY), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbilityType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ITS_ABILITY), + "::", + stringify!(dwAbilityType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMaxRuleNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ITS_ABILITY), + "::", + stringify!(byMaxRuleNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMaxTargetNum) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ITS_ABILITY), + "::", + stringify!(byMaxTargetNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ITS_ABILITY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ITS_ABILITY = tagNET_DVR_ITS_ABILITY; +pub type LPNET_DVR_ITS_ABILITY = *mut tagNET_DVR_ITS_ABILITY; +pub const _VCA_EVENT_TYPE__VCA_TRAVERSE_PLANE: _VCA_EVENT_TYPE_ = 1; +pub const _VCA_EVENT_TYPE__VCA_ENTER_AREA: _VCA_EVENT_TYPE_ = 2; +pub const _VCA_EVENT_TYPE__VCA_EXIT_AREA: _VCA_EVENT_TYPE_ = 4; +pub const _VCA_EVENT_TYPE__VCA_INTRUSION: _VCA_EVENT_TYPE_ = 8; +pub const _VCA_EVENT_TYPE__VCA_LOITER: _VCA_EVENT_TYPE_ = 16; +pub const _VCA_EVENT_TYPE__VCA_LEFT_TAKE: _VCA_EVENT_TYPE_ = 32; +pub const _VCA_EVENT_TYPE__VCA_PARKING: _VCA_EVENT_TYPE_ = 64; +pub const _VCA_EVENT_TYPE__VCA_RUN: _VCA_EVENT_TYPE_ = 128; +pub const _VCA_EVENT_TYPE__VCA_HIGH_DENSITY: _VCA_EVENT_TYPE_ = 256; +pub const _VCA_EVENT_TYPE__VCA_VIOLENT_MOTION: _VCA_EVENT_TYPE_ = 512; +pub const _VCA_EVENT_TYPE__VCA_REACH_HIGHT: _VCA_EVENT_TYPE_ = 1024; +pub const _VCA_EVENT_TYPE__VCA_GET_UP: _VCA_EVENT_TYPE_ = 2048; +pub const _VCA_EVENT_TYPE__VCA_LEFT: _VCA_EVENT_TYPE_ = 4096; +pub const _VCA_EVENT_TYPE__VCA_TAKE: _VCA_EVENT_TYPE_ = 8192; +pub const _VCA_EVENT_TYPE__VCA_LEAVE_POSITION: _VCA_EVENT_TYPE_ = 16384; +pub const _VCA_EVENT_TYPE__VCA_TRAIL: _VCA_EVENT_TYPE_ = 32768; +pub const _VCA_EVENT_TYPE__VCA_KEY_PERSON_GET_UP: _VCA_EVENT_TYPE_ = 65536; +pub const _VCA_EVENT_TYPE__VCA_STANDUP: _VCA_EVENT_TYPE_ = 131072; +pub const _VCA_EVENT_TYPE__VCA_FALL_DOWN: _VCA_EVENT_TYPE_ = 524288; +pub const _VCA_EVENT_TYPE__VCA_AUDIO_ABNORMAL: _VCA_EVENT_TYPE_ = 1048576; +pub const _VCA_EVENT_TYPE__VCA_ADV_REACH_HEIGHT: _VCA_EVENT_TYPE_ = 2097152; +pub const _VCA_EVENT_TYPE__VCA_TOILET_TARRY: _VCA_EVENT_TYPE_ = 4194304; +pub const _VCA_EVENT_TYPE__VCA_YARD_TARRY: _VCA_EVENT_TYPE_ = 8388608; +pub const _VCA_EVENT_TYPE__VCA_ADV_TRAVERSE_PLANE: _VCA_EVENT_TYPE_ = 16777216; +pub const _VCA_EVENT_TYPE__VCA_LECTURE: _VCA_EVENT_TYPE_ = 33554432; +pub const _VCA_EVENT_TYPE__VCA_ANSWER: _VCA_EVENT_TYPE_ = 67108864; +pub const _VCA_EVENT_TYPE__VCA_HUMAN_ENTER: _VCA_EVENT_TYPE_ = 268435456; +pub const _VCA_EVENT_TYPE__VCA_OVER_TIME: _VCA_EVENT_TYPE_ = 536870912; +pub const _VCA_EVENT_TYPE__VCA_STICK_UP: _VCA_EVENT_TYPE_ = 1073741824; +pub const _VCA_EVENT_TYPE__VCA_INSTALL_SCANNER: _VCA_EVENT_TYPE_ = 2147483648; +#[doc = "���\u{732}����ṹ"] +pub type _VCA_EVENT_TYPE_ = ::std::os::raw::c_uint; +#[doc = "���\u{732}����ṹ"] +pub use self::_VCA_EVENT_TYPE_ as VCA_EVENT_TYPE; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_TRAVERSE_PLANE: _VCA_RULE_EVENT_TYPE_EX_ = 1; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_ENTER_AREA: _VCA_RULE_EVENT_TYPE_EX_ = 2; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_EXIT_AREA: _VCA_RULE_EVENT_TYPE_EX_ = 3; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_INTRUSION: _VCA_RULE_EVENT_TYPE_EX_ = 4; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_LOITER: _VCA_RULE_EVENT_TYPE_EX_ = 5; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_LEFT_TAKE: _VCA_RULE_EVENT_TYPE_EX_ = 6; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_PARKING: _VCA_RULE_EVENT_TYPE_EX_ = 7; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_RUN: _VCA_RULE_EVENT_TYPE_EX_ = 8; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_HIGH_DENSITY: _VCA_RULE_EVENT_TYPE_EX_ = 9; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_VIOLENT_MOTION: _VCA_RULE_EVENT_TYPE_EX_ = 10; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_REACH_HIGHT: _VCA_RULE_EVENT_TYPE_EX_ = 11; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_GET_UP: _VCA_RULE_EVENT_TYPE_EX_ = 12; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_LEFT: _VCA_RULE_EVENT_TYPE_EX_ = 13; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_TAKE: _VCA_RULE_EVENT_TYPE_EX_ = 14; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_LEAVE_POSITION: _VCA_RULE_EVENT_TYPE_EX_ = 15; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_TRAIL: _VCA_RULE_EVENT_TYPE_EX_ = 16; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_KEY_PERSON_GET_UP: _VCA_RULE_EVENT_TYPE_EX_ = 17; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_STANDUP: _VCA_RULE_EVENT_TYPE_EX_ = 18; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_FALL_DOWN: _VCA_RULE_EVENT_TYPE_EX_ = 20; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_AUDIO_ABNORMAL: _VCA_RULE_EVENT_TYPE_EX_ = 21; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_ADV_REACH_HEIGHT: _VCA_RULE_EVENT_TYPE_EX_ = 22; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_TOILET_TARRY: _VCA_RULE_EVENT_TYPE_EX_ = 23; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_YARD_TARRY: _VCA_RULE_EVENT_TYPE_EX_ = 24; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_ADV_TRAVERSE_PLANE: _VCA_RULE_EVENT_TYPE_EX_ = 25; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_LECTURE: _VCA_RULE_EVENT_TYPE_EX_ = 26; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_ANSWER: _VCA_RULE_EVENT_TYPE_EX_ = 27; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_HUMAN_ENTER: _VCA_RULE_EVENT_TYPE_EX_ = 29; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_OVER_TIME: _VCA_RULE_EVENT_TYPE_EX_ = 30; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_STICK_UP: _VCA_RULE_EVENT_TYPE_EX_ = 31; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_INSTALL_SCANNER: _VCA_RULE_EVENT_TYPE_EX_ = 32; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_PEOPLENUM_CHANGE: _VCA_RULE_EVENT_TYPE_EX_ = 35; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_SPACING_CHANGE: _VCA_RULE_EVENT_TYPE_EX_ = 36; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_COMBINED_RULE: _VCA_RULE_EVENT_TYPE_EX_ = 37; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_SIT_QUIETLY: _VCA_RULE_EVENT_TYPE_EX_ = 38; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_HIGH_DENSITY_STATUS: _VCA_RULE_EVENT_TYPE_EX_ = + 39; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_RUNNING: _VCA_RULE_EVENT_TYPE_EX_ = 40; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_RETENTION: _VCA_RULE_EVENT_TYPE_EX_ = 41; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_BLACKBOARD_WRITE: _VCA_RULE_EVENT_TYPE_EX_ = 42; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_SITUATION_ANALYSIS: _VCA_RULE_EVENT_TYPE_EX_ = 43; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_PLAY_CELLPHONE: _VCA_RULE_EVENT_TYPE_EX_ = 44; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_DURATION: _VCA_RULE_EVENT_TYPE_EX_ = 45; +pub const _VCA_RULE_EVENT_TYPE_EX__ENUM_VCA_EVENT_FAKECARD: _VCA_RULE_EVENT_TYPE_EX_ = 46; +pub type _VCA_RULE_EVENT_TYPE_EX_ = ::std::os::raw::c_uint; +pub use self::_VCA_RULE_EVENT_TYPE_EX_ as VCA_RULE_EVENT_TYPE_EX; +pub const _VCA_CROSS_DIRECTION__VCA_BOTH_DIRECTION: _VCA_CROSS_DIRECTION_ = 0; +pub const _VCA_CROSS_DIRECTION__VCA_LEFT_GO_RIGHT: _VCA_CROSS_DIRECTION_ = 1; +pub const _VCA_CROSS_DIRECTION__VCA_RIGHT_GO_LEFT: _VCA_CROSS_DIRECTION_ = 2; +pub type _VCA_CROSS_DIRECTION_ = ::std::os::raw::c_uint; +pub use self::_VCA_CROSS_DIRECTION_ as VCA_CROSS_DIRECTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_LINE { + pub struStart: NET_VCA_POINT, + pub struEnd: NET_VCA_POINT, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_LINE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_VCA_LINE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_LINE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStart) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_LINE), + "::", + stringify!(struStart) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEnd) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_LINE), + "::", + stringify!(struEnd) + ) + ); +} +pub type NET_VCA_LINE = tagNET_VCA_LINE; +pub type LPNET_VCA_LINE = *mut tagNET_VCA_LINE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_POLYGON { + pub dwPointNum: DWORD, + pub struPos: [NET_VCA_POINT; 10usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_POLYGON() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 84usize, + concat!("Size of: ", stringify!(tagNET_VCA_POLYGON)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_POLYGON)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPointNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_POLYGON), + "::", + stringify!(dwPointNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPos) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_POLYGON), + "::", + stringify!(struPos) + ) + ); +} +pub type NET_VCA_POLYGON = tagNET_VCA_POLYGON; +pub type LPNET_VCA_POLYGON = *mut tagNET_VCA_POLYGON; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_TRAVERSE_PLANE { + pub struPlaneBottom: NET_VCA_LINE, + pub dwCrossDirection: VCA_CROSS_DIRECTION, + pub bySensitivity: BYTE, + pub byPlaneHeight: BYTE, + pub byDetectionTarget: BYTE, + pub byPriority: BYTE, + pub byAlarmConfidence: BYTE, + pub byRecordConfidence: BYTE, + pub byRes2: [BYTE; 34usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_TRAVERSE_PLANE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 60usize, + concat!("Size of: ", stringify!(tagNET_VCA_TRAVERSE_PLANE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_TRAVERSE_PLANE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlaneBottom) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TRAVERSE_PLANE), + "::", + stringify!(struPlaneBottom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCrossDirection) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TRAVERSE_PLANE), + "::", + stringify!(dwCrossDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TRAVERSE_PLANE), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlaneHeight) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TRAVERSE_PLANE), + "::", + stringify!(byPlaneHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectionTarget) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TRAVERSE_PLANE), + "::", + stringify!(byDetectionTarget) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPriority) as usize - ptr as usize }, + 23usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TRAVERSE_PLANE), + "::", + stringify!(byPriority) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmConfidence) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TRAVERSE_PLANE), + "::", + stringify!(byAlarmConfidence) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordConfidence) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TRAVERSE_PLANE), + "::", + stringify!(byRecordConfidence) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TRAVERSE_PLANE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_VCA_TRAVERSE_PLANE = tagNET_VCA_TRAVERSE_PLANE; +pub type LPNET_VCA_TRAVERSE_PLANE = *mut tagNET_VCA_TRAVERSE_PLANE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_SIT_QUIETLY { + pub struRegion: NET_VCA_POLYGON, + pub dwDuration: DWORD, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_SIT_QUIETLY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_SIT_QUIETLY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_SIT_QUIETLY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SIT_QUIETLY), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDuration) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SIT_QUIETLY), + "::", + stringify!(dwDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SIT_QUIETLY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_SIT_QUIETLY = tagNET_VCA_SIT_QUIETLY; +pub type LPNET_VCA_SIT_QUIETLY = *mut tagNET_VCA_SIT_QUIETLY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_AREA { + pub struRegion: NET_VCA_POLYGON, + pub bySensitivity: BYTE, + pub byDetectionTarget: BYTE, + pub byPriority: BYTE, + pub byRes: [BYTE; 5usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_AREA() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_AREA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_AREA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_AREA), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_AREA), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectionTarget) as usize - ptr as usize }, + 85usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_AREA), + "::", + stringify!(byDetectionTarget) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPriority) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_AREA), + "::", + stringify!(byPriority) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 87usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_AREA), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_AREA = tagNET_VCA_AREA; +pub type LPNET_VCA_AREA = *mut tagNET_VCA_AREA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_INTRUSION { + pub struRegion: NET_VCA_POLYGON, + pub wDuration: WORD, + pub bySensitivity: BYTE, + pub byRate: BYTE, + pub byDetectionTarget: BYTE, + pub byPriority: BYTE, + pub byAlarmConfidence: BYTE, + pub byRecordConfidence: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_INTRUSION() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_INTRUSION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_INTRUSION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INTRUSION), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDuration) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INTRUSION), + "::", + stringify!(wDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INTRUSION), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRate) as usize - ptr as usize }, + 87usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INTRUSION), + "::", + stringify!(byRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectionTarget) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INTRUSION), + "::", + stringify!(byDetectionTarget) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPriority) as usize - ptr as usize }, + 89usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INTRUSION), + "::", + stringify!(byPriority) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmConfidence) as usize - ptr as usize }, + 90usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INTRUSION), + "::", + stringify!(byAlarmConfidence) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordConfidence) as usize - ptr as usize }, + 91usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INTRUSION), + "::", + stringify!(byRecordConfidence) + ) + ); +} +pub type NET_VCA_INTRUSION = tagNET_VCA_INTRUSION; +pub type LPNET_VCA_INTRUSION = *mut tagNET_VCA_INTRUSION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_LOITER { + pub struRegion: NET_VCA_POLYGON, + pub wDuration: WORD, + pub bySensitivity: BYTE, + pub byRes: [BYTE; 1usize], + pub dwLoiterDistance: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_LOITER() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_LOITER)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_LOITER)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_LOITER), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDuration) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_LOITER), + "::", + stringify!(wDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_LOITER), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 87usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_LOITER), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLoiterDistance) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_LOITER), + "::", + stringify!(dwLoiterDistance) + ) + ); +} +pub type NET_VCA_LOITER = tagNET_VCA_LOITER; +pub type LPNET_VCA_LOITER = *mut tagNET_VCA_LOITER; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_TAKE_LEFT { + pub struRegion: NET_VCA_POLYGON, + pub wDuration: WORD, + pub bySensitivity: BYTE, + pub byRes: [BYTE; 5usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_TAKE_LEFT() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_TAKE_LEFT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_TAKE_LEFT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TAKE_LEFT), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDuration) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TAKE_LEFT), + "::", + stringify!(wDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TAKE_LEFT), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 87usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TAKE_LEFT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_TAKE_LEFT = tagNET_VCA_TAKE_LEFT; +pub type LPNET_VCA_TAKE_LEFT = *mut tagNET_VCA_TAKE_LEFT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_PARKING { + pub struRegion: NET_VCA_POLYGON, + pub wDuration: WORD, + pub bySensitivity: BYTE, + pub byRes: [BYTE; 5usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_PARKING() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_PARKING)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_PARKING)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_PARKING), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDuration) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_PARKING), + "::", + stringify!(wDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_PARKING), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 87usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_PARKING), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_PARKING = tagNET_VCA_PARKING; +pub type LPNET_VCA_PARKING = *mut tagNET_VCA_PARKING; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_RUN { + pub struRegion: NET_VCA_POLYGON, + pub fRunDistance: f32, + pub bySensitivity: BYTE, + pub byMode: BYTE, + pub byDetectionTarget: BYTE, + pub byRes: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_RUN() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_RUN)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_RUN)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RUN), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fRunDistance) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RUN), + "::", + stringify!(fRunDistance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RUN), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 89usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RUN), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectionTarget) as usize - ptr as usize }, + 90usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RUN), + "::", + stringify!(byDetectionTarget) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 91usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RUN), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_RUN = tagNET_VCA_RUN; +pub type LPNET_VCA_RUN = *mut tagNET_VCA_RUN; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_HIGH_DENSITY { + pub struRegion: NET_VCA_POLYGON, + pub fDensity: f32, + pub bySensitivity: BYTE, + pub byRes: BYTE, + pub wDuration: WORD, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_HIGH_DENSITY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_HIGH_DENSITY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_HIGH_DENSITY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HIGH_DENSITY), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fDensity) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HIGH_DENSITY), + "::", + stringify!(fDensity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HIGH_DENSITY), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 89usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HIGH_DENSITY), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDuration) as usize - ptr as usize }, + 90usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HIGH_DENSITY), + "::", + stringify!(wDuration) + ) + ); +} +pub type NET_VCA_HIGH_DENSITY = tagNET_VCA_HIGH_DENSITY; +pub type LPNET_VCA_HIGH_DENSITY = *mut tagNET_VCA_HIGH_DENSITY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_VIOLENT_MOTION { + pub struRegion: NET_VCA_POLYGON, + pub wDuration: WORD, + pub bySensitivity: BYTE, + pub byMode: BYTE, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_VIOLENT_MOTION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_VIOLENT_MOTION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_VIOLENT_MOTION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_VIOLENT_MOTION), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDuration) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_VIOLENT_MOTION), + "::", + stringify!(wDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_VIOLENT_MOTION), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 87usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_VIOLENT_MOTION), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_VIOLENT_MOTION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_VIOLENT_MOTION = tagNET_VCA_VIOLENT_MOTION; +pub type LPNET_VCA_VIOLENT_MOTION = *mut tagNET_VCA_VIOLENT_MOTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_REACH_HIGHT { + pub struVcaLine: NET_VCA_LINE, + pub wDuration: WORD, + pub byRes: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_REACH_HIGHT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_VCA_REACH_HIGHT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_REACH_HIGHT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaLine) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_REACH_HIGHT), + "::", + stringify!(struVcaLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDuration) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_REACH_HIGHT), + "::", + stringify!(wDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_REACH_HIGHT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_REACH_HIGHT = tagNET_VCA_REACH_HIGHT; +pub type LPNET_VCA_REACH_HIGHT = *mut tagNET_VCA_REACH_HIGHT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_GET_UP { + pub struRegion: NET_VCA_POLYGON, + pub wDuration: WORD, + pub byMode: BYTE, + pub bySensitivity: BYTE, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_GET_UP() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_GET_UP)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_GET_UP)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_GET_UP), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDuration) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_GET_UP), + "::", + stringify!(wDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_GET_UP), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 87usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_GET_UP), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_GET_UP), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_GET_UP = tagNET_VCA_GET_UP; +pub type LPNET_VCA_GET_UP = *mut tagNET_VCA_GET_UP; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_LEFT { + pub struRegion: NET_VCA_POLYGON, + pub wDuration: WORD, + pub bySensitivity: BYTE, + pub byRes: [BYTE; 5usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_LEFT() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_LEFT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_LEFT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_LEFT), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDuration) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_LEFT), + "::", + stringify!(wDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_LEFT), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 87usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_LEFT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_LEFT = tagNET_VCA_LEFT; +pub type LPNET_VCA_LEFT = *mut tagNET_VCA_LEFT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_TAKE { + pub struRegion: NET_VCA_POLYGON, + pub wDuration: WORD, + pub bySensitivity: BYTE, + pub byRes: [BYTE; 5usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_TAKE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_TAKE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_TAKE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TAKE), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDuration) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TAKE), + "::", + stringify!(wDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TAKE), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 87usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TAKE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_TAKE = tagNET_VCA_TAKE; +pub type LPNET_VCA_TAKE = *mut tagNET_VCA_TAKE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_OVER_TIME { + pub struRegion: NET_VCA_POLYGON, + pub wDuration: WORD, + pub byRes: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_OVER_TIME() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_OVER_TIME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_OVER_TIME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_OVER_TIME), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDuration) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_OVER_TIME), + "::", + stringify!(wDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_OVER_TIME), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_OVER_TIME = tagNET_VCA_OVER_TIME; +pub type LPNET_VCA_OVER_TIME = *mut tagNET_VCA_OVER_TIME; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_HUMAN_ENTER { + pub dwRes: [DWORD; 23usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_HUMAN_ENTER() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_HUMAN_ENTER)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_HUMAN_ENTER)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMAN_ENTER), + "::", + stringify!(dwRes) + ) + ); +} +pub type NET_VCA_HUMAN_ENTER = tagNET_VCA_HUMAN_ENTER; +pub type LPNET_VCA_HUMAN_ENTER = *mut tagNET_VCA_HUMAN_ENTER; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_STICK_UP { + pub struRegion: NET_VCA_POLYGON, + pub wDuration: WORD, + pub bySensitivity: BYTE, + pub byRes: [BYTE; 5usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_STICK_UP() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_STICK_UP)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_STICK_UP)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_STICK_UP), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDuration) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_STICK_UP), + "::", + stringify!(wDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_STICK_UP), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 87usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_STICK_UP), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_STICK_UP = tagNET_VCA_STICK_UP; +pub type LPNET_VCA_STICK_UP = *mut tagNET_VCA_STICK_UP; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_SCANNER { + pub struRegion: NET_VCA_POLYGON, + pub wDuration: WORD, + pub bySensitivity: BYTE, + pub byRes: [BYTE; 5usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_SCANNER() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_SCANNER)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_SCANNER)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SCANNER), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDuration) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SCANNER), + "::", + stringify!(wDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SCANNER), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 87usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SCANNER), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_SCANNER = tagNET_VCA_SCANNER; +pub type LPNET_VCA_SCANNER = *mut tagNET_VCA_SCANNER; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_LEAVE_POSITION { + pub struRegion: NET_VCA_POLYGON, + pub wLeaveDelay: WORD, + pub wStaticDelay: WORD, + pub byMode: BYTE, + pub byPersonType: BYTE, + pub byOnPosition: BYTE, + pub bySensitivity: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_LEAVE_POSITION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_LEAVE_POSITION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_LEAVE_POSITION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_LEAVE_POSITION), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLeaveDelay) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_LEAVE_POSITION), + "::", + stringify!(wLeaveDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStaticDelay) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_LEAVE_POSITION), + "::", + stringify!(wStaticDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_LEAVE_POSITION), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPersonType) as usize - ptr as usize }, + 89usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_LEAVE_POSITION), + "::", + stringify!(byPersonType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOnPosition) as usize - ptr as usize }, + 90usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_LEAVE_POSITION), + "::", + stringify!(byOnPosition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 91usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_LEAVE_POSITION), + "::", + stringify!(bySensitivity) + ) + ); +} +pub type NET_VCA_LEAVE_POSITION = tagNET_VCA_LEAVE_POSITION; +pub type LPNET_VCA_LEAVE_POSITION = *mut tagNET_VCA_LEAVE_POSITION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_TRAIL { + pub struRegion: NET_VCA_POLYGON, + pub wRes: WORD, + pub bySensitivity: BYTE, + pub byRes: [BYTE; 5usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_TRAIL() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_TRAIL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_TRAIL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TRAIL), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRes) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TRAIL), + "::", + stringify!(wRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TRAIL), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 87usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TRAIL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_TRAIL = tagNET_VCA_TRAIL; +pub type LPNET_VCA_TRAIL = *mut tagNET_VCA_TRAIL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_FALL_DOWN { + pub struRegion: NET_VCA_POLYGON, + pub wDuration: WORD, + pub bySensitivity: BYTE, + pub byHeightThreshold: BYTE, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_FALL_DOWN() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_FALL_DOWN)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_FALL_DOWN)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FALL_DOWN), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDuration) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FALL_DOWN), + "::", + stringify!(wDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FALL_DOWN), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHeightThreshold) as usize - ptr as usize }, + 87usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FALL_DOWN), + "::", + stringify!(byHeightThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FALL_DOWN), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_FALL_DOWN = tagNET_VCA_FALL_DOWN; +pub type LPNET_VCA_FALL_DOWN = *mut tagNET_VCA_FALL_DOWN; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_STANDUP { + pub struRegion: NET_VCA_POLYGON, + pub bySensitivity: BYTE, + pub byHeightThreshold: BYTE, + pub wDuration: WORD, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_STANDUP() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_STANDUP)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_STANDUP)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_STANDUP), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_STANDUP), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHeightThreshold) as usize - ptr as usize }, + 85usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_STANDUP), + "::", + stringify!(byHeightThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDuration) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_STANDUP), + "::", + stringify!(wDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_STANDUP), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_STANDUP = tagNET_VCA_STANDUP; +pub type LPNET_VCA_STANDUP = *mut tagNET_VCA_STANDUP; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_PEOPLENUM_CHANGE { + pub struRegion: NET_VCA_POLYGON, + pub bySensitivity: BYTE, + pub byPeopleNumThreshold: BYTE, + pub byDetectMode: BYTE, + pub byNoneStateEffective: BYTE, + pub wDuration: WORD, + pub byPeopleNum: BYTE, + pub byRes: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_PEOPLENUM_CHANGE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_PEOPLENUM_CHANGE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_PEOPLENUM_CHANGE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_PEOPLENUM_CHANGE), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_PEOPLENUM_CHANGE), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPeopleNumThreshold) as usize - ptr as usize }, + 85usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_PEOPLENUM_CHANGE), + "::", + stringify!(byPeopleNumThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectMode) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_PEOPLENUM_CHANGE), + "::", + stringify!(byDetectMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNoneStateEffective) as usize - ptr as usize }, + 87usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_PEOPLENUM_CHANGE), + "::", + stringify!(byNoneStateEffective) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDuration) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_PEOPLENUM_CHANGE), + "::", + stringify!(wDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPeopleNum) as usize - ptr as usize }, + 90usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_PEOPLENUM_CHANGE), + "::", + stringify!(byPeopleNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 91usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_PEOPLENUM_CHANGE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_PEOPLENUM_CHANGE = tagNET_VCA_PEOPLENUM_CHANGE; +pub type LPNET_VCA_PEOPLENUM_CHANGE = *mut tagNET_VCA_PEOPLENUM_CHANGE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_SPACING_CHANGE { + pub struRegion: NET_VCA_POLYGON, + pub fSpacingThreshold: f32, + pub bySensitivity: BYTE, + pub byDetectMode: BYTE, + pub wDuration: WORD, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_SPACING_CHANGE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_SPACING_CHANGE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_SPACING_CHANGE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SPACING_CHANGE), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fSpacingThreshold) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SPACING_CHANGE), + "::", + stringify!(fSpacingThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SPACING_CHANGE), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectMode) as usize - ptr as usize }, + 89usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SPACING_CHANGE), + "::", + stringify!(byDetectMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDuration) as usize - ptr as usize }, + 90usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SPACING_CHANGE), + "::", + stringify!(wDuration) + ) + ); +} +pub type NET_VCA_SPACING_CHANGE = tagNET_VCA_SPACING_CHANGE; +pub type LPNET_VCA_SPACING_CHANGE = *mut tagNET_VCA_SPACING_CHANGE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_AUDIO_ABNORMAL { + pub wDecibel: WORD, + pub bySensitivity: BYTE, + pub byAudioMode: BYTE, + pub byEnable: BYTE, + pub byThreshold: BYTE, + pub byRes: [BYTE; 54usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_AUDIO_ABNORMAL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 60usize, + concat!("Size of: ", stringify!(tagNET_VCA_AUDIO_ABNORMAL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_VCA_AUDIO_ABNORMAL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDecibel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_AUDIO_ABNORMAL), + "::", + stringify!(wDecibel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_AUDIO_ABNORMAL), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioMode) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_AUDIO_ABNORMAL), + "::", + stringify!(byAudioMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_AUDIO_ABNORMAL), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byThreshold) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_AUDIO_ABNORMAL), + "::", + stringify!(byThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_AUDIO_ABNORMAL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_AUDIO_ABNORMAL = tagNET_VCA_AUDIO_ABNORMAL; +pub type LPNET_VCA_AUDIO_ABNORMAL = *mut tagNET_VCA_AUDIO_ABNORMAL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUDIO_STEEP_DROP { + pub bySensitivity: BYTE, + pub byEnable: BYTE, + pub byRes: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUDIO_STEEP_DROP() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUDIO_STEEP_DROP)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AUDIO_STEEP_DROP)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_STEEP_DROP), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_STEEP_DROP), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_STEEP_DROP), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AUDIO_STEEP_DROP = tagNET_DVR_AUDIO_STEEP_DROP; +pub type LPNET_DVR_AUDIO_STEEP_DROP = *mut tagNET_DVR_AUDIO_STEEP_DROP; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUDIO_EXCEPTION { + pub dwSize: DWORD, + pub byEnableAudioInException: BYTE, + pub byRes1: [BYTE; 3usize], + pub struAudioAbnormal: NET_VCA_AUDIO_ABNORMAL, + pub struAlarmSched: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub struHandleException: NET_DVR_HANDLEEXCEPTION_V40, + pub dwMaxRelRecordChanNum: DWORD, + pub dwRelRecordChanNum: DWORD, + pub byRelRecordChan: [DWORD; 64usize], + pub struAudioSteepDrop: NET_DVR_AUDIO_STEEP_DROP, + pub byRes2: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUDIO_EXCEPTION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 920usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUDIO_EXCEPTION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AUDIO_EXCEPTION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_EXCEPTION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableAudioInException) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_EXCEPTION), + "::", + stringify!(byEnableAudioInException) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_EXCEPTION), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAudioAbnormal) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_EXCEPTION), + "::", + stringify!(struAudioAbnormal) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmSched) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_EXCEPTION), + "::", + stringify!(struAlarmSched) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHandleException) as usize - ptr as usize }, + 292usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_EXCEPTION), + "::", + stringify!(struHandleException) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxRelRecordChanNum) as usize - ptr as usize }, + 624usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_EXCEPTION), + "::", + stringify!(dwMaxRelRecordChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelRecordChanNum) as usize - ptr as usize }, + 628usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_EXCEPTION), + "::", + stringify!(dwRelRecordChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelRecordChan) as usize - ptr as usize }, + 632usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_EXCEPTION), + "::", + stringify!(byRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAudioSteepDrop) as usize - ptr as usize }, + 888usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_EXCEPTION), + "::", + stringify!(struAudioSteepDrop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 896usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_EXCEPTION), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_AUDIO_EXCEPTION = tagNET_DVR_AUDIO_EXCEPTION; +pub type LPNET_DVR_AUDIO_EXCEPTION = *mut tagNET_DVR_AUDIO_EXCEPTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_TOILET_TARRY { + pub struRegion: NET_VCA_POLYGON, + pub wDelay: WORD, + pub byRes: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_TOILET_TARRY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_TOILET_TARRY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_TOILET_TARRY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TOILET_TARRY), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDelay) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TOILET_TARRY), + "::", + stringify!(wDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TOILET_TARRY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_TOILET_TARRY = tagNET_VCA_TOILET_TARRY; +pub type LPNET_VCA_TOILET_TARRY = *mut tagNET_VCA_TOILET_TARRY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_YARD_TARRY { + pub struRegion: NET_VCA_POLYGON, + pub wDelay: WORD, + pub byRes: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_YARD_TARRY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_YARD_TARRY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_YARD_TARRY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_YARD_TARRY), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDelay) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_YARD_TARRY), + "::", + stringify!(wDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_YARD_TARRY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_YARD_TARRY = tagNET_VCA_YARD_TARRY; +pub type LPNET_VCA_YARD_TARRY = *mut tagNET_VCA_YARD_TARRY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_ADV_REACH_HEIGHT { + pub struRegion: NET_VCA_POLYGON, + pub dwCrossDirection: DWORD, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_ADV_REACH_HEIGHT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_ADV_REACH_HEIGHT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_ADV_REACH_HEIGHT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ADV_REACH_HEIGHT), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCrossDirection) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ADV_REACH_HEIGHT), + "::", + stringify!(dwCrossDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ADV_REACH_HEIGHT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_ADV_REACH_HEIGHT = tagNET_VCA_ADV_REACH_HEIGHT; +pub type LPNET_VCA_ADV_REACH_HEIGHT = *mut tagNET_VCA_ADV_REACH_HEIGHT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_ADV_TRAVERSE_PLANE { + pub struRegion: NET_VCA_POLYGON, + pub dwCrossDirection: DWORD, + pub bySensitivity: BYTE, + pub byRes: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_ADV_TRAVERSE_PLANE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_ADV_TRAVERSE_PLANE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_ADV_TRAVERSE_PLANE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ADV_TRAVERSE_PLANE), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCrossDirection) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ADV_TRAVERSE_PLANE), + "::", + stringify!(dwCrossDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ADV_TRAVERSE_PLANE), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 89usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ADV_TRAVERSE_PLANE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_ADV_TRAVERSE_PLANE = tagNET_VCA_ADV_TRAVERSE_PLANE; +pub type LPNET_VCA_ADV_TRAVERSE_PLANE = *mut tagNET_VCA_ADV_TRAVERSE_PLANE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_PLAY_CELLPHONE { + pub struRegion: NET_VCA_POLYGON, + pub wDuration: WORD, + pub byRes: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_PLAY_CELLPHONE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_PLAY_CELLPHONE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_PLAY_CELLPHONE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_PLAY_CELLPHONE), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDuration) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_PLAY_CELLPHONE), + "::", + stringify!(wDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_PLAY_CELLPHONE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_PLAY_CELLPHONE = tagNET_VCA_PLAY_CELLPHONE; +pub type LPNET_VCA_PLAY_CELLPHONE = *mut tagNET_VCA_PLAY_CELLPHONE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_LECTURE { + pub struRegion: NET_VCA_POLYGON, + pub wDuration: WORD, + pub bySensitivity: BYTE, + pub byAlarmState: BYTE, + pub byTrackingMode: BYTE, + pub byZoomMode: BYTE, + pub byZoomOver: BYTE, + pub byTrackStatus: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_LECTURE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_LECTURE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_LECTURE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_LECTURE), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDuration) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_LECTURE), + "::", + stringify!(wDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_LECTURE), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmState) as usize - ptr as usize }, + 87usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_LECTURE), + "::", + stringify!(byAlarmState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrackingMode) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_LECTURE), + "::", + stringify!(byTrackingMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZoomMode) as usize - ptr as usize }, + 89usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_LECTURE), + "::", + stringify!(byZoomMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZoomOver) as usize - ptr as usize }, + 90usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_LECTURE), + "::", + stringify!(byZoomOver) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrackStatus) as usize - ptr as usize }, + 91usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_LECTURE), + "::", + stringify!(byTrackStatus) + ) + ); +} +pub type NET_VCA_LECTURE = tagNET_VCA_LECTURE; +pub type LPNET_VCA_LECTURE = *mut tagNET_VCA_LECTURE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_ANSWER { + pub struRegion: NET_VCA_POLYGON, + pub bySensitivity: BYTE, + pub byAlarmState: BYTE, + pub byZoomOver: BYTE, + pub byAnswerStudent: BYTE, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_ANSWER() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_ANSWER)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_ANSWER)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ANSWER), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ANSWER), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmState) as usize - ptr as usize }, + 85usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ANSWER), + "::", + stringify!(byAlarmState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZoomOver) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ANSWER), + "::", + stringify!(byZoomOver) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAnswerStudent) as usize - ptr as usize }, + 87usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ANSWER), + "::", + stringify!(byAnswerStudent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ANSWER), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_ANSWER = tagNET_VCA_ANSWER; +pub type LPNET_VCA_ANSWER = *mut tagNET_VCA_ANSWER; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_RELATE_RULE_PARAM { + pub byRuleID: BYTE, + pub byRes: BYTE, + pub wEventType: WORD, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_RELATE_RULE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(tagNET_VCA_RELATE_RULE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_VCA_RELATE_RULE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RELATE_RULE_PARAM), + "::", + stringify!(byRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RELATE_RULE_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wEventType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RELATE_RULE_PARAM), + "::", + stringify!(wEventType) + ) + ); +} +pub type NET_VCA_RELATE_RULE_PARAM = tagNET_VCA_RELATE_RULE_PARAM; +pub type LPNET_VCA_RELATE_RULE_PARAM = *mut tagNET_VCA_RELATE_RULE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_COMBINED_RULE_ { + pub byRuleSequence: BYTE, + pub byRes: [BYTE; 7usize], + pub dwMinInterval: DWORD, + pub dwMaxInterval: DWORD, + pub struRule1Raram: NET_VCA_RELATE_RULE_PARAM, + pub struRule2Raram: NET_VCA_RELATE_RULE_PARAM, + pub byRes1: [BYTE; 36usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_COMBINED_RULE_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 60usize, + concat!("Size of: ", stringify!(tagNET_VCA_COMBINED_RULE_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_COMBINED_RULE_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleSequence) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_COMBINED_RULE_), + "::", + stringify!(byRuleSequence) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_COMBINED_RULE_), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMinInterval) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_COMBINED_RULE_), + "::", + stringify!(dwMinInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxInterval) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_COMBINED_RULE_), + "::", + stringify!(dwMaxInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRule1Raram) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_COMBINED_RULE_), + "::", + stringify!(struRule1Raram) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRule2Raram) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_COMBINED_RULE_), + "::", + stringify!(struRule2Raram) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_COMBINED_RULE_), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_VCA_COMBINED_RULE = tagNET_VCA_COMBINED_RULE_; +pub type LPNET_VCA_COMBINED_RULE = *mut tagNET_VCA_COMBINED_RULE_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_BLACKBOARD_WRITE { + pub struRegion: NET_VCA_POLYGON, + pub byTeacherState: BYTE, + pub byWritingState: BYTE, + pub byWritingArea: BYTE, + pub byRes: [BYTE; 5usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_BLACKBOARD_WRITE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_BLACKBOARD_WRITE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_BLACKBOARD_WRITE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLACKBOARD_WRITE), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTeacherState) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLACKBOARD_WRITE), + "::", + stringify!(byTeacherState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWritingState) as usize - ptr as usize }, + 85usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLACKBOARD_WRITE), + "::", + stringify!(byWritingState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWritingArea) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLACKBOARD_WRITE), + "::", + stringify!(byWritingArea) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 87usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLACKBOARD_WRITE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_BLACKBOARD_WRITE = tagNET_VCA_BLACKBOARD_WRITE; +pub type LPNET_VCA_BLACKBOARD_WRITE = *mut tagNET_VCA_BLACKBOARD_WRITE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_HIGH_DENSITY_STATUS { + pub struRegion: NET_VCA_POLYGON, + pub fDensity: f32, + pub bySensitivity: BYTE, + pub byRes: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_HIGH_DENSITY_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_HIGH_DENSITY_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_HIGH_DENSITY_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HIGH_DENSITY_STATUS), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fDensity) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HIGH_DENSITY_STATUS), + "::", + stringify!(fDensity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HIGH_DENSITY_STATUS), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 89usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HIGH_DENSITY_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_HIGH_DENSITY_STATUS = tagNET_VCA_HIGH_DENSITY_STATUS; +pub type LPNET_VCA_HIGH_DENSITY_STATUS = *mut tagNET_VCA_HIGH_DENSITY_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_VCA_RUNNING_ { + pub struRegion: NET_VCA_POLYGON, + pub dwSpeed: DWORD, + pub wDuration: WORD, + pub byRunMode: BYTE, + pub byRes: BYTE, +} +#[test] +fn bindgen_test_layout__NET_VCA_RUNNING_() { + const UNINIT: ::std::mem::MaybeUninit<_NET_VCA_RUNNING_> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_VCA_RUNNING_>(), + 92usize, + concat!("Size of: ", stringify!(_NET_VCA_RUNNING_)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_VCA_RUNNING_>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_VCA_RUNNING_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_VCA_RUNNING_), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSpeed) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(_NET_VCA_RUNNING_), + "::", + stringify!(dwSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDuration) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(_NET_VCA_RUNNING_), + "::", + stringify!(wDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRunMode) as usize - ptr as usize }, + 90usize, + concat!( + "Offset of field: ", + stringify!(_NET_VCA_RUNNING_), + "::", + stringify!(byRunMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 91usize, + concat!( + "Offset of field: ", + stringify!(_NET_VCA_RUNNING_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_RUNNING = _NET_VCA_RUNNING_; +pub type LPNET_VCA_RUNNING = *mut _NET_VCA_RUNNING_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_RETENTION { + pub struRegion: NET_VCA_POLYGON, + pub wDuration: WORD, + pub byRes: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_RETENTION() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_RETENTION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_RETENTION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RETENTION), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDuration) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RETENTION), + "::", + stringify!(wDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RETENTION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_RETENTION = tagNET_VCA_RETENTION; +pub type LPNET_VCA_RETENTION = *mut tagNET_VCA_RETENTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_SITUATION_ANALYSIS { + pub struRegion: NET_VCA_POLYGON, + pub wPeopleNum: WORD, + pub byRes: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_SITUATION_ANALYSIS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_SITUATION_ANALYSIS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_SITUATION_ANALYSIS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SITUATION_ANALYSIS), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPeopleNum) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SITUATION_ANALYSIS), + "::", + stringify!(wPeopleNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SITUATION_ANALYSIS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_SITUATION_ANALYSIS = tagNET_VCA_SITUATION_ANALYSIS; +pub type LPNET_VCA_SITUATION_ANALYSIS = *mut tagNET_VCA_SITUATION_ANALYSIS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_VCA_DURATION_ { + pub wRelationEventType: WORD, + pub byRes: [BYTE; 90usize], +} +#[test] +fn bindgen_test_layout__NET_VCA_DURATION_() { + const UNINIT: ::std::mem::MaybeUninit<_NET_VCA_DURATION_> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_VCA_DURATION_>(), + 92usize, + concat!("Size of: ", stringify!(_NET_VCA_DURATION_)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_VCA_DURATION_>(), + 2usize, + concat!("Alignment of ", stringify!(_NET_VCA_DURATION_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRelationEventType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_VCA_DURATION_), + "::", + stringify!(wRelationEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(_NET_VCA_DURATION_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_DURATION = _NET_VCA_DURATION_; +pub type LPNET_VCA_DURATION = *mut _NET_VCA_DURATION_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_FAKECARD { + pub struRegion: NET_VCA_POLYGON, + pub bySensitivity: BYTE, + pub byRes: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_FAKECARD() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_FAKECARD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_FAKECARD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FAKECARD), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FAKECARD), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 85usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FAKECARD), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_FAKECARD = tagNET_VCA_FAKECARD; +pub type LPNET_VCA_FAKECARD = *mut tagNET_VCA_FAKECARD; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_VCA_EVENT_UNION { + pub uLen: [DWORD; 23usize], + pub struTraversePlane: NET_VCA_TRAVERSE_PLANE, + pub struArea: NET_VCA_AREA, + pub struIntrusion: NET_VCA_INTRUSION, + pub struLoiter: NET_VCA_LOITER, + pub struTakeTeft: NET_VCA_TAKE_LEFT, + pub struParking: NET_VCA_PARKING, + pub struRun: NET_VCA_RUN, + pub struHighDensity: NET_VCA_HIGH_DENSITY, + pub struViolentMotion: NET_VCA_VIOLENT_MOTION, + pub struReachHight: NET_VCA_REACH_HIGHT, + pub struGetUp: NET_VCA_GET_UP, + pub struLeft: NET_VCA_LEFT, + pub struTake: NET_VCA_TAKE, + pub struHumanEnter: NET_VCA_HUMAN_ENTER, + pub struOvertime: NET_VCA_OVER_TIME, + pub struStickUp: NET_VCA_STICK_UP, + pub struScanner: NET_VCA_SCANNER, + pub struLeavePos: NET_VCA_LEAVE_POSITION, + pub struTrail: NET_VCA_TRAIL, + pub struFallDown: NET_VCA_FALL_DOWN, + pub struAudioAbnormal: NET_VCA_AUDIO_ABNORMAL, + pub struReachHeight: NET_VCA_ADV_REACH_HEIGHT, + pub struToiletTarry: NET_VCA_TOILET_TARRY, + pub struYardTarry: NET_VCA_YARD_TARRY, + pub struAdvTraversePlane: NET_VCA_ADV_TRAVERSE_PLANE, + pub struLecture: NET_VCA_LECTURE, + pub struAnswer: NET_VCA_ANSWER, + pub struStandUp: NET_VCA_STANDUP, + pub struPeopleNumChange: NET_VCA_PEOPLENUM_CHANGE, + pub struSpacingChange: NET_VCA_SPACING_CHANGE, + pub struCombinedRule: NET_VCA_COMBINED_RULE, + pub struSitQuietly: NET_VCA_SIT_QUIETLY, + pub struHighDensityStatus: NET_VCA_HIGH_DENSITY_STATUS, + pub struRunning: NET_VCA_RUNNING, + pub struRetention: NET_VCA_RETENTION, + pub struBlackboardWrite: NET_VCA_BLACKBOARD_WRITE, + pub struSituationAnalysis: NET_VCA_SITUATION_ANALYSIS, + pub struPlayCellphone: NET_VCA_PLAY_CELLPHONE, + pub struDruation: NET_VCA_DURATION, + pub struFakeCard: NET_VCA_FAKECARD, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_EVENT_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_VCA_EVENT_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_EVENT_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(uLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTraversePlane) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struTraversePlane) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struArea) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struArea) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIntrusion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struIntrusion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLoiter) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struLoiter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTakeTeft) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struTakeTeft) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struParking) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struParking) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRun) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struRun) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHighDensity) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struHighDensity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struViolentMotion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struViolentMotion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struReachHight) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struReachHight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGetUp) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struGetUp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLeft) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struLeft) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTake) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struTake) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHumanEnter) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struHumanEnter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOvertime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struOvertime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStickUp) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struStickUp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struScanner) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struScanner) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLeavePos) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struLeavePos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTrail) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struTrail) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFallDown) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struFallDown) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAudioAbnormal) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struAudioAbnormal) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struReachHeight) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struReachHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struToiletTarry) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struToiletTarry) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struYardTarry) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struYardTarry) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAdvTraversePlane) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struAdvTraversePlane) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLecture) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struLecture) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAnswer) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struAnswer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStandUp) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struStandUp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPeopleNumChange) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struPeopleNumChange) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSpacingChange) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struSpacingChange) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCombinedRule) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struCombinedRule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSitQuietly) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struSitQuietly) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHighDensityStatus) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struHighDensityStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRunning) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struRunning) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRetention) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struRetention) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBlackboardWrite) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struBlackboardWrite) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSituationAnalysis) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struSituationAnalysis) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlayCellphone) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struPlayCellphone) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDruation) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struDruation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFakeCard) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_EVENT_UNION), + "::", + stringify!(struFakeCard) + ) + ); +} +pub type NET_VCA_EVENT_UNION = tagNET_VCA_EVENT_UNION; +pub type LPNET_VCA_EVENT_UNION = *mut tagNET_VCA_EVENT_UNION; +pub const _VCA_SIZE_FILTER_MODE__IMAGE_PIX_MODE: _VCA_SIZE_FILTER_MODE_ = 0; +pub const _VCA_SIZE_FILTER_MODE__REAL_WORLD_MODE: _VCA_SIZE_FILTER_MODE_ = 1; +pub const _VCA_SIZE_FILTER_MODE__DEFAULT_MODE: _VCA_SIZE_FILTER_MODE_ = 2; +pub type _VCA_SIZE_FILTER_MODE_ = ::std::os::raw::c_uint; +pub use self::_VCA_SIZE_FILTER_MODE_ as SIZE_FILTER_MODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_SIZE_FILTER { + pub byActive: BYTE, + pub byMode: BYTE, + pub byRes: [BYTE; 2usize], + pub struMiniRect: NET_VCA_RECT, + pub struMaxRect: NET_VCA_RECT, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_SIZE_FILTER() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_VCA_SIZE_FILTER)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_SIZE_FILTER)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byActive) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SIZE_FILTER), + "::", + stringify!(byActive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SIZE_FILTER), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SIZE_FILTER), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMiniRect) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SIZE_FILTER), + "::", + stringify!(struMiniRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMaxRect) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SIZE_FILTER), + "::", + stringify!(struMaxRect) + ) + ); +} +pub type NET_VCA_SIZE_FILTER = tagNET_VCA_SIZE_FILTER; +pub type LPNET_VCA_SIZE_FILTER = *mut tagNET_VCA_SIZE_FILTER; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_VCA_ONE_RULE { + pub byActive: BYTE, + pub byRes: [BYTE; 7usize], + pub byRuleName: [BYTE; 32usize], + pub dwEventType: VCA_EVENT_TYPE, + pub uEventParam: NET_VCA_EVENT_UNION, + pub struSizeFilter: NET_VCA_SIZE_FILTER, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 2usize]; 7usize], + pub struHandleType: NET_DVR_HANDLEEXCEPTION_V30, + pub byRelRecordChan: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_ONE_RULE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 392usize, + concat!("Size of: ", stringify!(tagNET_VCA_ONE_RULE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_ONE_RULE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byActive) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ONE_RULE), + "::", + stringify!(byActive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ONE_RULE), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ONE_RULE), + "::", + stringify!(byRuleName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEventType) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ONE_RULE), + "::", + stringify!(dwEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uEventParam) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ONE_RULE), + "::", + stringify!(uEventParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSizeFilter) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ONE_RULE), + "::", + stringify!(struSizeFilter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ONE_RULE), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHandleType) as usize - ptr as usize }, + 228usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ONE_RULE), + "::", + stringify!(struHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelRecordChan) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ONE_RULE), + "::", + stringify!(byRelRecordChan) + ) + ); +} +pub type NET_VCA_ONE_RULE = tagNET_VCA_ONE_RULE; +pub type LPNET_VCA_ONE_RULE = *mut tagNET_VCA_ONE_RULE; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_VCA_RULECFG { + pub dwSize: DWORD, + pub byPicProType: BYTE, + pub byUpLastAlarm: BYTE, + pub byPicRecordEnable: BYTE, + pub byRes: BYTE, + pub struPictureParam: NET_DVR_JPEGPARA, + pub struRule: [NET_VCA_ONE_RULE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_RULECFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 3148usize, + concat!("Size of: ", stringify!(tagNET_VCA_RULECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_RULECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicProType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG), + "::", + stringify!(byPicProType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUpLastAlarm) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG), + "::", + stringify!(byUpLastAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicRecordEnable) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG), + "::", + stringify!(byPicRecordEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPictureParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG), + "::", + stringify!(struPictureParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRule) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG), + "::", + stringify!(struRule) + ) + ); +} +pub type NET_VCA_RULECFG = tagNET_VCA_RULECFG; +pub type LPNET_VCA_RULECFG = *mut tagNET_VCA_RULECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_DEV_INFO { + pub struDevIP: NET_DVR_IPADDR, + pub wPort: WORD, + pub byChannel: BYTE, + pub byIvmsChannel: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_DEV_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!("Size of: ", stringify!(tagNET_VCA_DEV_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_VCA_DEV_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_INFO), + "::", + stringify!(struDevIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_INFO), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 146usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_INFO), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIvmsChannel) as usize - ptr as usize }, + 147usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEV_INFO), + "::", + stringify!(byIvmsChannel) + ) + ); +} +pub type NET_VCA_DEV_INFO = tagNET_VCA_DEV_INFO; +pub type LPNET_VCA_DEV_INFO = *mut tagNET_VCA_DEV_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TARGET_LEFT_REGION_ALARM { + pub dwSize: DWORD, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub byTargetType: BYTE, + pub byLeftDirection: BYTE, + pub byTargetStatus: BYTE, + pub byRes: [BYTE; 125usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TARGET_LEFT_REGION_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 288usize, + concat!("Size of: ", stringify!(tagNET_DVR_TARGET_LEFT_REGION_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_TARGET_LEFT_REGION_ALARM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TARGET_LEFT_REGION_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TARGET_LEFT_REGION_ALARM), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TARGET_LEFT_REGION_ALARM), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TARGET_LEFT_REGION_ALARM), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTargetType) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TARGET_LEFT_REGION_ALARM), + "::", + stringify!(byTargetType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLeftDirection) as usize - ptr as usize }, + 161usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TARGET_LEFT_REGION_ALARM), + "::", + stringify!(byLeftDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTargetStatus) as usize - ptr as usize }, + 162usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TARGET_LEFT_REGION_ALARM), + "::", + stringify!(byTargetStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 163usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TARGET_LEFT_REGION_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TARGET_LEFT_REGION_ALARM = tagNET_DVR_TARGET_LEFT_REGION_ALARM; +pub type LPNET_DVR_TARGET_LEFT_REGION_ALARM = *mut tagNET_DVR_TARGET_LEFT_REGION_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DBD_PICTURE_INFO { + pub dwPicType: DWORD, + pub pPicBuf: *mut ::std::os::raw::c_char, + pub dwPicLen: DWORD, + pub dwTime: DWORD, + pub pVideoBuf: *mut ::std::os::raw::c_char, + pub dwVideoLen: DWORD, + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_DBD_PICTURE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(NET_DVR_DBD_PICTURE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(NET_DVR_DBD_PICTURE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_PICTURE_INFO), + "::", + stringify!(dwPicType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPicBuf) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_PICTURE_INFO), + "::", + stringify!(pPicBuf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicLen) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_PICTURE_INFO), + "::", + stringify!(dwPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTime) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_PICTURE_INFO), + "::", + stringify!(dwTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pVideoBuf) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_PICTURE_INFO), + "::", + stringify!(pVideoBuf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoLen) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_PICTURE_INFO), + "::", + stringify!(dwVideoLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_PICTURE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_DBD_PICTURE_INFO = *mut NET_DVR_DBD_PICTURE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DBD_POSITION_INFO { + pub bValid: DWORD, + pub dwLongitude: DWORD, + pub dwLatitude: DWORD, + pub dwVehicleSpeed: DWORD, + pub dwVehicleDirection: DWORD, + pub dwAltitude: DWORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_DBD_POSITION_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(NET_DVR_DBD_POSITION_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_DBD_POSITION_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bValid) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_POSITION_INFO), + "::", + stringify!(bValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLongitude) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_POSITION_INFO), + "::", + stringify!(dwLongitude) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLatitude) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_POSITION_INFO), + "::", + stringify!(dwLatitude) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVehicleSpeed) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_POSITION_INFO), + "::", + stringify!(dwVehicleSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVehicleDirection) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_POSITION_INFO), + "::", + stringify!(dwVehicleDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAltitude) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_POSITION_INFO), + "::", + stringify!(dwAltitude) + ) + ); +} +pub type LPNET_DVR_DBD_POSITION_INFO = *mut NET_DVR_DBD_POSITION_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DBD_ALARM_STATE { + pub bySmoke: BYTE, + pub byPhone: BYTE, + pub byTiredDriving: BYTE, + pub byNoVisualFront: BYTE, + pub byNoHead: BYTE, + pub byWithoutBelt: BYTE, + pub byPickingUpThing: BYTE, + pub byYawn: BYTE, + pub byEatOrDrink: BYTE, + pub byChatting: BYTE, + pub byTampering: BYTE, + pub byWithoutUniform: BYTE, + pub byDriverCmpFail: BYTE, + pub byDriverChange: BYTE, + pub byDriveLongTime: BYTE, + pub byInfraredBlockingSunglasses: BYTE, + pub byOutOfWheel: BYTE, + pub byRes: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_DBD_ALARM_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(NET_DVR_DBD_ALARM_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_DBD_ALARM_STATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySmoke) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALARM_STATE), + "::", + stringify!(bySmoke) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPhone) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALARM_STATE), + "::", + stringify!(byPhone) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTiredDriving) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALARM_STATE), + "::", + stringify!(byTiredDriving) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNoVisualFront) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALARM_STATE), + "::", + stringify!(byNoVisualFront) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNoHead) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALARM_STATE), + "::", + stringify!(byNoHead) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWithoutBelt) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALARM_STATE), + "::", + stringify!(byWithoutBelt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPickingUpThing) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALARM_STATE), + "::", + stringify!(byPickingUpThing) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byYawn) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALARM_STATE), + "::", + stringify!(byYawn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEatOrDrink) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALARM_STATE), + "::", + stringify!(byEatOrDrink) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChatting) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALARM_STATE), + "::", + stringify!(byChatting) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTampering) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALARM_STATE), + "::", + stringify!(byTampering) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWithoutUniform) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALARM_STATE), + "::", + stringify!(byWithoutUniform) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDriverCmpFail) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALARM_STATE), + "::", + stringify!(byDriverCmpFail) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDriverChange) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALARM_STATE), + "::", + stringify!(byDriverChange) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDriveLongTime) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALARM_STATE), + "::", + stringify!(byDriveLongTime) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byInfraredBlockingSunglasses) as usize - ptr as usize + }, + 15usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALARM_STATE), + "::", + stringify!(byInfraredBlockingSunglasses) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutOfWheel) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALARM_STATE), + "::", + stringify!(byOutOfWheel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALARM_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_DBD_ALARM_STATE = *mut NET_DVR_DBD_ALARM_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DBD_ALRAM_INFO { + pub dwSize: DWORD, + pub byChannel: BYTE, + pub byLevel: BYTE, + pub byRes1: [BYTE; 2usize], + pub struIpcInfo: NET_VCA_DEV_INFO, + pub struPosInfo: NET_DVR_DBD_POSITION_INFO, + pub struPicInfo: NET_DVR_DBD_PICTURE_INFO, + pub struAlarmState: NET_DVR_DBD_ALARM_STATE, + pub byRes2: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_DBD_ALRAM_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 280usize, + concat!("Size of: ", stringify!(NET_DVR_DBD_ALRAM_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(NET_DVR_DBD_ALRAM_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALRAM_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALRAM_INFO), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLevel) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALRAM_INFO), + "::", + stringify!(byLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALRAM_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIpcInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALRAM_INFO), + "::", + stringify!(struIpcInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPosInfo) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALRAM_INFO), + "::", + stringify!(struPosInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPicInfo) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALRAM_INFO), + "::", + stringify!(struPicInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmState) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALRAM_INFO), + "::", + stringify!(struAlarmState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DBD_ALRAM_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type LPNET_DVR_DBD_ALRAM_INFO = *mut NET_DVR_DBD_ALRAM_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_ADAS_PICTURE_INFO { + pub dwPicType: DWORD, + pub pPicBuf: *mut ::std::os::raw::c_char, + pub dwPicLen: DWORD, + pub dwTime: DWORD, + pub pVideoBuf: *mut ::std::os::raw::c_char, + pub dwVideoLen: DWORD, + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_ADAS_PICTURE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(NET_DVR_ADAS_PICTURE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(NET_DVR_ADAS_PICTURE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_PICTURE_INFO), + "::", + stringify!(dwPicType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPicBuf) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_PICTURE_INFO), + "::", + stringify!(pPicBuf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicLen) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_PICTURE_INFO), + "::", + stringify!(dwPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTime) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_PICTURE_INFO), + "::", + stringify!(dwTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pVideoBuf) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_PICTURE_INFO), + "::", + stringify!(pVideoBuf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoLen) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_PICTURE_INFO), + "::", + stringify!(dwVideoLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_PICTURE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_ADAS_PICTURE_INFO = *mut NET_DVR_ADAS_PICTURE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_ADAS_POSITION_INFO { + pub dwValid: DWORD, + pub dwLongitude: DWORD, + pub dwLatitude: DWORD, + pub dwVehicleSpeed: DWORD, + pub dwVehicleDirection: DWORD, + pub dwAltitude: DWORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_ADAS_POSITION_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(NET_DVR_ADAS_POSITION_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_ADAS_POSITION_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwValid) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_POSITION_INFO), + "::", + stringify!(dwValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLongitude) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_POSITION_INFO), + "::", + stringify!(dwLongitude) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLatitude) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_POSITION_INFO), + "::", + stringify!(dwLatitude) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVehicleSpeed) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_POSITION_INFO), + "::", + stringify!(dwVehicleSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVehicleDirection) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_POSITION_INFO), + "::", + stringify!(dwVehicleDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAltitude) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_POSITION_INFO), + "::", + stringify!(dwAltitude) + ) + ); +} +pub type LPNET_DVR_ADAS_POSITION_INFO = *mut NET_DVR_ADAS_POSITION_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_ADAS_ALARM_STATE { + pub dwFcw: BYTE, + pub dwLdw: BYTE, + pub dwHmw: BYTE, + pub dwPcw: BYTE, + pub dwBsd: BYTE, + pub byAcc: BYTE, + pub byBrake: BYTE, + pub byTurn: BYTE, + pub byRollover: BYTE, + pub byNoCourtesy: BYTE, + pub byTsr: BYTE, + pub byRes: [BYTE; 13usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_ADAS_ALARM_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(NET_DVR_ADAS_ALARM_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_ADAS_ALARM_STATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFcw) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_ALARM_STATE), + "::", + stringify!(dwFcw) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLdw) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_ALARM_STATE), + "::", + stringify!(dwLdw) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHmw) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_ALARM_STATE), + "::", + stringify!(dwHmw) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPcw) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_ALARM_STATE), + "::", + stringify!(dwPcw) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBsd) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_ALARM_STATE), + "::", + stringify!(dwBsd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAcc) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_ALARM_STATE), + "::", + stringify!(byAcc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrake) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_ALARM_STATE), + "::", + stringify!(byBrake) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTurn) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_ALARM_STATE), + "::", + stringify!(byTurn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRollover) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_ALARM_STATE), + "::", + stringify!(byRollover) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNoCourtesy) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_ALARM_STATE), + "::", + stringify!(byNoCourtesy) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTsr) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_ALARM_STATE), + "::", + stringify!(byTsr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_ALARM_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_ADAS_ALARM_STATE = *mut NET_DVR_ADAS_ALARM_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_ADAS_ALRAM_INFO { + pub dwSize: DWORD, + pub byChannel: BYTE, + pub byRes1: [BYTE; 3usize], + pub struIpcInfo: NET_VCA_DEV_INFO, + pub struPosInfo: NET_DVR_ADAS_POSITION_INFO, + pub struPicInfo: NET_DVR_ADAS_PICTURE_INFO, + pub struAlarmState: NET_DVR_ADAS_ALARM_STATE, + pub byRes2: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_ADAS_ALRAM_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 280usize, + concat!("Size of: ", stringify!(NET_DVR_ADAS_ALRAM_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(NET_DVR_ADAS_ALRAM_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_ALRAM_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_ALRAM_INFO), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_ALRAM_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIpcInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_ALRAM_INFO), + "::", + stringify!(struIpcInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPosInfo) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_ALRAM_INFO), + "::", + stringify!(struPosInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPicInfo) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_ALRAM_INFO), + "::", + stringify!(struPicInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmState) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_ALRAM_INFO), + "::", + stringify!(struAlarmState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ADAS_ALRAM_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type LPNET_DVR_ADAS_ALRAM_INFO = *mut NET_DVR_ADAS_ALRAM_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_VEH_REALTIME_DATA_INFO { + pub dwSize: DWORD, + pub dwSpeedValue: DWORD, + pub dwSpeedPulse: DWORD, + pub byUpgPercent: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwVideoLostChans: DWORD, + pub byRes2: [BYTE; 44usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_VEH_REALTIME_DATA_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(NET_DVR_VEH_REALTIME_DATA_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_VEH_REALTIME_DATA_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEH_REALTIME_DATA_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSpeedValue) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEH_REALTIME_DATA_INFO), + "::", + stringify!(dwSpeedValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSpeedPulse) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEH_REALTIME_DATA_INFO), + "::", + stringify!(dwSpeedPulse) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUpgPercent) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEH_REALTIME_DATA_INFO), + "::", + stringify!(byUpgPercent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEH_REALTIME_DATA_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoLostChans) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEH_REALTIME_DATA_INFO), + "::", + stringify!(dwVideoLostChans) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEH_REALTIME_DATA_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type LPNET_DVR_VEH_REALTIME_DATA_INFO = *mut NET_DVR_VEH_REALTIME_DATA_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_VCA_ATTEND_PICDATA { + pub dwPicLen: DWORD, + pub pPicBuf: *mut ::std::os::raw::c_char, + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_VCA_ATTEND_PICDATA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(NET_DVR_VCA_ATTEND_PICDATA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(NET_DVR_VCA_ATTEND_PICDATA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VCA_ATTEND_PICDATA), + "::", + stringify!(dwPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPicBuf) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VCA_ATTEND_PICDATA), + "::", + stringify!(pPicBuf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VCA_ATTEND_PICDATA), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_VCA_ATTEND_PICDATA = *mut NET_DVR_VCA_ATTEND_PICDATA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_VCA_ATTEND_PICTURE_INFO { + pub byPicNum: BYTE, + pub byRes1: [BYTE; 3usize], + pub struPicData: [NET_DVR_VCA_ATTEND_PICDATA; 3usize], + pub dwVideoLen: DWORD, + pub pVideoBuf: *mut ::std::os::raw::c_char, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_VCA_ATTEND_PICTURE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 184usize, + concat!("Size of: ", stringify!(NET_DVR_VCA_ATTEND_PICTURE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(NET_DVR_VCA_ATTEND_PICTURE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VCA_ATTEND_PICTURE_INFO), + "::", + stringify!(byPicNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VCA_ATTEND_PICTURE_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPicData) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VCA_ATTEND_PICTURE_INFO), + "::", + stringify!(struPicData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoLen) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VCA_ATTEND_PICTURE_INFO), + "::", + stringify!(dwVideoLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pVideoBuf) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VCA_ATTEND_PICTURE_INFO), + "::", + stringify!(pVideoBuf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VCA_ATTEND_PICTURE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_VCA_ATTEND_PICTURE_INFO = *mut NET_DVR_VCA_ATTEND_PICTURE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_VCA_ATTEND_ALARM_INFO { + pub dwSize: DWORD, + pub byMethod: BYTE, + pub byStatus: BYTE, + pub byCertIDType: BYTE, + pub byCertIDLen: BYTE, + pub sCertId: [::std::os::raw::c_char; 32usize], + pub dwTime: DWORD, + pub sName: [::std::os::raw::c_char; 64usize], + pub sAlarmIdNo: [::std::os::raw::c_char; 32usize], + pub struPicInfo: NET_DVR_VCA_ATTEND_PICTURE_INFO, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_VCA_ATTEND_ALARM_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 456usize, + concat!("Size of: ", stringify!(NET_DVR_VCA_ATTEND_ALARM_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(NET_DVR_VCA_ATTEND_ALARM_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VCA_ATTEND_ALARM_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMethod) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VCA_ATTEND_ALARM_INFO), + "::", + stringify!(byMethod) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VCA_ATTEND_ALARM_INFO), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCertIDType) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VCA_ATTEND_ALARM_INFO), + "::", + stringify!(byCertIDType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCertIDLen) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VCA_ATTEND_ALARM_INFO), + "::", + stringify!(byCertIDLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCertId) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VCA_ATTEND_ALARM_INFO), + "::", + stringify!(sCertId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTime) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VCA_ATTEND_ALARM_INFO), + "::", + stringify!(dwTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sName) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VCA_ATTEND_ALARM_INFO), + "::", + stringify!(sName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sAlarmIdNo) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VCA_ATTEND_ALARM_INFO), + "::", + stringify!(sAlarmIdNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPicInfo) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VCA_ATTEND_ALARM_INFO), + "::", + stringify!(struPicInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VCA_ATTEND_ALARM_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_VCA_ATTEND_ALARM_INFO = *mut NET_DVR_VCA_ATTEND_ALARM_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_FILTER_STRATEGY { + pub byStrategy: BYTE, + pub byRes: [BYTE; 11usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_FILTER_STRATEGY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_VCA_FILTER_STRATEGY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_VCA_FILTER_STRATEGY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStrategy) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FILTER_STRATEGY), + "::", + stringify!(byStrategy) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FILTER_STRATEGY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_FILTER_STRATEGY = tagNET_VCA_FILTER_STRATEGY; +pub type LPNET_VCA_FILTER_STRATEGY = *mut tagNET_VCA_FILTER_STRATEGY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_RULE_TRIGGER_PARAM { + pub byTriggerMode: BYTE, + pub byTriggerPoint: BYTE, + pub byRes1: [BYTE; 2usize], + pub fTriggerArea: f32, + pub byRes2: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_RULE_TRIGGER_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_VCA_RULE_TRIGGER_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_RULE_TRIGGER_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTriggerMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_TRIGGER_PARAM), + "::", + stringify!(byTriggerMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTriggerPoint) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_TRIGGER_PARAM), + "::", + stringify!(byTriggerPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_TRIGGER_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fTriggerArea) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_TRIGGER_PARAM), + "::", + stringify!(fTriggerArea) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_TRIGGER_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_VCA_RULE_TRIGGER_PARAM = tagNET_VCA_RULE_TRIGGER_PARAM; +pub type LPNET_VCA_RULE_TRIGGER_PARAM = *mut tagNET_VCA_RULE_TRIGGER_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_VCA_ONE_RULE_V41 { + pub byActive: BYTE, + pub byRes1: [BYTE; 4usize], + pub byEventTypeFlag: BYTE, + pub wEventTypeEx: WORD, + pub byRuleName: [BYTE; 32usize], + pub dwEventType: VCA_EVENT_TYPE, + pub uEventParam: NET_VCA_EVENT_UNION, + pub struSizeFilter: NET_VCA_SIZE_FILTER, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub struHandleType: NET_DVR_HANDLEEXCEPTION_V30, + pub byRelRecordChan: [BYTE; 64usize], + pub wAlarmDelay: WORD, + pub byRes2: [BYTE; 2usize], + pub struFilterStrategy: NET_VCA_FILTER_STRATEGY, + pub struTriggerParam: NET_VCA_RULE_TRIGGER_PARAM, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_ONE_RULE_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 620usize, + concat!("Size of: ", stringify!(tagNET_VCA_ONE_RULE_V41)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_ONE_RULE_V41)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byActive) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ONE_RULE_V41), + "::", + stringify!(byActive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ONE_RULE_V41), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEventTypeFlag) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ONE_RULE_V41), + "::", + stringify!(byEventTypeFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wEventTypeEx) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ONE_RULE_V41), + "::", + stringify!(wEventTypeEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ONE_RULE_V41), + "::", + stringify!(byRuleName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEventType) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ONE_RULE_V41), + "::", + stringify!(dwEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uEventParam) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ONE_RULE_V41), + "::", + stringify!(uEventParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSizeFilter) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ONE_RULE_V41), + "::", + stringify!(struSizeFilter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ONE_RULE_V41), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHandleType) as usize - ptr as usize }, + 396usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ONE_RULE_V41), + "::", + stringify!(struHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelRecordChan) as usize - ptr as usize }, + 496usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ONE_RULE_V41), + "::", + stringify!(byRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAlarmDelay) as usize - ptr as usize }, + 560usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ONE_RULE_V41), + "::", + stringify!(wAlarmDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 562usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ONE_RULE_V41), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFilterStrategy) as usize - ptr as usize }, + 564usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ONE_RULE_V41), + "::", + stringify!(struFilterStrategy) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTriggerParam) as usize - ptr as usize }, + 576usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ONE_RULE_V41), + "::", + stringify!(struTriggerParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 588usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ONE_RULE_V41), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_ONE_RULE_V41 = tagNET_VCA_ONE_RULE_V41; +pub type LPNET_VCA_ONE_RULE_V41 = *mut tagNET_VCA_ONE_RULE_V41; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_VCA_RULECFG_V41 { + pub dwSize: DWORD, + pub byPicProType: BYTE, + pub byUpLastAlarm: BYTE, + pub byPicRecordEnable: BYTE, + pub byRes1: BYTE, + pub struPictureParam: NET_DVR_JPEGPARA, + pub struRule: [NET_VCA_ONE_RULE_V41; 8usize], + pub wRelSnapChan: [WORD; 3usize], + pub byRes: [BYTE; 26usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_RULECFG_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 5004usize, + concat!("Size of: ", stringify!(tagNET_VCA_RULECFG_V41)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_RULECFG_V41)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG_V41), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicProType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG_V41), + "::", + stringify!(byPicProType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUpLastAlarm) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG_V41), + "::", + stringify!(byUpLastAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicRecordEnable) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG_V41), + "::", + stringify!(byPicRecordEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG_V41), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPictureParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG_V41), + "::", + stringify!(struPictureParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRule) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG_V41), + "::", + stringify!(struRule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRelSnapChan) as usize - ptr as usize }, + 4972usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG_V41), + "::", + stringify!(wRelSnapChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4978usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG_V41), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_RULECFG_V41 = tagNET_VCA_RULECFG_V41; +pub type LPNET_VCA_RULECFG_V41 = *mut tagNET_VCA_RULECFG_V41; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct NET_VCA_ONE_RULE_V42_ { + pub byActive: BYTE, + pub byEventPriority: BYTE, + pub byBackgroundSuppression: BYTE, + pub byRes1: [BYTE; 3usize], + pub wEventType: WORD, + pub byRuleName: [BYTE; 32usize], + pub uEventParam: NET_VCA_EVENT_UNION, + pub struSizeFilter: NET_VCA_SIZE_FILTER, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub struAlarmHandleType: NET_DVR_HANDLEEXCEPTION_V40, + pub dwRelRecordChan: [DWORD; 64usize], + pub wAlarmDelay: WORD, + pub byRes2: [BYTE; 2usize], + pub struFilterStrategy: NET_VCA_FILTER_STRATEGY, + pub struTriggerParam: NET_VCA_RULE_TRIGGER_PARAM, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_NET_VCA_ONE_RULE_V42_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1040usize, + concat!("Size of: ", stringify!(NET_VCA_ONE_RULE_V42_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_VCA_ONE_RULE_V42_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byActive) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_VCA_ONE_RULE_V42_), + "::", + stringify!(byActive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEventPriority) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_VCA_ONE_RULE_V42_), + "::", + stringify!(byEventPriority) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBackgroundSuppression) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_VCA_ONE_RULE_V42_), + "::", + stringify!(byBackgroundSuppression) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(NET_VCA_ONE_RULE_V42_), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wEventType) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_VCA_ONE_RULE_V42_), + "::", + stringify!(wEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_VCA_ONE_RULE_V42_), + "::", + stringify!(byRuleName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uEventParam) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(NET_VCA_ONE_RULE_V42_), + "::", + stringify!(uEventParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSizeFilter) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(NET_VCA_ONE_RULE_V42_), + "::", + stringify!(struSizeFilter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(NET_VCA_ONE_RULE_V42_), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmHandleType) as usize - ptr as usize }, + 392usize, + concat!( + "Offset of field: ", + stringify!(NET_VCA_ONE_RULE_V42_), + "::", + stringify!(struAlarmHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelRecordChan) as usize - ptr as usize }, + 724usize, + concat!( + "Offset of field: ", + stringify!(NET_VCA_ONE_RULE_V42_), + "::", + stringify!(dwRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAlarmDelay) as usize - ptr as usize }, + 980usize, + concat!( + "Offset of field: ", + stringify!(NET_VCA_ONE_RULE_V42_), + "::", + stringify!(wAlarmDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 982usize, + concat!( + "Offset of field: ", + stringify!(NET_VCA_ONE_RULE_V42_), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFilterStrategy) as usize - ptr as usize }, + 984usize, + concat!( + "Offset of field: ", + stringify!(NET_VCA_ONE_RULE_V42_), + "::", + stringify!(struFilterStrategy) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTriggerParam) as usize - ptr as usize }, + 996usize, + concat!( + "Offset of field: ", + stringify!(NET_VCA_ONE_RULE_V42_), + "::", + stringify!(struTriggerParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1008usize, + concat!( + "Offset of field: ", + stringify!(NET_VCA_ONE_RULE_V42_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_ONE_RULE_V42 = NET_VCA_ONE_RULE_V42_; +pub type LPNET_VCA_ONE_RULE_V42 = *mut NET_VCA_ONE_RULE_V42_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZ_POSITION { + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub byPtzPositionName: [BYTE; 32usize], + pub struPtzPos: NET_DVR_PTZPOS, + pub byRes2: [BYTE; 40usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZ_POSITION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 84usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZ_POSITION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZ_POSITION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_POSITION), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_POSITION), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPtzPositionName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_POSITION), + "::", + stringify!(byPtzPositionName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPtzPos) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_POSITION), + "::", + stringify!(struPtzPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_POSITION), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PTZ_POSITION = tagNET_DVR_PTZ_POSITION; +pub type LPNET_DVR_PTZ_POSITION = *mut tagNET_DVR_PTZ_POSITION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_VCA_RULECFG_V42 { + pub dwSize: DWORD, + pub byPicProType: BYTE, + pub byUpLastAlarm: BYTE, + pub byPicRecordEnable: BYTE, + pub byRes1: BYTE, + pub struPicParam: NET_DVR_JPEGPARA, + pub struRule: [NET_VCA_ONE_RULE_V42; 16usize], + pub wRelSnapChan: [WORD; 3usize], + pub byTrackEnable: BYTE, + pub byRes2: BYTE, + pub struPTZPosition: NET_DVR_PTZ_POSITION, + pub wTrackDuration: WORD, + pub wIntervalTime: WORD, + pub wHeightLimit: WORD, + pub byRes: [BYTE; 58usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_RULECFG_V42() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16808usize, + concat!("Size of: ", stringify!(tagNET_VCA_RULECFG_V42)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_RULECFG_V42)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG_V42), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicProType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG_V42), + "::", + stringify!(byPicProType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUpLastAlarm) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG_V42), + "::", + stringify!(byUpLastAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicRecordEnable) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG_V42), + "::", + stringify!(byPicRecordEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG_V42), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPicParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG_V42), + "::", + stringify!(struPicParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRule) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG_V42), + "::", + stringify!(struRule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRelSnapChan) as usize - ptr as usize }, + 16652usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG_V42), + "::", + stringify!(wRelSnapChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrackEnable) as usize - ptr as usize }, + 16658usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG_V42), + "::", + stringify!(byTrackEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 16659usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG_V42), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPTZPosition) as usize - ptr as usize }, + 16660usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG_V42), + "::", + stringify!(struPTZPosition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTrackDuration) as usize - ptr as usize }, + 16744usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG_V42), + "::", + stringify!(wTrackDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wIntervalTime) as usize - ptr as usize }, + 16746usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG_V42), + "::", + stringify!(wIntervalTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHeightLimit) as usize - ptr as usize }, + 16748usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG_V42), + "::", + stringify!(wHeightLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16750usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULECFG_V42), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_RULECFG_V42 = tagNET_VCA_RULECFG_V42; +pub type LPNET_VCA_RULECFG_V42 = *mut tagNET_VCA_RULECFG_V42; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_TARGET_INFO { + pub dwID: DWORD, + pub struRect: NET_VCA_RECT, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_TARGET_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_VCA_TARGET_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_TARGET_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TARGET_INFO), + "::", + stringify!(dwID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRect) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TARGET_INFO), + "::", + stringify!(struRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TARGET_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_TARGET_INFO = tagNET_VCA_TARGET_INFO; +pub type LPNET_VCA_TARGET_INFO = *mut tagNET_VCA_TARGET_INFO; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_VCA_RULE_INFO { + pub byRuleID: BYTE, + pub bySceneID: BYTE, + pub wEventTypeEx: WORD, + pub byRuleName: [BYTE; 32usize], + pub dwEventType: VCA_EVENT_TYPE, + pub uEventParam: NET_VCA_EVENT_UNION, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_RULE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_VCA_RULE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_RULE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_INFO), + "::", + stringify!(byRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySceneID) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_INFO), + "::", + stringify!(bySceneID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wEventTypeEx) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_INFO), + "::", + stringify!(wEventTypeEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_INFO), + "::", + stringify!(byRuleName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEventType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_INFO), + "::", + stringify!(dwEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uEventParam) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_INFO), + "::", + stringify!(uEventParam) + ) + ); +} +pub type NET_VCA_RULE_INFO = tagNET_VCA_RULE_INFO; +pub type LPNET_VCA_RULE_INFO = *mut tagNET_VCA_RULE_INFO; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_VCA_RULE_ALARM { + pub dwSize: DWORD, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub struRuleInfo: NET_VCA_RULE_INFO, + pub struTargetInfo: NET_VCA_TARGET_INFO, + pub struDevInfo: NET_VCA_DEV_INFO, + pub dwPicDataLen: DWORD, + pub byPicType: BYTE, + pub byRelAlarmPicNum: BYTE, + pub bySmart: BYTE, + pub byPicTransType: BYTE, + pub dwAlarmID: DWORD, + pub wDevInfoIvmsChannelEx: WORD, + pub byRelativeTimeFlag: BYTE, + pub byAppendInfoUploadEnabled: BYTE, + pub pAppendInfo: *mut BYTE, + pub pImage: *mut BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_RULE_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 352usize, + concat!("Size of: ", stringify!(tagNET_VCA_RULE_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_VCA_RULE_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_ALARM), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_ALARM), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRuleInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_ALARM), + "::", + stringify!(struRuleInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTargetInfo) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_ALARM), + "::", + stringify!(struTargetInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_ALARM), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicDataLen) as usize - ptr as usize }, + 316usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_ALARM), + "::", + stringify!(dwPicDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicType) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_ALARM), + "::", + stringify!(byPicType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelAlarmPicNum) as usize - ptr as usize }, + 321usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_ALARM), + "::", + stringify!(byRelAlarmPicNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySmart) as usize - ptr as usize }, + 322usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_ALARM), + "::", + stringify!(bySmart) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicTransType) as usize - ptr as usize }, + 323usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_ALARM), + "::", + stringify!(byPicTransType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmID) as usize - ptr as usize }, + 324usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_ALARM), + "::", + stringify!(dwAlarmID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevInfoIvmsChannelEx) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_ALARM), + "::", + stringify!(wDevInfoIvmsChannelEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelativeTimeFlag) as usize - ptr as usize }, + 330usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_ALARM), + "::", + stringify!(byRelativeTimeFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAppendInfoUploadEnabled) as usize - ptr as usize }, + 331usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_ALARM), + "::", + stringify!(byAppendInfoUploadEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pAppendInfo) as usize - ptr as usize }, + 336usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_ALARM), + "::", + stringify!(pAppendInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pImage) as usize - ptr as usize }, + 344usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_RULE_ALARM), + "::", + stringify!(pImage) + ) + ); +} +pub type NET_VCA_RULE_ALARM = tagNET_VCA_RULE_ALARM; +pub type LPNET_VCA_RULE_ALARM = *mut tagNET_VCA_RULE_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_APPEND_INFO { + pub dwSize: DWORD, + pub dwAppendPicLen: DWORD, + pub pAppendPicBuff: *mut BYTE, + pub byAppendPicType: BYTE, + pub byUID: [BYTE; 64usize], + pub byApplicationScene: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwTargetSpeed: DWORD, + pub dwTargetDistance: DWORD, + pub byAlarmType: BYTE, + pub byRadarChannel: BYTE, + pub byBrokenNetHttp: BYTE, + pub byAppendChannelType: BYTE, + pub dwAppendChannel: DWORD, + pub byRes: [BYTE; 44usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_APPEND_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!("Size of: ", stringify!(tagNET_VCA_APPEND_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_VCA_APPEND_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_APPEND_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAppendPicLen) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_APPEND_INFO), + "::", + stringify!(dwAppendPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pAppendPicBuff) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_APPEND_INFO), + "::", + stringify!(pAppendPicBuff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAppendPicType) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_APPEND_INFO), + "::", + stringify!(byAppendPicType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUID) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_APPEND_INFO), + "::", + stringify!(byUID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byApplicationScene) as usize - ptr as usize }, + 81usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_APPEND_INFO), + "::", + stringify!(byApplicationScene) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 82usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_APPEND_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTargetSpeed) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_APPEND_INFO), + "::", + stringify!(dwTargetSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTargetDistance) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_APPEND_INFO), + "::", + stringify!(dwTargetDistance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_APPEND_INFO), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRadarChannel) as usize - ptr as usize }, + 93usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_APPEND_INFO), + "::", + stringify!(byRadarChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrokenNetHttp) as usize - ptr as usize }, + 94usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_APPEND_INFO), + "::", + stringify!(byBrokenNetHttp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAppendChannelType) as usize - ptr as usize }, + 95usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_APPEND_INFO), + "::", + stringify!(byAppendChannelType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAppendChannel) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_APPEND_INFO), + "::", + stringify!(dwAppendChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_APPEND_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_APPEND_INFO = tagNET_VCA_APPEND_INFO; +pub type LPNET_VCA_APPEND_INFO = *mut tagNET_VCA_APPEND_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_DRAW_MODE { + pub dwSize: DWORD, + pub byDspAddTarget: BYTE, + pub byDspAddRule: BYTE, + pub byDspPicAddTarget: BYTE, + pub byDspPicAddRule: BYTE, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_DRAW_MODE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_VCA_DRAW_MODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_DRAW_MODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DRAW_MODE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDspAddTarget) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DRAW_MODE), + "::", + stringify!(byDspAddTarget) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDspAddRule) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DRAW_MODE), + "::", + stringify!(byDspAddRule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDspPicAddTarget) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DRAW_MODE), + "::", + stringify!(byDspPicAddTarget) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDspPicAddRule) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DRAW_MODE), + "::", + stringify!(byDspPicAddRule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DRAW_MODE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_DRAW_MODE = tagNET_VCA_DRAW_MODE; +pub type LPNET_VCA_DRAW_MODE = *mut tagNET_VCA_DRAW_MODE; +pub const tagOBJECT_TYPE_ENUM_ENUM_OBJECT_TYPE_COAT: tagOBJECT_TYPE_ENUM = 1; +pub type tagOBJECT_TYPE_ENUM = ::std::os::raw::c_uint; +pub use self::tagOBJECT_TYPE_ENUM as OBJECT_TYPE_ENUM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OBJECT_COLOR_COND { + pub dwChannel: DWORD, + pub dwObjType: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OBJECT_COLOR_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_OBJECT_COLOR_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OBJECT_COLOR_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OBJECT_COLOR_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwObjType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OBJECT_COLOR_COND), + "::", + stringify!(dwObjType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OBJECT_COLOR_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_OBJECT_COLOR_COND = tagNET_DVR_OBJECT_COLOR_COND; +pub type LPNET_DVR_OBJECT_COLOR_COND = *mut tagNET_DVR_OBJECT_COLOR_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PIC { + pub byPicType: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwPicWidth: DWORD, + pub dwPicHeight: DWORD, + pub dwPicDataLen: DWORD, + pub dwPicDataBuffLen: DWORD, + pub byPicDataBuff: *mut BYTE, + pub byRes2: [BYTE; 40usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PIC() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_PIC)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PIC)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC), + "::", + stringify!(byPicType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicWidth) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC), + "::", + stringify!(dwPicWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicHeight) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC), + "::", + stringify!(dwPicHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicDataLen) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC), + "::", + stringify!(dwPicDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicDataBuffLen) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC), + "::", + stringify!(dwPicDataBuffLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicDataBuff) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC), + "::", + stringify!(byPicDataBuff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PIC = tagNET_DVR_PIC; +pub type LPNET_DVR_PIC = *mut tagNET_DVR_PIC; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_OBJECT_COLOR_UNION { + pub struColor: NET_DVR_COLOR, + pub struPicture: NET_DVR_PIC, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OBJECT_COLOR_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_OBJECT_COLOR_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OBJECT_COLOR_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struColor) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OBJECT_COLOR_UNION), + "::", + stringify!(struColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPicture) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OBJECT_COLOR_UNION), + "::", + stringify!(struPicture) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OBJECT_COLOR_UNION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_OBJECT_COLOR_UNION = tagNET_DVR_OBJECT_COLOR_UNION; +pub type LPNET_DVR_OBJECT_COLOR_UNION = *mut tagNET_DVR_OBJECT_COLOR_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_OBJECT_COLOR { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byColorMode: BYTE, + pub byRes1: [BYTE; 2usize], + pub uObjColor: NET_DVR_OBJECT_COLOR_UNION, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OBJECT_COLOR() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!("Size of: ", stringify!(tagNET_DVR_OBJECT_COLOR)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OBJECT_COLOR)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OBJECT_COLOR), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OBJECT_COLOR), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byColorMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OBJECT_COLOR), + "::", + stringify!(byColorMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OBJECT_COLOR), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uObjColor) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OBJECT_COLOR), + "::", + stringify!(uObjColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OBJECT_COLOR), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_OBJECT_COLOR = tagNET_DVR_OBJECT_COLOR; +pub type LPNET_DVR_OBJECT_COLOR = *mut tagNET_DVR_OBJECT_COLOR; +pub const tagAREA_TYPE_ENUM_ENUM_OVERLAP_REGION: tagAREA_TYPE_ENUM = 1; +pub const tagAREA_TYPE_ENUM_ENUM_BED_LOCATION: tagAREA_TYPE_ENUM = 2; +pub type tagAREA_TYPE_ENUM = ::std::os::raw::c_uint; +pub use self::tagAREA_TYPE_ENUM as AREA_TYPE_ENUM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUXAREA { + pub dwAreaType: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub struPolygon: NET_VCA_POLYGON, + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUXAREA() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 108usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUXAREA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AUXAREA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAreaType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUXAREA), + "::", + stringify!(dwAreaType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUXAREA), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUXAREA), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPolygon) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUXAREA), + "::", + stringify!(struPolygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUXAREA), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_AUXAREA = tagNET_DVR_AUXAREA; +pub type LPNET_DVR_AUXAREA = *mut tagNET_DVR_AUXAREA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUXAREA_LIST { + pub dwSize: DWORD, + pub struArea: [NET_DVR_AUXAREA; 16usize], + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUXAREA_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1796usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUXAREA_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AUXAREA_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUXAREA_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struArea) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUXAREA_LIST), + "::", + stringify!(struArea) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1732usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUXAREA_LIST), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_AUXAREA_LIST = tagNET_DVR_AUXAREA_LIST; +pub type LPNET_DVR_AUXAREA_LIST = *mut tagNET_DVR_AUXAREA_LIST; +pub const tagCHAN_WORKMODE_ENUM_ENUM_CHAN_WORKMODE_INDEPENDENT: tagCHAN_WORKMODE_ENUM = 1; +pub const tagCHAN_WORKMODE_ENUM_ENUM_CHAN_WORKMODE_MASTER: tagCHAN_WORKMODE_ENUM = 2; +pub const tagCHAN_WORKMODE_ENUM_ENUM_CHAN_WORKMODE_SLAVE: tagCHAN_WORKMODE_ENUM = 3; +pub type tagCHAN_WORKMODE_ENUM = ::std::os::raw::c_uint; +pub use self::tagCHAN_WORKMODE_ENUM as CHAN_WORKMODE_ENUM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CHANNEL_WORKMODE { + pub dwSize: DWORD, + pub byWorkMode: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CHANNEL_WORKMODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_CHANNEL_WORKMODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CHANNEL_WORKMODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANNEL_WORKMODE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANNEL_WORKMODE), + "::", + stringify!(byWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANNEL_WORKMODE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CHANNEL_WORKMODE = tagNET_DVR_CHANNEL_WORKMODE; +pub type LPNET_DVR_CHANNEL_WORKMODE = *mut tagNET_DVR_CHANNEL_WORKMODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CHANNEL { + pub byAddress: [BYTE; 64usize], + pub wDVRPort: WORD, + pub byRes1: [BYTE; 2usize], + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub dwChannel: DWORD, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CHANNEL() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 152usize, + concat!("Size of: ", stringify!(tagNET_DVR_CHANNEL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CHANNEL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddress) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANNEL), + "::", + stringify!(byAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDVRPort) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANNEL), + "::", + stringify!(wDVRPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 66usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANNEL), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANNEL), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANNEL), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANNEL), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANNEL), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CHANNEL = tagNET_DVR_CHANNEL; +pub type LPNET_DVR_CHANNEL = *mut tagNET_DVR_CHANNEL; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_SLAVE_CHANNEL_UNION { + pub byRes: [BYTE; 152usize], + pub dwLocalChannel: DWORD, + pub struRemoteChannel: NET_DVR_CHANNEL, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SLAVE_CHANNEL_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 152usize, + concat!("Size of: ", stringify!(tagNET_DVR_SLAVE_CHANNEL_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SLAVE_CHANNEL_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVE_CHANNEL_UNION), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVE_CHANNEL_UNION), + "::", + stringify!(dwLocalChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRemoteChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVE_CHANNEL_UNION), + "::", + stringify!(struRemoteChannel) + ) + ); +} +pub type NET_DVR_SLAVE_CHANNEL_UNION = tagNET_DVR_SLAVE_CHANNEL_UNION; +pub type LPNET_DVR_SLAVE_CHANNEL_UNION = *mut tagNET_DVR_SLAVE_CHANNEL_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SLAVE_CHANNEL_PARAM { + pub byChanType: BYTE, + pub byRes1: [BYTE; 3usize], + pub uSlaveChannel: NET_DVR_SLAVE_CHANNEL_UNION, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SLAVE_CHANNEL_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 220usize, + concat!("Size of: ", stringify!(tagNET_DVR_SLAVE_CHANNEL_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SLAVE_CHANNEL_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVE_CHANNEL_PARAM), + "::", + stringify!(byChanType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVE_CHANNEL_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uSlaveChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVE_CHANNEL_PARAM), + "::", + stringify!(uSlaveChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVE_CHANNEL_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SLAVE_CHANNEL_PARAM = tagNET_DVR_SLAVE_CHANNEL_PARAM; +pub type LPNET_DVR_SLAVE_CHANNEL_PARAM = *mut tagNET_DVR_SLAVE_CHANNEL_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SLAVE_CHANNEL_CFG { + pub dwSize: DWORD, + pub struChanParam: [NET_DVR_SLAVE_CHANNEL_PARAM; 16usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SLAVE_CHANNEL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 3588usize, + concat!("Size of: ", stringify!(tagNET_DVR_SLAVE_CHANNEL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SLAVE_CHANNEL_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVE_CHANNEL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struChanParam) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVE_CHANNEL_CFG), + "::", + stringify!(struChanParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3524usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVE_CHANNEL_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SLAVE_CHANNEL_CFG = tagNET_DVR_SLAVE_CHANNEL_CFG; +pub type LPNET_DVR_SLAVE_CHANNEL_CFG = *mut tagNET_DVR_SLAVE_CHANNEL_CFG; +pub const tagVQD_EVENT_ENUM_ENUM_VQD_EVENT_BLUR: tagVQD_EVENT_ENUM = 1; +pub const tagVQD_EVENT_ENUM_ENUM_VQD_EVENT_LUMA: tagVQD_EVENT_ENUM = 2; +pub const tagVQD_EVENT_ENUM_ENUM_VQD_EVENT_CHROMA: tagVQD_EVENT_ENUM = 3; +pub const tagVQD_EVENT_ENUM_ENUM_VQD_EVENT_SNOW: tagVQD_EVENT_ENUM = 4; +pub const tagVQD_EVENT_ENUM_ENUM_VQD_EVENT_STREAK: tagVQD_EVENT_ENUM = 5; +pub const tagVQD_EVENT_ENUM_ENUM_VQD_EVENT_FREEZE: tagVQD_EVENT_ENUM = 6; +pub const tagVQD_EVENT_ENUM_ENUM_VQD_EVENT_SIGNAL_LOSS: tagVQD_EVENT_ENUM = 7; +pub const tagVQD_EVENT_ENUM_ENUM_VQD_EVENT_PTZ: tagVQD_EVENT_ENUM = 8; +pub const tagVQD_EVENT_ENUM_ENUM_VQD_EVENT_SCNENE_CHANGE: tagVQD_EVENT_ENUM = 9; +pub const tagVQD_EVENT_ENUM_ENUM_VQD_EVENT_VIDEO_ABNORMAL: tagVQD_EVENT_ENUM = 10; +pub const tagVQD_EVENT_ENUM_ENUM_VQD_EVENT_VIDEO_BLOCK: tagVQD_EVENT_ENUM = 11; +pub const tagVQD_EVENT_ENUM_ENUM_VQD_EVENT_CLARTY: tagVQD_EVENT_ENUM = 12; +pub const tagVQD_EVENT_ENUM_ENUM_VQD_EVENT_JITTER: tagVQD_EVENT_ENUM = 13; +pub const tagVQD_EVENT_ENUM_ENUM_VQD_EVENT_FLOWERS: tagVQD_EVENT_ENUM = 14; +pub const tagVQD_EVENT_ENUM_ENUM_VQD_EVENT_NOISE: tagVQD_EVENT_ENUM = 15; +pub const tagVQD_EVENT_ENUM_ENUM_VQD_EVENT_GHOST: tagVQD_EVENT_ENUM = 16; +pub const tagVQD_EVENT_ENUM_ENUM_VQD_EVENT_PURPLE: tagVQD_EVENT_ENUM = 17; +pub const tagVQD_EVENT_ENUM_ENUM_VQD_EVENT_ICR: tagVQD_EVENT_ENUM = 18; +pub const tagVQD_EVENT_ENUM_ENUM_VQD_EVENT_PROTECTFILM: tagVQD_EVENT_ENUM = 19; +pub type tagVQD_EVENT_ENUM = ::std::os::raw::c_uint; +pub use self::tagVQD_EVENT_ENUM as VQD_EVENT_ENUM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VQD_EVENT_COND { + pub dwChannel: DWORD, + pub dwEventType: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VQD_EVENT_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_VQD_EVENT_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VQD_EVENT_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_EVENT_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEventType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_EVENT_COND), + "::", + stringify!(dwEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_EVENT_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VQD_EVENT_COND = tagNET_DVR_VQD_EVENT_COND; +pub type LPNET_DVR_VQD_EVENT_COND = *mut tagNET_DVR_VQD_EVENT_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VQD_EVENT_PARAM { + pub byThreshold: BYTE, + pub byTriggerMode: BYTE, + pub byUploadPic: BYTE, + pub byRes1: BYTE, + pub dwTimeInterval: DWORD, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VQD_EVENT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_VQD_EVENT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VQD_EVENT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byThreshold) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_EVENT_PARAM), + "::", + stringify!(byThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTriggerMode) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_EVENT_PARAM), + "::", + stringify!(byTriggerMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUploadPic) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_EVENT_PARAM), + "::", + stringify!(byUploadPic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_EVENT_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTimeInterval) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_EVENT_PARAM), + "::", + stringify!(dwTimeInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_EVENT_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_VQD_EVENT_PARAM = tagNET_DVR_VQD_EVENT_PARAM; +pub type LPNET_DVR_VQD_EVENT_PARAM = *mut tagNET_DVR_VQD_EVENT_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VQD_EVENT_RULE { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub struEventParam: NET_DVR_VQD_EVENT_PARAM, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub struHandleType: NET_DVR_HANDLEEXCEPTION_V30, + pub byRelRecordChan: [BYTE; 128usize], + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VQD_EVENT_RULE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 660usize, + concat!("Size of: ", stringify!(tagNET_DVR_VQD_EVENT_RULE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VQD_EVENT_RULE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_EVENT_RULE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_EVENT_RULE), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_EVENT_RULE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEventParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_EVENT_RULE), + "::", + stringify!(struEventParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_EVENT_RULE), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHandleType) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_EVENT_RULE), + "::", + stringify!(struHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelRecordChan) as usize - ptr as usize }, + 404usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_EVENT_RULE), + "::", + stringify!(byRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 532usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_EVENT_RULE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_VQD_EVENT_RULE = tagNET_DVR_VQD_EVENT_RULE; +pub type LPNET_DVR_VQD_EVENT_RULE = *mut tagNET_DVR_VQD_EVENT_RULE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BASELINE_SCENE { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BASELINE_SCENE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_BASELINE_SCENE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BASELINE_SCENE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASELINE_SCENE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASELINE_SCENE), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASELINE_SCENE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BASELINE_SCENE = tagNET_DVR_BASELINE_SCENE; +pub type LPNET_DVR_BASELINE_SCENE = *mut tagNET_DVR_BASELINE_SCENE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CONTROL_BASELINE_SCENE_PARAM { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byCommand: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CONTROL_BASELINE_SCENE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_CONTROL_BASELINE_SCENE_PARAM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_CONTROL_BASELINE_SCENE_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_BASELINE_SCENE_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_BASELINE_SCENE_PARAM), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCommand) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_BASELINE_SCENE_PARAM), + "::", + stringify!(byCommand) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_BASELINE_SCENE_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CONTROL_BASELINE_SCENE_PARAM = tagNET_DVR_CONTROL_BASELINE_SCENE_PARAM; +pub type LPNET_DVR_CONTROL_BASELINE_SCENE_PARAM = *mut tagNET_DVR_CONTROL_BASELINE_SCENE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VQD_ALARM { + pub dwSize: DWORD, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub dwEventType: DWORD, + pub fThreshold: f32, + pub dwPicDataLen: DWORD, + pub pImage: *mut BYTE, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VQD_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 312usize, + concat!("Size of: ", stringify!(tagNET_DVR_VQD_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VQD_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_ALARM), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_ALARM), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_ALARM), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEventType) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_ALARM), + "::", + stringify!(dwEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fThreshold) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_ALARM), + "::", + stringify!(fThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicDataLen) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_ALARM), + "::", + stringify!(dwPicDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pImage) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_ALARM), + "::", + stringify!(pImage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VQD_ALARM = tagNET_DVR_VQD_ALARM; +pub type LPNET_DVR_VQD_ALARM = *mut tagNET_DVR_VQD_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CB_POINT { + pub struPoint: NET_VCA_POINT, + pub struPtzPos: NET_DVR_PTZPOS, + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CB_POINT() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_DVR_CB_POINT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CB_POINT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPoint) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CB_POINT), + "::", + stringify!(struPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPtzPos) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CB_POINT), + "::", + stringify!(struPtzPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CB_POINT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CB_POINT = tagNET_DVR_CB_POINT; +pub type LPNET_DVR_CB_POINT = tagNET_DVR_CB_POINT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRACK_CALIBRATION_PARAM { + pub byPointNum: BYTE, + pub byRes: [BYTE; 3usize], + pub struCBPoint: [NET_DVR_CB_POINT; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRACK_CALIBRATION_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!("Size of: ", stringify!(tagNET_DVR_TRACK_CALIBRATION_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_TRACK_CALIBRATION_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPointNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_CALIBRATION_PARAM), + "::", + stringify!(byPointNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_CALIBRATION_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCBPoint) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_CALIBRATION_PARAM), + "::", + stringify!(struCBPoint) + ) + ); +} +pub type NET_DVR_TRACK_CALIBRATION_PARAM = tagNET_DVR_TRACK_CALIBRATION_PARAM; +pub type LPNET_DVR_TRACK_CALIBRATION_PARAM = *mut tagNET_DVR_TRACK_CALIBRATION_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRACK_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byFollowChan: BYTE, + pub byDomeCalibrate: BYTE, + pub byRes: BYTE, + pub struCalParam: NET_DVR_TRACK_CALIBRATION_PARAM, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRACK_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 156usize, + concat!("Size of: ", stringify!(tagNET_DVR_TRACK_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TRACK_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFollowChan) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_CFG), + "::", + stringify!(byFollowChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDomeCalibrate) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_CFG), + "::", + stringify!(byDomeCalibrate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCalParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_CFG), + "::", + stringify!(struCalParam) + ) + ); +} +pub type NET_DVR_TRACK_CFG = tagNET_DVR_TRACK_CFG; +pub type LPNET_DVR_TRACK_CFG = *mut tagNET_DVR_TRACK_CFG; +pub const _TRACK_MODE__MANUAL_CTRL: _TRACK_MODE_ = 0; +pub const _TRACK_MODE__ALARM_TRACK: _TRACK_MODE_ = 1; +pub type _TRACK_MODE_ = ::std::os::raw::c_uint; +pub use self::_TRACK_MODE_ as TRACK_MODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MANUAL_CTRL_INFO { + pub struCtrlPoint: NET_VCA_POINT, + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MANUAL_CTRL_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_MANUAL_CTRL_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MANUAL_CTRL_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCtrlPoint) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANUAL_CTRL_INFO), + "::", + stringify!(struCtrlPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANUAL_CTRL_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MANUAL_CTRL_INFO = tagNET_DVR_MANUAL_CTRL_INFO; +pub type LPNET_DVR_MANUAL_CTRL_INFO = *mut tagNET_DVR_MANUAL_CTRL_INFO; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_TRACK_MODE { + pub dwSize: DWORD, + pub byTrackMode: BYTE, + pub byRuleConfMode: BYTE, + pub byRes: [BYTE; 2usize], + pub uModeParam: tagNET_DVR_TRACK_MODE__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_TRACK_MODE__bindgen_ty_1 { + pub dwULen: [DWORD; 4usize], + pub struManualCtrl: NET_DVR_MANUAL_CTRL_INFO, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRACK_MODE__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_TRACK_MODE__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_TRACK_MODE__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwULen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_MODE__bindgen_ty_1), + "::", + stringify!(dwULen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struManualCtrl) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_MODE__bindgen_ty_1), + "::", + stringify!(struManualCtrl) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRACK_MODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_DVR_TRACK_MODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TRACK_MODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_MODE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrackMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_MODE), + "::", + stringify!(byTrackMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleConfMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_MODE), + "::", + stringify!(byRuleConfMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_MODE), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uModeParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_MODE), + "::", + stringify!(uModeParam) + ) + ); +} +pub type NET_DVR_TRACK_MODE = tagNET_DVR_TRACK_MODE; +pub type LPNET_DVR_TRACK_MODE = *mut tagNET_DVR_TRACK_MODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARM_JPEG { + pub byPicProType: BYTE, + pub byRes: [BYTE; 3usize], + pub struPicParam: NET_DVR_JPEGPARA, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARM_JPEG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARM_JPEG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARM_JPEG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicProType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_JPEG), + "::", + stringify!(byPicProType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_JPEG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPicParam) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_JPEG), + "::", + stringify!(struPicParam) + ) + ); +} +pub type NET_DVR_ALARM_JPEG = tagNET_DVR_ALARM_JPEG; +pub type LPNET_DVR_ALARM_JPEG = *mut tagNET_DVR_ALARM_JPEG; +#[doc = "ipc/d5.3.0"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PHY_RATIO { + pub dwSize: DWORD, + pub dwPhysicsRatio: DWORD, + pub byRes: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PHY_RATIO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_PHY_RATIO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PHY_RATIO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHY_RATIO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPhysicsRatio) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHY_RATIO), + "::", + stringify!(dwPhysicsRatio) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHY_RATIO), + "::", + stringify!(byRes) + ) + ); +} +#[doc = "ipc/d5.3.0"] +pub type NET_DVR_PHY_RATIO = tagNET_DVR_PHY_RATIO; +#[doc = "ipc/d5.3.0"] +pub type LPNET_DVR_PHY_RATIO = *mut tagNET_DVR_PHY_RATIO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SLAVECAMERA_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byID: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwSceneID: DWORD, + pub byRes: [BYTE; 56usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SLAVECAMERA_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_SLAVECAMERA_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SLAVECAMERA_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_COND), + "::", + stringify!(byID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_COND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSceneID) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_COND), + "::", + stringify!(dwSceneID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SLAVECAMERA_COND = tagNET_DVR_SLAVECAMERA_COND; +pub type LPNET_DVR_SLAVECAMERA_COND = *mut tagNET_DVR_SLAVECAMERA_COND; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SLAVECAMERA_CFG { + pub dwSize: DWORD, + pub byAddressType: BYTE, + pub wPort: WORD, + pub byLoginStatus: BYTE, + pub unionServer: tagNET_DVR_SLAVECAMERA_CFG__bindgen_ty_1, + pub szUserName: [BYTE; 32usize], + pub szPassWord: [BYTE; 16usize], + pub byRes1: [BYTE; 128usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_SLAVECAMERA_CFG__bindgen_ty_1 { + pub struDomain: tagNET_DVR_SLAVECAMERA_CFG__bindgen_ty_1__bindgen_ty_1, + pub struAddrIP: tagNET_DVR_SLAVECAMERA_CFG__bindgen_ty_1__bindgen_ty_2, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SLAVECAMERA_CFG__bindgen_ty_1__bindgen_ty_1 { + pub szDomain: [BYTE; 64usize], + pub byRes1: [BYTE; 80usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SLAVECAMERA_CFG__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SLAVECAMERA_CFG__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SLAVECAMERA_CFG__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDomain) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CFG__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(szDomain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CFG__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes1) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SLAVECAMERA_CFG__bindgen_ty_1__bindgen_ty_2 { + pub struIp: NET_DVR_IPADDR, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SLAVECAMERA_CFG__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SLAVECAMERA_CFG__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SLAVECAMERA_CFG__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIp) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CFG__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(struIp) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SLAVECAMERA_CFG__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SLAVECAMERA_CFG__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SLAVECAMERA_CFG__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDomain) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CFG__bindgen_ty_1), + "::", + stringify!(struDomain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAddrIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CFG__bindgen_ty_1), + "::", + stringify!(struAddrIP) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SLAVECAMERA_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 332usize, + concat!("Size of: ", stringify!(tagNET_DVR_SLAVECAMERA_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SLAVECAMERA_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddressType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CFG), + "::", + stringify!(byAddressType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CFG), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLoginStatus) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CFG), + "::", + stringify!(byLoginStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).unionServer) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CFG), + "::", + stringify!(unionServer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szUserName) as usize - ptr as usize }, + 153usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CFG), + "::", + stringify!(szUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szPassWord) as usize - ptr as usize }, + 185usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CFG), + "::", + stringify!(szPassWord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 201usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_SLAVECAMERA_CFG = tagNET_DVR_SLAVECAMERA_CFG; +pub type LPNET_DVR_SLAVECAMERA_CFG = *mut tagNET_DVR_SLAVECAMERA_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SLAVECAMERA_PARAM { + pub byLinkStatus: BYTE, + pub byRes: [BYTE; 15usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SLAVECAMERA_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_SLAVECAMERA_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SLAVECAMERA_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLinkStatus) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_PARAM), + "::", + stringify!(byLinkStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SLAVECAMERA_PARAM = tagNET_DVR_SLAVECAMERA_PARAM; +pub type LPNET_DVR_SLAVECAMERA_PARAM = *mut tagNET_DVR_SLAVECAMERA_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SLAVECAMERA_STATUS { + pub dwSize: DWORD, + pub struSlaveCamera: [NET_DVR_SLAVECAMERA_PARAM; 8usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SLAVECAMERA_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 196usize, + concat!("Size of: ", stringify!(tagNET_DVR_SLAVECAMERA_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SLAVECAMERA_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSlaveCamera) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_STATUS), + "::", + stringify!(struSlaveCamera) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SLAVECAMERA_STATUS = tagNET_DVR_SLAVECAMERA_STATUS; +pub type LPNET_DVR_SLAVECAMERA_STATUS = *mut tagNET_DVR_SLAVECAMERA_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_PTZ_INFO { + pub fPan: f32, + pub fTilt: f32, + pub fZoom: f32, + pub dwFocus: DWORD, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_PTZ_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_PTZ_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_PTZ_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fPan) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_PTZ_INFO), + "::", + stringify!(fPan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fTilt) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_PTZ_INFO), + "::", + stringify!(fTilt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fZoom) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_PTZ_INFO), + "::", + stringify!(fZoom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFocus) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_PTZ_INFO), + "::", + stringify!(dwFocus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_PTZ_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_PTZ_INFO = tagNET_PTZ_INFO; +pub type LPNET_PTZ_INFO = *mut tagNET_PTZ_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BV_CALIB_POSITION { + pub dwSize: DWORD, + pub struInitialPos: NET_PTZ_INFO, + pub struAdjustPos: NET_PTZ_INFO, + pub byRes: [BYTE; 300usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BV_CALIB_POSITION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 344usize, + concat!("Size of: ", stringify!(tagNET_DVR_BV_CALIB_POSITION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BV_CALIB_POSITION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_POSITION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInitialPos) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_POSITION), + "::", + stringify!(struInitialPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAdjustPos) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_POSITION), + "::", + stringify!(struAdjustPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_POSITION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BV_CALIB_POSITION = tagNET_DVR_BV_CALIB_POSITION; +pub type LPNET_DVR_BV_CALIB_POSITION = *mut tagNET_DVR_BV_CALIB_POSITION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HUMAN_CALIB_CFG { + pub dwSize: DWORD, + pub struLeftPos: NET_VCA_POINT, + pub struRightPos: NET_VCA_POINT, + pub byRes: [BYTE; 300usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HUMAN_CALIB_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 320usize, + concat!("Size of: ", stringify!(tagNET_DVR_HUMAN_CALIB_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HUMAN_CALIB_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HUMAN_CALIB_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLeftPos) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HUMAN_CALIB_CFG), + "::", + stringify!(struLeftPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRightPos) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HUMAN_CALIB_CFG), + "::", + stringify!(struRightPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HUMAN_CALIB_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_HUMAN_CALIB_CFG = tagNET_DVR_HUMAN_CALIB_CFG; +pub type LPNET_DVR_HUMAN_CALIB_CFG = *mut tagNET_DVR_HUMAN_CALIB_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CALIB_PARAM { + pub struPtzInfo: NET_PTZ_INFO, + pub struCalibCoordinates: NET_VCA_POINT, + pub iHorValue: ::std::os::raw::c_int, + pub iVerValue: ::std::os::raw::c_int, + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CALIB_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_CALIB_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CALIB_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPtzInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALIB_PARAM), + "::", + stringify!(struPtzInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCalibCoordinates) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALIB_PARAM), + "::", + stringify!(struCalibCoordinates) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iHorValue) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALIB_PARAM), + "::", + stringify!(iHorValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iVerValue) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALIB_PARAM), + "::", + stringify!(iVerValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALIB_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CALIB_PARAM = tagNET_DVR_CALIB_PARAM; +pub type LPNET_DVR_CALIB_PARAM = *mut tagNET_DVR_CALIB_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SLAVECAMERA_CALIB_CFG { + pub dwSize: DWORD, + pub byCalibMode: BYTE, + pub byRes: [BYTE; 3usize], + pub struCalibParam: [NET_DVR_CALIB_PARAM; 6usize], + pub byRes1: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SLAVECAMERA_CALIB_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 336usize, + concat!("Size of: ", stringify!(tagNET_DVR_SLAVECAMERA_CALIB_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SLAVECAMERA_CALIB_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CALIB_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCalibMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CALIB_CFG), + "::", + stringify!(byCalibMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CALIB_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCalibParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CALIB_CFG), + "::", + stringify!(struCalibParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CALIB_CFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_SLAVECAMERA_CALIB_CFG = tagNET_DVR_SLAVECAMERA_CALIB_CFG; +pub type LPNET_DVR_SLAVECAMERA_CALIB_CFG = *mut tagNET_DVR_SLAVECAMERA_CALIB_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRACKING { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byMode: BYTE, + pub wTrackingTime: WORD, + pub struRegion: NET_VCA_POLYGON, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRACKING() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 156usize, + concat!("Size of: ", stringify!(tagNET_DVR_TRACKING)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TRACKING)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACKING), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACKING), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACKING), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTrackingTime) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACKING), + "::", + stringify!(wTrackingTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACKING), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACKING), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TRACKING = tagNET_DVR_TRACKING; +pub type LPNET_DVR_TRACKING = *mut tagNET_DVR_TRACKING; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SLAVECAMERA_CALIB_V50 { + pub dwSize: DWORD, + pub byCalibMode: BYTE, + pub byRes: [BYTE; 3usize], + pub struCalibParam: [NET_DVR_CALIB_PARAM; 20usize], + pub byRes1: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SLAVECAMERA_CALIB_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 952usize, + concat!("Size of: ", stringify!(tagNET_DVR_SLAVECAMERA_CALIB_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SLAVECAMERA_CALIB_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CALIB_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCalibMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CALIB_V50), + "::", + stringify!(byCalibMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CALIB_V50), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCalibParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CALIB_V50), + "::", + stringify!(struCalibParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 888usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CALIB_V50), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_SLAVECAMERA_CALIB_V50 = tagNET_DVR_SLAVECAMERA_CALIB_V50; +pub type LPNET_DVR_SLAVECAMERA_CALIB_V50 = *mut tagNET_DVR_SLAVECAMERA_CALIB_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SLAVECAMERA_CALIB_V51 { + pub dwSize: DWORD, + pub byCalibMode: BYTE, + pub byRes: [BYTE; 3usize], + pub struCalibParam: [NET_DVR_CALIB_PARAM; 20usize], + pub byRes1: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SLAVECAMERA_CALIB_V51() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1400usize, + concat!("Size of: ", stringify!(tagNET_DVR_SLAVECAMERA_CALIB_V51)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SLAVECAMERA_CALIB_V51) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CALIB_V51), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCalibMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CALIB_V51), + "::", + stringify!(byCalibMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CALIB_V51), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCalibParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CALIB_V51), + "::", + stringify!(struCalibParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 888usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SLAVECAMERA_CALIB_V51), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_SLAVECAMERA_CALIB_V51 = tagNET_DVR_SLAVECAMERA_CALIB_V51; +pub type LPNET_DVR_SLAVECAMERA_CALIB_V51 = *mut tagNET_DVR_SLAVECAMERA_CALIB_V51; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CAPTURE_PICTURE_RESULT { + pub dwSize: DWORD, + pub dwReturnPicSize: DWORD, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CAPTURE_PICTURE_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_DVR_CAPTURE_PICTURE_RESULT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_CAPTURE_PICTURE_RESULT) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_PICTURE_RESULT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwReturnPicSize) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_PICTURE_RESULT), + "::", + stringify!(dwReturnPicSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_PICTURE_RESULT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CAPTURE_PICTURE_RESULT = tagNET_DVR_CAPTURE_PICTURE_RESULT; +pub type LPNET_DVR_CAPTURE_PICTURE_RESULT = *mut tagNET_DVR_CAPTURE_PICTURE_RESULT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GOTOSCENE_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub dwSceneID: DWORD, + pub byRes: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GOTOSCENE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 524usize, + concat!("Size of: ", stringify!(tagNET_DVR_GOTOSCENE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GOTOSCENE_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GOTOSCENE_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GOTOSCENE_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSceneID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GOTOSCENE_COND), + "::", + stringify!(dwSceneID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GOTOSCENE_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GOTOSCENE_COND = tagNET_DVR_GOTOSCENE_COND; +pub type LPNET_DVR_GOTOSCENE_COND = *mut tagNET_DVR_GOTOSCENE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRACK_INITPOSTION { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byID: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRACK_INITPOSTION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_TRACK_INITPOSTION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TRACK_INITPOSTION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_INITPOSTION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_INITPOSTION), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_INITPOSTION), + "::", + stringify!(byID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_INITPOSTION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TRACK_INITPOSTION = tagNET_DVR_TRACK_INITPOSTION; +pub type LPNET_DVR_TRACK_INITPOSTION = *mut tagNET_DVR_TRACK_INITPOSTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MANUAL_TRACKRATIO { + pub dwSize: DWORD, + pub byCoefficient: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MANUAL_TRACKRATIO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_MANUAL_TRACKRATIO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MANUAL_TRACKRATIO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANUAL_TRACKRATIO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCoefficient) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANUAL_TRACKRATIO), + "::", + stringify!(byCoefficient) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANUAL_TRACKRATIO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MANUAL_TRACKRATIO = tagNET_DVR_MANUAL_TRACKRATIO; +pub type LPNET_DVR_MANUAL_TRACKRATIO = *mut tagNET_DVR_MANUAL_TRACKRATIO; +#[doc = "ipc/d5.3.0"] +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_IVMS_ONE_RULE_ { + pub byActive: BYTE, + pub byRes1: [BYTE; 7usize], + pub byRuleName: [BYTE; 32usize], + pub dwEventType: VCA_EVENT_TYPE, + pub uEventParam: NET_VCA_EVENT_UNION, + pub struSizeFilter: NET_VCA_SIZE_FILTER, + pub byRes2: [BYTE; 68usize], +} +#[test] +fn bindgen_test_layout_tagNET_IVMS_ONE_RULE_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 240usize, + concat!("Size of: ", stringify!(tagNET_IVMS_ONE_RULE_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_IVMS_ONE_RULE_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byActive) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_ONE_RULE_), + "::", + stringify!(byActive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_ONE_RULE_), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_ONE_RULE_), + "::", + stringify!(byRuleName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEventType) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_ONE_RULE_), + "::", + stringify!(dwEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uEventParam) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_ONE_RULE_), + "::", + stringify!(uEventParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSizeFilter) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_ONE_RULE_), + "::", + stringify!(struSizeFilter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_ONE_RULE_), + "::", + stringify!(byRes2) + ) + ); +} +#[doc = "ipc/d5.3.0"] +pub type NET_IVMS_ONE_RULE = tagNET_IVMS_ONE_RULE_; +#[doc = "ipc/d5.3.0"] +pub type LPNET_IVMS_ONE_RULE = *mut tagNET_IVMS_ONE_RULE_; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_IVMS_RULECFG { + pub struRule: [NET_IVMS_ONE_RULE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_IVMS_RULECFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1920usize, + concat!("Size of: ", stringify!(tagNET_IVMS_RULECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_IVMS_RULECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRule) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_RULECFG), + "::", + stringify!(struRule) + ) + ); +} +pub type NET_IVMS_RULECFG = tagNET_IVMS_RULECFG; +pub type LPNET_IVMS_RULECFG = *mut tagNET_IVMS_RULECFG; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_IVMS_BEHAVIORCFG { + pub dwSize: DWORD, + pub byPicProType: BYTE, + pub byRes: [BYTE; 3usize], + pub struPicParam: NET_DVR_JPEGPARA, + pub struRuleCfg: [[NET_IVMS_RULECFG; 4usize]; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_IVMS_BEHAVIORCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 53772usize, + concat!("Size of: ", stringify!(tagNET_IVMS_BEHAVIORCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_IVMS_BEHAVIORCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_BEHAVIORCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicProType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_BEHAVIORCFG), + "::", + stringify!(byPicProType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_BEHAVIORCFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPicParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_BEHAVIORCFG), + "::", + stringify!(struPicParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRuleCfg) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_BEHAVIORCFG), + "::", + stringify!(struRuleCfg) + ) + ); +} +pub type NET_IVMS_BEHAVIORCFG = tagNET_IVMS_BEHAVIORCFG; +pub type LPNET_IVMS_BEHAVIORCFG = *mut tagNET_IVMS_BEHAVIORCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_IVMS_DEVSCHED { + pub struTime: NET_DVR_SCHEDTIME, + pub struPUStream: NET_DVR_PU_STREAM_CFG, +} +#[test] +fn bindgen_test_layout_tagNET_IVMS_DEVSCHED() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 496usize, + concat!("Size of: ", stringify!(tagNET_IVMS_DEVSCHED)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_IVMS_DEVSCHED)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_DEVSCHED), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPUStream) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_DEVSCHED), + "::", + stringify!(struPUStream) + ) + ); +} +pub type NET_IVMS_DEVSCHED = tagNET_IVMS_DEVSCHED; +pub type LPNET_IVMS_DEVSCHED = *mut tagNET_IVMS_DEVSCHED; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_IVMS_STREAMCFG { + pub dwSize: DWORD, + pub struDevSched: [[NET_IVMS_DEVSCHED; 4usize]; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_IVMS_STREAMCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 13892usize, + concat!("Size of: ", stringify!(tagNET_IVMS_STREAMCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_IVMS_STREAMCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_STREAMCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevSched) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_STREAMCFG), + "::", + stringify!(struDevSched) + ) + ); +} +pub type NET_IVMS_STREAMCFG = tagNET_IVMS_STREAMCFG; +pub type LPNET_IVMS_STREAMCFG = *mut tagNET_IVMS_STREAMCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_MASK_REGION { + pub byEnable: BYTE, + pub byRes: [BYTE; 3usize], + pub struPolygon: NET_VCA_POLYGON, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_MASK_REGION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(tagNET_VCA_MASK_REGION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_MASK_REGION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_MASK_REGION), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_MASK_REGION), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPolygon) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_MASK_REGION), + "::", + stringify!(struPolygon) + ) + ); +} +pub type NET_VCA_MASK_REGION = tagNET_VCA_MASK_REGION; +pub type LPNET_VCA_MASK_REGION = *mut tagNET_VCA_MASK_REGION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_MASK_REGION_LIST { + pub dwSize: DWORD, + pub byRes: [BYTE; 4usize], + pub struMask: [NET_VCA_MASK_REGION; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_MASK_REGION_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 360usize, + concat!("Size of: ", stringify!(tagNET_VCA_MASK_REGION_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_MASK_REGION_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_MASK_REGION_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_MASK_REGION_LIST), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMask) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_MASK_REGION_LIST), + "::", + stringify!(struMask) + ) + ); +} +pub type NET_VCA_MASK_REGION_LIST = tagNET_VCA_MASK_REGION_LIST; +pub type LPNET_VCA_MASK_REGION_LIST = *mut tagNET_VCA_MASK_REGION_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_ENTER_REGION { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub struPolygon: NET_VCA_POLYGON, + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_ENTER_REGION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 108usize, + concat!("Size of: ", stringify!(tagNET_VCA_ENTER_REGION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_ENTER_REGION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ENTER_REGION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ENTER_REGION), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ENTER_REGION), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPolygon) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ENTER_REGION), + "::", + stringify!(struPolygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ENTER_REGION), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_VCA_ENTER_REGION = tagNET_VCA_ENTER_REGION; +pub type LPNET_VCA_ENTER_REGION = *mut tagNET_VCA_ENTER_REGION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_IVMS_MASK_REGION_LIST { + pub dwSize: DWORD, + pub struList: [[NET_VCA_MASK_REGION_LIST; 4usize]; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_IVMS_MASK_REGION_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 10084usize, + concat!("Size of: ", stringify!(tagNET_IVMS_MASK_REGION_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_IVMS_MASK_REGION_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_MASK_REGION_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struList) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_MASK_REGION_LIST), + "::", + stringify!(struList) + ) + ); +} +pub type NET_IVMS_MASK_REGION_LIST = tagNET_IVMS_MASK_REGION_LIST; +pub type LPNET_IVMS_MASK_REGION_LIST = *mut tagNET_IVMS_MASK_REGION_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_IVMS_ENTER_REGION { + pub dwSize: DWORD, + pub struEnter: [[NET_VCA_ENTER_REGION; 4usize]; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_IVMS_ENTER_REGION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 3028usize, + concat!("Size of: ", stringify!(tagNET_IVMS_ENTER_REGION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_IVMS_ENTER_REGION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_ENTER_REGION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEnter) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_ENTER_REGION), + "::", + stringify!(struEnter) + ) + ); +} +pub type NET_IVMS_ENTER_REGION = tagNET_IVMS_ENTER_REGION; +pub type LPNET_IVMS_ENTER_REGION = *mut tagNET_IVMS_ENTER_REGION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_IVMS_ALARM_JPEG { + pub byPicProType: BYTE, + pub byRes: [BYTE; 3usize], + pub struPicParam: NET_DVR_JPEGPARA, +} +#[test] +fn bindgen_test_layout_tagNET_IVMS_ALARM_JPEG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_IVMS_ALARM_JPEG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_IVMS_ALARM_JPEG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicProType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_ALARM_JPEG), + "::", + stringify!(byPicProType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_ALARM_JPEG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPicParam) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_ALARM_JPEG), + "::", + stringify!(struPicParam) + ) + ); +} +pub type NET_IVMS_ALARM_JPEG = tagNET_IVMS_ALARM_JPEG; +pub type LPNET_IVMS_ALARM_JPEG = *mut tagNET_IVMS_ALARM_JPEG; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_IVMS_SEARCHCFG { + pub dwSize: DWORD, + pub struRemotePlay: NET_DVR_MATRIX_DEC_REMOTE_PLAY, + pub struAlarmJpeg: NET_IVMS_ALARM_JPEG, + pub struRuleCfg: NET_IVMS_RULECFG, +} +#[test] +fn bindgen_test_layout_tagNET_IVMS_SEARCHCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2184usize, + concat!("Size of: ", stringify!(tagNET_IVMS_SEARCHCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_IVMS_SEARCHCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_SEARCHCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRemotePlay) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_SEARCHCFG), + "::", + stringify!(struRemotePlay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmJpeg) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_SEARCHCFG), + "::", + stringify!(struAlarmJpeg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRuleCfg) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IVMS_SEARCHCFG), + "::", + stringify!(struRuleCfg) + ) + ); +} +pub type NET_IVMS_SEARCHCFG = tagNET_IVMS_SEARCHCFG; +pub type LPNET_IVMS_SEARCHCFG = *mut tagNET_IVMS_SEARCHCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRACK_CALIBRATION_PARAM_V41 { + pub byPointNum: BYTE, + pub byRes: [BYTE; 3usize], + pub struCBPoint: [NET_DVR_CB_POINT; 6usize], + pub struHorizonPtzPos: NET_DVR_PTZPOS, + pub byRes2: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRACK_CALIBRATION_PARAM_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 412usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_TRACK_CALIBRATION_PARAM_V41) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_TRACK_CALIBRATION_PARAM_V41) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPointNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_CALIBRATION_PARAM_V41), + "::", + stringify!(byPointNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_CALIBRATION_PARAM_V41), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCBPoint) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_CALIBRATION_PARAM_V41), + "::", + stringify!(struCBPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHorizonPtzPos) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_CALIBRATION_PARAM_V41), + "::", + stringify!(struHorizonPtzPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_CALIBRATION_PARAM_V41), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_TRACK_CALIBRATION_PARAM_V41 = tagNET_DVR_TRACK_CALIBRATION_PARAM_V41; +pub type LPNET_DVR_TRACK_CALIBRATION_PARAM_V41 = *mut tagNET_DVR_TRACK_CALIBRATION_PARAM_V41; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRACK_DEV_PARAM_ { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byTransMode: BYTE, + pub byRes1: [BYTE; 2usize], + pub struTrackDevChan: NET_DVR_CHANNEL, + pub struCalParam: NET_DVR_TRACK_CALIBRATION_PARAM_V41, + pub byRes2: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRACK_DEV_PARAM_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 828usize, + concat!("Size of: ", stringify!(tagNET_DVR_TRACK_DEV_PARAM_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TRACK_DEV_PARAM_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_DEV_PARAM_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_DEV_PARAM_), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_DEV_PARAM_), + "::", + stringify!(byTransMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_DEV_PARAM_), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTrackDevChan) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_DEV_PARAM_), + "::", + stringify!(struTrackDevChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCalParam) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_DEV_PARAM_), + "::", + stringify!(struCalParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 572usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_DEV_PARAM_), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_TRACK_DEV_PARAM = tagNET_DVR_TRACK_DEV_PARAM_; +pub type LPNET_DVR_TRACK_DEV_PARAM = *mut tagNET_DVR_TRACK_DEV_PARAM_; +#[doc = "end"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IDENTIFICATION_PARAM { + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub byRes1: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IDENTIFICATION_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 52usize, + concat!("Size of: ", stringify!(tagNET_DVR_IDENTIFICATION_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IDENTIFICATION_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IDENTIFICATION_PARAM), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IDENTIFICATION_PARAM), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IDENTIFICATION_PARAM), + "::", + stringify!(byRes1) + ) + ); +} +#[doc = "end"] +pub type NET_DVR_IDENTIFICATION_PARAM = tagNET_DVR_IDENTIFICATION_PARAM; +#[doc = "end"] +pub type LPNET_DVR_IDENTIFICATION_PARAM = *mut tagNET_DVR_IDENTIFICATION_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_MOUNT_PARAM_UNION { + pub uLen: [BYTE; 52usize], + pub struIdentificationParam: NET_DVR_IDENTIFICATION_PARAM, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MOUNT_PARAM_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 52usize, + concat!("Size of: ", stringify!(tagNET_DVR_MOUNT_PARAM_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MOUNT_PARAM_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOUNT_PARAM_UNION), + "::", + stringify!(uLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIdentificationParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOUNT_PARAM_UNION), + "::", + stringify!(struIdentificationParam) + ) + ); +} +pub type NET_DVR_MOUNT_PARAM_UNION = tagNET_DVR_MOUNT_PARAM_UNION; +pub type LPNET_DVR_MOUNT_PARAM_UNION = *mut tagNET_DVR_MOUNT_PARAM_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_NAS_MOUNT_PARAM { + pub byMountType: BYTE, + pub byRes: [BYTE; 3usize], + pub uMountParam: NET_DVR_MOUNT_PARAM_UNION, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NAS_MOUNT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_NAS_MOUNT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NAS_MOUNT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMountType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAS_MOUNT_PARAM), + "::", + stringify!(byMountType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAS_MOUNT_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uMountParam) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAS_MOUNT_PARAM), + "::", + stringify!(uMountParam) + ) + ); +} +pub type NET_DVR_NAS_MOUNT_PARAM = tagNET_DVR_NAS_MOUNT_PARAM; +pub type LPNET_DVR_NAS_MOUNT_PARAM = *mut tagNET_DVR_NAS_MOUNT_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_MOUNTMETHOD_PARAM_UNION { + pub uLen: [BYTE; 56usize], + pub struNasMountParam: NET_DVR_NAS_MOUNT_PARAM, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MOUNTMETHOD_PARAM_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_MOUNTMETHOD_PARAM_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MOUNTMETHOD_PARAM_UNION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOUNTMETHOD_PARAM_UNION), + "::", + stringify!(uLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNasMountParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOUNTMETHOD_PARAM_UNION), + "::", + stringify!(struNasMountParam) + ) + ); +} +pub type NET_DVR_MOUNTMETHOD_PARAM_UNION = tagNET_DVR_MOUNTMETHOD_PARAM_UNION; +pub type LPNET_DVR_MOUNTMETHOD_PARAM_UNION = *mut tagNET_DVR_MOUNTMETHOD_PARAM_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SINGLE_NET_DISK_INFO { + pub byNetDiskType: BYTE, + pub byRes1: [BYTE; 3usize], + pub struNetDiskAddr: NET_DVR_IPADDR, + pub sDirectory: [BYTE; 128usize], + pub wPort: WORD, + pub byRes2: [BYTE; 2usize], + pub uMountMethodParam: NET_DVR_MOUNTMETHOD_PARAM_UNION, + pub byRes3: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SINGLE_NET_DISK_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 344usize, + concat!("Size of: ", stringify!(tagNET_DVR_SINGLE_NET_DISK_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SINGLE_NET_DISK_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetDiskType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_NET_DISK_INFO), + "::", + stringify!(byNetDiskType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_NET_DISK_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNetDiskAddr) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_NET_DISK_INFO), + "::", + stringify!(struNetDiskAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDirectory) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_NET_DISK_INFO), + "::", + stringify!(sDirectory) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 276usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_NET_DISK_INFO), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 278usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_NET_DISK_INFO), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uMountMethodParam) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_NET_DISK_INFO), + "::", + stringify!(uMountMethodParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 336usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_NET_DISK_INFO), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_SINGLE_NET_DISK_INFO = tagNET_DVR_SINGLE_NET_DISK_INFO; +pub type LPNET_DVR_SINGLE_NET_DISK_INFO = *mut tagNET_DVR_SINGLE_NET_DISK_INFO; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_NET_DISKCFG { + pub dwSize: DWORD, + pub struNetDiskParam: [NET_DVR_SINGLE_NET_DISK_INFO; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NET_DISKCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 5508usize, + concat!("Size of: ", stringify!(tagNET_DVR_NET_DISKCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NET_DISKCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NET_DISKCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNetDiskParam) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NET_DISKCFG), + "::", + stringify!(struNetDiskParam) + ) + ); +} +pub type NET_DVR_NET_DISKCFG = tagNET_DVR_NET_DISKCFG; +pub type LPNET_DVR_NET_DISKCFG = *mut tagNET_DVR_NET_DISKCFG; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SINGLE_NET_DISK_INFO_V40 { + pub byNetDiskType: BYTE, + pub byRes1: [BYTE; 3usize], + pub sDirectory: [BYTE; 128usize], + pub byDevAddr: [BYTE; 64usize], + pub wPort: WORD, + pub byRes2: [BYTE; 2usize], + pub uMountMethodParam: NET_DVR_MOUNTMETHOD_PARAM_UNION, + pub byRes4: [BYTE; 80usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SINGLE_NET_DISK_INFO_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 336usize, + concat!("Size of: ", stringify!(tagNET_DVR_SINGLE_NET_DISK_INFO_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SINGLE_NET_DISK_INFO_V40) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetDiskType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_NET_DISK_INFO_V40), + "::", + stringify!(byNetDiskType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_NET_DISK_INFO_V40), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDirectory) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_NET_DISK_INFO_V40), + "::", + stringify!(sDirectory) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevAddr) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_NET_DISK_INFO_V40), + "::", + stringify!(byDevAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_NET_DISK_INFO_V40), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 198usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_NET_DISK_INFO_V40), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uMountMethodParam) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_NET_DISK_INFO_V40), + "::", + stringify!(uMountMethodParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes4) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_NET_DISK_INFO_V40), + "::", + stringify!(byRes4) + ) + ); +} +pub type NET_DVR_SINGLE_NET_DISK_INFO_V40 = tagNET_DVR_SINGLE_NET_DISK_INFO_V40; +pub type LPNET_DVR_SINGLE_NET_DISK_INFO_V40 = *mut tagNET_DVR_SINGLE_NET_DISK_INFO_V40; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_NET_DISKCFG_V40 { + pub dwSize: DWORD, + pub struNetDiskParam: [NET_DVR_SINGLE_NET_DISK_INFO_V40; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NET_DISKCFG_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 5380usize, + concat!("Size of: ", stringify!(tagNET_DVR_NET_DISKCFG_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NET_DISKCFG_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NET_DISKCFG_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNetDiskParam) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NET_DISKCFG_V40), + "::", + stringify!(struNetDiskParam) + ) + ); +} +pub type NET_DVR_NET_DISKCFG_V40 = tagNET_DVR_NET_DISKCFG_V40; +pub type LPNET_DVR_NET_DISKCFG_V40 = *mut tagNET_DVR_NET_DISKCFG_V40; +pub const _MAIN_EVENT_TYPE__EVENT_MOT_DET: _MAIN_EVENT_TYPE_ = 0; +pub const _MAIN_EVENT_TYPE__EVENT_ALARM_IN: _MAIN_EVENT_TYPE_ = 1; +pub const _MAIN_EVENT_TYPE__EVENT_VCA_BEHAVIOR: _MAIN_EVENT_TYPE_ = 2; +pub const _MAIN_EVENT_TYPE__EVENT_INQUEST: _MAIN_EVENT_TYPE_ = 3; +pub const _MAIN_EVENT_TYPE__EVENT_VCA_DETECTION: _MAIN_EVENT_TYPE_ = 4; +pub const _MAIN_EVENT_TYPE__EVENT_POS: _MAIN_EVENT_TYPE_ = 5; +pub const _MAIN_EVENT_TYPE__EVENT_TRIAL_CASE: _MAIN_EVENT_TYPE_ = 6; +pub const _MAIN_EVENT_TYPE__EVENT_ACS_CASE: _MAIN_EVENT_TYPE_ = 7; +pub const _MAIN_EVENT_TYPE__EVENT_IOT_CASE: _MAIN_EVENT_TYPE_ = 8; +pub const _MAIN_EVENT_TYPE__EVENT_STREAM_INFO: _MAIN_EVENT_TYPE_ = 100; +pub type _MAIN_EVENT_TYPE_ = ::std::os::raw::c_uint; +pub use self::_MAIN_EVENT_TYPE_ as MAIN_EVENT_TYPE; +pub const _VCA_DETECTION_MINOR_TYPE__EVENT_VCA_TRAVERSE_PLANE: _VCA_DETECTION_MINOR_TYPE_ = 1; +pub const _VCA_DETECTION_MINOR_TYPE__EVENT_FIELD_DETECTION: _VCA_DETECTION_MINOR_TYPE_ = 2; +pub const _VCA_DETECTION_MINOR_TYPE__EVENT_AUDIO_INPUT_ALARM: _VCA_DETECTION_MINOR_TYPE_ = 3; +pub const _VCA_DETECTION_MINOR_TYPE__EVENT_SOUND_INTENSITY_ALARM: _VCA_DETECTION_MINOR_TYPE_ = 4; +pub const _VCA_DETECTION_MINOR_TYPE__EVENT_FACE_DETECTION: _VCA_DETECTION_MINOR_TYPE_ = 5; +pub const _VCA_DETECTION_MINOR_TYPE__EVENT_VIRTUAL_FOCUS_ALARM: _VCA_DETECTION_MINOR_TYPE_ = 6; +pub const _VCA_DETECTION_MINOR_TYPE__EVENT_SCENE_CHANGE_ALARM: _VCA_DETECTION_MINOR_TYPE_ = 7; +pub const _VCA_DETECTION_MINOR_TYPE__EVENT_PIR_ALARM: _VCA_DETECTION_MINOR_TYPE_ = 8; +pub const _VCA_DETECTION_MINOR_TYPE__EVENT_ENTER_REGION: _VCA_DETECTION_MINOR_TYPE_ = 9; +pub const _VCA_DETECTION_MINOR_TYPE__EVENT_EXIT_REGION: _VCA_DETECTION_MINOR_TYPE_ = 10; +pub const _VCA_DETECTION_MINOR_TYPE__EVENT_LOITERING: _VCA_DETECTION_MINOR_TYPE_ = 11; +pub const _VCA_DETECTION_MINOR_TYPE__EVENT_GROUPDETECTION: _VCA_DETECTION_MINOR_TYPE_ = 12; +pub const _VCA_DETECTION_MINOR_TYPE__EVENT_RAPIDMOVE: _VCA_DETECTION_MINOR_TYPE_ = 13; +pub const _VCA_DETECTION_MINOR_TYPE__EVENT_PARK: _VCA_DETECTION_MINOR_TYPE_ = 14; +pub const _VCA_DETECTION_MINOR_TYPE__EVENT_UNATTENDED_BAGGAGE: _VCA_DETECTION_MINOR_TYPE_ = 15; +pub const _VCA_DETECTION_MINOR_TYPE__EVENT_ATTENDEDBAGGAGE: _VCA_DETECTION_MINOR_TYPE_ = 16; +pub const _VCA_DETECTION_MINOR_TYPE__EVENT_VEHICLE_DETECTION: _VCA_DETECTION_MINOR_TYPE_ = 17; +pub const _VCA_DETECTION_MINOR_TYPE__EVENT_ALL: _VCA_DETECTION_MINOR_TYPE_ = 4294967295; +pub type _VCA_DETECTION_MINOR_TYPE_ = ::std::os::raw::c_uint; +pub use self::_VCA_DETECTION_MINOR_TYPE_ as VCA_DETECTION_MINOR_TYPE; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_TRAVERSE_PLANE: _BEHAVIOR_MINOR_TYPE_ = 0; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_ENTER_AREA: _BEHAVIOR_MINOR_TYPE_ = 1; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_EXIT_AREA: _BEHAVIOR_MINOR_TYPE_ = 2; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_INTRUSION: _BEHAVIOR_MINOR_TYPE_ = 3; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_LOITER: _BEHAVIOR_MINOR_TYPE_ = 4; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_LEFT_TAKE: _BEHAVIOR_MINOR_TYPE_ = 5; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_PARKING: _BEHAVIOR_MINOR_TYPE_ = 6; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_RUN: _BEHAVIOR_MINOR_TYPE_ = 7; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_HIGH_DENSITY: _BEHAVIOR_MINOR_TYPE_ = 8; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_STICK_UP: _BEHAVIOR_MINOR_TYPE_ = 9; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_INSTALL_SCANNER: _BEHAVIOR_MINOR_TYPE_ = 10; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_OPERATE_OVER_TIME: _BEHAVIOR_MINOR_TYPE_ = 11; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_FACE_DETECT: _BEHAVIOR_MINOR_TYPE_ = 12; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_LEFT: _BEHAVIOR_MINOR_TYPE_ = 13; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_TAKE: _BEHAVIOR_MINOR_TYPE_ = 14; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_LEAVE_POSITION: _BEHAVIOR_MINOR_TYPE_ = 15; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_TRAIL_INFO: _BEHAVIOR_MINOR_TYPE_ = 16; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_HUMAN_ENTER: _BEHAVIOR_MINOR_TYPE_ = 18; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_FALL_DOWN_INFO: _BEHAVIOR_MINOR_TYPE_ = 19; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_OBJECT_PASTE: _BEHAVIOR_MINOR_TYPE_ = 20; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_FACE_CAPTURE_INFO: _BEHAVIOR_MINOR_TYPE_ = 21; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_MULTI_FACES_INFO: _BEHAVIOR_MINOR_TYPE_ = 22; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_AUDIO_ABNORMAL_INFO: _BEHAVIOR_MINOR_TYPE_ = 23; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_SUNGLASSES_FACE_INFO: _BEHAVIOR_MINOR_TYPE_ = 25; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_CALLING_FACE_INFO: _BEHAVIOR_MINOR_TYPE_ = 26; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_VIOLENT_MOTION: _BEHAVIOR_MINOR_TYPE_ = 27; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_SAFETY_HELMET: _BEHAVIOR_MINOR_TYPE_ = 28; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_PEOPLE_NUM_CHANGE: _BEHAVIOR_MINOR_TYPE_ = 29; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_GET_UP: _BEHAVIOR_MINOR_TYPE_ = 30; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_ADV_REACH_HEIGHT: _BEHAVIOR_MINOR_TYPE_ = 31; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_STOOD_UP: _BEHAVIOR_MINOR_TYPE_ = 32; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_PERSON_DENSITY: _BEHAVIOR_MINOR_TYPE_ = 33; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_MANUAL_ALARM: _BEHAVIOR_MINOR_TYPE_ = 34; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_VIOLATION_HIGH_SPEED: _BEHAVIOR_MINOR_TYPE_ = 35; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_GSENSOR: _BEHAVIOR_MINOR_TYPE_ = 36; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_SENSOR_IN: _BEHAVIOR_MINOR_TYPE_ = 37; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_VCA_DBD: _BEHAVIOR_MINOR_TYPE_ = 38; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_VCA_ABS: _BEHAVIOR_MINOR_TYPE_ = 39; +pub const _BEHAVIOR_MINOR_TYPE__EVENT_TOILET_TARRY: _BEHAVIOR_MINOR_TYPE_ = 40; +pub type _BEHAVIOR_MINOR_TYPE_ = ::std::os::raw::c_uint; +pub use self::_BEHAVIOR_MINOR_TYPE_ as BEHAVIOR_MINOR_TYPE; +pub const _TRIAL_CASE_MINOR_TYPE__TRIAL_START_INFO: _TRIAL_CASE_MINOR_TYPE_ = 4097; +pub const _TRIAL_CASE_MINOR_TYPE__TRIAL_STOP_INFO: _TRIAL_CASE_MINOR_TYPE_ = 4098; +pub const _TRIAL_CASE_MINOR_TYPE__TRIAL_TAG_INFO: _TRIAL_CASE_MINOR_TYPE_ = 4099; +pub const _TRIAL_CASE_MINOR_TYPE__TRIAL_SEGMENT_INFO: _TRIAL_CASE_MINOR_TYPE_ = 4100; +pub const _TRIAL_CASE_MINOR_TYPE__TRIAL_JUDGE_CASE_INFO: _TRIAL_CASE_MINOR_TYPE_ = 4101; +pub type _TRIAL_CASE_MINOR_TYPE_ = ::std::os::raw::c_uint; +pub use self::_TRIAL_CASE_MINOR_TYPE_ as TRIAL_CASE_MINOR_TYPE; +pub const _STREAM_INFO_MINOR_TYPE__EVENT_STREAM_ID: _STREAM_INFO_MINOR_TYPE_ = 0; +pub const _STREAM_INFO_MINOR_TYPE__EVENT_TIMING: _STREAM_INFO_MINOR_TYPE_ = 1; +pub const _STREAM_INFO_MINOR_TYPE__EVENT_MOTION_DETECT: _STREAM_INFO_MINOR_TYPE_ = 2; +pub const _STREAM_INFO_MINOR_TYPE__EVENT_ALARM: _STREAM_INFO_MINOR_TYPE_ = 3; +pub const _STREAM_INFO_MINOR_TYPE__EVENT_ALARM_OR_MOTION_DETECT: _STREAM_INFO_MINOR_TYPE_ = 4; +pub const _STREAM_INFO_MINOR_TYPE__EVENT_ALARM_AND_MOTION_DETECT: _STREAM_INFO_MINOR_TYPE_ = 5; +pub const _STREAM_INFO_MINOR_TYPE__EVENT_COMMAND_TRIGGER: _STREAM_INFO_MINOR_TYPE_ = 6; +pub const _STREAM_INFO_MINOR_TYPE__EVENT_MANNUAL: _STREAM_INFO_MINOR_TYPE_ = 7; +pub const _STREAM_INFO_MINOR_TYPE__EVENT_BACKUP_VOLUME: _STREAM_INFO_MINOR_TYPE_ = 8; +pub const _STREAM_INFO_MINOR_TYPE__STREAM_EVENT_SEMAPHORE: _STREAM_INFO_MINOR_TYPE_ = 9; +pub const _STREAM_INFO_MINOR_TYPE__STREAM_EVENT_HIDE: _STREAM_INFO_MINOR_TYPE_ = 10; +pub const _STREAM_INFO_MINOR_TYPE__STREAM_EVENT_INVERSE: _STREAM_INFO_MINOR_TYPE_ = 11; +pub const _STREAM_INFO_MINOR_TYPE__STREAM_EVENT_VIDEO_LOST: _STREAM_INFO_MINOR_TYPE_ = 12; +pub const _STREAM_INFO_MINOR_TYPE__STREAM_EVENT_WIRELESS_ALARM: _STREAM_INFO_MINOR_TYPE_ = 13; +pub const _STREAM_INFO_MINOR_TYPE__STREAM_EVENT_PIR_ALARM: _STREAM_INFO_MINOR_TYPE_ = 14; +pub const _STREAM_INFO_MINOR_TYPE__STREAM_EVENT_CALLHELP_ALARM: _STREAM_INFO_MINOR_TYPE_ = 15; +pub const _STREAM_INFO_MINOR_TYPE__STREAM_EVENT_FACESNAP: _STREAM_INFO_MINOR_TYPE_ = 16; +pub const _STREAM_INFO_MINOR_TYPE__STREAM_EVENT_FACE_DETECTION: _STREAM_INFO_MINOR_TYPE_ = 17; +pub const _STREAM_INFO_MINOR_TYPE__STREAM_EVENT_ITS_PLATE: _STREAM_INFO_MINOR_TYPE_ = 18; +pub const _STREAM_INFO_MINOR_TYPE__STREAM_EVENT_PDC: _STREAM_INFO_MINOR_TYPE_ = 19; +pub const _STREAM_INFO_MINOR_TYPE__STREAM_EVENT_SCENECHANGE_DETECTION: _STREAM_INFO_MINOR_TYPE_ = + 20; +pub const _STREAM_INFO_MINOR_TYPE__STREAM_EVENT_DEFOCUS_DETECTION: _STREAM_INFO_MINOR_TYPE_ = 21; +pub const _STREAM_INFO_MINOR_TYPE__STREAM_EVENT_AUDIOEXCEPTION: _STREAM_INFO_MINOR_TYPE_ = 22; +pub const _STREAM_INFO_MINOR_TYPE__VCA_EVENT_TRAVERSE_PLANE: _STREAM_INFO_MINOR_TYPE_ = 23; +pub const _STREAM_INFO_MINOR_TYPE__VCA_EVENT_INTRUSION: _STREAM_INFO_MINOR_TYPE_ = 24; +pub const _STREAM_INFO_MINOR_TYPE__VCA_EVENT_ENTER_AREA: _STREAM_INFO_MINOR_TYPE_ = 25; +pub const _STREAM_INFO_MINOR_TYPE__VCA_EVENT_EXIT_AREA: _STREAM_INFO_MINOR_TYPE_ = 26; +pub const _STREAM_INFO_MINOR_TYPE__VCA_EVENT_LOITER: _STREAM_INFO_MINOR_TYPE_ = 27; +pub const _STREAM_INFO_MINOR_TYPE__VCA_EVENT_HIGH_DENSITY: _STREAM_INFO_MINOR_TYPE_ = 28; +pub const _STREAM_INFO_MINOR_TYPE__VCA_EVENT_RUN: _STREAM_INFO_MINOR_TYPE_ = 29; +pub const _STREAM_INFO_MINOR_TYPE__VCA_EVENT_PARKING: _STREAM_INFO_MINOR_TYPE_ = 30; +pub const _STREAM_INFO_MINOR_TYPE__VCA_EVENT_LEFT: _STREAM_INFO_MINOR_TYPE_ = 31; +pub const _STREAM_INFO_MINOR_TYPE__VCA_EVENT_TAKE: _STREAM_INFO_MINOR_TYPE_ = 32; +pub type _STREAM_INFO_MINOR_TYPE_ = ::std::os::raw::c_uint; +pub use self::_STREAM_INFO_MINOR_TYPE_ as STREAM_INFO_MINOR_TYPE; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM { + pub wMajorType: WORD, + pub wMinorType: WORD, + pub struStartTime: NET_DVR_TIME, + pub struEndTime: NET_DVR_TIME, + pub byLockType: BYTE, + pub byValue: BYTE, + pub byRes: [BYTE; 130usize], + pub uSeniorParam: tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1 { + pub byLen: [BYTE; 300usize], + pub struAlarmParam: tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_1, + pub struAlarmParamByValue: tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_2, + pub struMotionParam: tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_3, + pub struMotionParamByValue: tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_4, + pub struVcaParam: tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_5, + pub struVcaParamByValue: tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_6, + pub struInquestParam: tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_7, + pub struVCADetectByBit: tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_8, + pub struVCADetectByValue: tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_9, + pub struStreamIDParam: tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_10, + pub struTrialParam: tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_11, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_1 { + pub byAlarmInNo: [BYTE; 160usize], + pub byRes: [BYTE; 140usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 300usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byAlarmInNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_2 { + pub wAlarmInNo: [WORD; 128usize], + pub byRes: [BYTE; 44usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_2, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 300usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAlarmInNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(wAlarmInNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_3 { + pub byMotDetChanNo: [BYTE; 64usize], + pub byRes: [BYTE; 236usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_3() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_3, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 300usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMotDetChanNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byMotDetChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_4 { + pub wMotDetChanNo: [WORD; 64usize], + pub byRes: [BYTE; 172usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_4() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_4, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 300usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_4) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMotDetChanNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(wMotDetChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_5 { + pub byChanNo: [BYTE; 64usize], + pub byRuleID: BYTE, + pub byRes1: [BYTE; 43usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_5() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_5, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 108usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_5) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_5) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleID) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 65usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byRes1) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_6 { + pub wChanNo: [WORD; 64usize], + pub byRuleID: BYTE, + pub byRes: [BYTE; 171usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_6() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_6, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 300usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_6) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_6) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wChanNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(wChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleID) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 129usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_7 { + pub byRoomIndex: BYTE, + pub byRes1: [BYTE; 3usize], + pub sInquestInfo: [BYTE; 64usize], + pub byRes2: [BYTE; 232usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_7() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_7, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 300usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_7) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_7) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRoomIndex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byRoomIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sInquestInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(sInquestInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byRes2) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_8 { + pub byChan: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_8() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_8, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_8) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChan) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(byChan) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_9 { + pub dwChanNo: [DWORD; 63usize], + pub byAll: BYTE, + pub byres: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_9() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_9, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_9) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_9) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChanNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_9), + "::", + stringify!(dwChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAll) as usize - ptr as usize }, + 252usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_9), + "::", + stringify!(byAll) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byres) as usize - ptr as usize }, + 253usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_9), + "::", + stringify!(byres) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_10 { + pub struIDInfo: NET_DVR_STREAM_INFO, + pub dwCmdType: DWORD, + pub byBackupVolumeNum: BYTE, + pub byRes: [BYTE; 223usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_10() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_10, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 300usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_10) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_10) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIDInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_10), + "::", + stringify!(struIDInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCmdType) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_10), + "::", + stringify!(dwCmdType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBackupVolumeNum) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_10), + "::", + stringify!(byBackupVolumeNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 77usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_10), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_11 { + pub byCaseNo: [BYTE; 56usize], + pub byCaseName: [BYTE; 100usize], + pub byLitigant1: [BYTE; 32usize], + pub byLitigant2: [BYTE; 32usize], + pub byChiefJudge: [BYTE; 32usize], + pub byCaseType: BYTE, + pub byRes: [BYTE; 47usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_11() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_11, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 300usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_11) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_11) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_11), + "::", + stringify!(byCaseNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseName) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_11), + "::", + stringify!(byCaseName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLitigant1) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_11), + "::", + stringify!(byLitigant1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLitigant2) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_11), + "::", + stringify!(byLitigant2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChiefJudge) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_11), + "::", + stringify!(byChiefJudge) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseType) as usize - ptr as usize }, + 252usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_11), + "::", + stringify!(byCaseType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 253usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1__bindgen_ty_11), + "::", + stringify!(byRes) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 300usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1), + "::", + stringify!(byLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1), + "::", + stringify!(struAlarmParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmParamByValue) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1), + "::", + stringify!(struAlarmParamByValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMotionParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1), + "::", + stringify!(struMotionParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMotionParamByValue) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1), + "::", + stringify!(struMotionParamByValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1), + "::", + stringify!(struVcaParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaParamByValue) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1), + "::", + stringify!(struVcaParamByValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInquestParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1), + "::", + stringify!(struInquestParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVCADetectByBit) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1), + "::", + stringify!(struVCADetectByBit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVCADetectByValue) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1), + "::", + stringify!(struVCADetectByValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamIDParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1), + "::", + stringify!(struStreamIDParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTrialParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM__bindgen_ty_1), + "::", + stringify!(struTrialParam) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 484usize, + concat!("Size of: ", stringify!(tagNET_DVR_SEARCH_EVENT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SEARCH_EVENT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMajorType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM), + "::", + stringify!(wMajorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMinorType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM), + "::", + stringify!(wMinorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLockType) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM), + "::", + stringify!(byLockType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValue) as usize - ptr as usize }, + 53usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM), + "::", + stringify!(byValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 54usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uSeniorParam) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM), + "::", + stringify!(uSeniorParam) + ) + ); +} +pub type NET_DVR_SEARCH_EVENT_PARAM = tagNET_DVR_SEARCH_EVENT_PARAM; +pub type LPNET_DVR_SEARCH_EVENT_PARAM = *mut tagNET_DVR_SEARCH_EVENT_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM_V40 { + pub wMajorType: WORD, + pub wMinorType: WORD, + pub struStartTime: NET_DVR_TIME, + pub struEndTime: NET_DVR_TIME, + pub byLockType: BYTE, + pub byQuickSearch: BYTE, + pub byRes: [BYTE; 130usize], + pub uSeniorParam: tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1 { + pub byLen: [BYTE; 800usize], + pub struAlarmParam: tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_1, + pub struMotionParam: tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_2, + pub struVcaParam: tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_3, + pub struInquestParam: tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_4, + pub struVCADetect: tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_5, + pub struStreamIDParam: tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_6, + pub struPosAlarm: tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_7, + pub struTrialParam: tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_8, + pub struACSAlarm: tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_9, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_1 { + pub wAlarmInNo: [WORD; 128usize], + pub byRes: [BYTE; 544usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAlarmInNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(wAlarmInNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_2 { + pub wMotDetChanNo: [WORD; 64usize], + pub byRes: [BYTE; 672usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_2, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMotDetChanNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(wMotDetChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_3 { + pub wChanNo: [WORD; 64usize], + pub byRuleID: BYTE, + pub byDriverBehaviortType: BYTE, + pub byADASType: BYTE, + pub byGSensorType: BYTE, + pub bySensorInType: BYTE, + pub byRes: [BYTE; 667usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_3() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_3, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wChanNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(wChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleID) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDriverBehaviortType) as usize - ptr as usize }, + 129usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byDriverBehaviortType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byADASType) as usize - ptr as usize }, + 130usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byADASType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGSensorType) as usize - ptr as usize }, + 131usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byGSensorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensorInType) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(bySensorInType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 133usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_4 { + pub byRoomIndex: BYTE, + pub byRes: [BYTE; 799usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_4() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_4, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_4) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRoomIndex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(byRoomIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_5 { + pub byAll: BYTE, + pub byRes1: [BYTE; 3usize], + pub wChanNo: [WORD; 64usize], + pub byRes: [BYTE; 668usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_5() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_5, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_5) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_5) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAll) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byAll) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wChanNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(wChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_6 { + pub struIDInfo: NET_DVR_STREAM_INFO, + pub dwCmdType: DWORD, + pub byBackupVolumeNum: BYTE, + pub byRes1: [BYTE; 3usize], + pub byArchiveLabel: [BYTE; 64usize], + pub byRes: [BYTE; 656usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_6() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_6, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_6) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_6) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIDInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(struIDInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCmdType) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(dwCmdType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBackupVolumeNum) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byBackupVolumeNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 77usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byArchiveLabel) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byArchiveLabel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_7 { + pub wChannel: [WORD; 64usize], + pub byAllChan: BYTE, + pub byCaseSensitive: BYTE, + pub byCombinateMode: BYTE, + pub byRes1: BYTE, + pub sKeyWord: [[::std::os::raw::c_char; 128usize]; 3usize], + pub byRes: [BYTE; 284usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_7() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_7, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_7) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_7) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(wChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAllChan) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byAllChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseSensitive) as usize - ptr as usize }, + 129usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byCaseSensitive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCombinateMode) as usize - ptr as usize }, + 130usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byCombinateMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 131usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sKeyWord) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(sKeyWord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 516usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_8 { + pub byCaseNo: [BYTE; 56usize], + pub byCaseName: [BYTE; 100usize], + pub byLitigant1: [BYTE; 32usize], + pub byLitigant2: [BYTE; 32usize], + pub byChiefJudge: [BYTE; 32usize], + pub byCaseType: BYTE, + pub byRes: [BYTE; 47usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_8() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_8, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 300usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_8) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(byCaseNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseName) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(byCaseName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLitigant1) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(byLitigant1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLitigant2) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(byLitigant2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChiefJudge) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(byChiefJudge) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseType) as usize - ptr as usize }, + 252usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(byCaseType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 253usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_9 { + pub dwMajor: DWORD, + pub dwMinor: DWORD, + pub byCardNo: [BYTE; 32usize], + pub byName: [BYTE; 32usize], + pub byMACAddr: [BYTE; 6usize], + pub byRes: [BYTE; 722usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_9() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_9, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_9) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_9) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMajor) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_9), + "::", + stringify!(dwMajor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMinor) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_9), + "::", + stringify!(dwMinor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_9), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_9), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMACAddr) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_9), + "::", + stringify!(byMACAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 78usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1__bindgen_ty_9), + "::", + stringify!(byRes) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1), + "::", + stringify!(byLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1), + "::", + stringify!(struAlarmParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMotionParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1), + "::", + stringify!(struMotionParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1), + "::", + stringify!(struVcaParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInquestParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1), + "::", + stringify!(struInquestParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVCADetect) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1), + "::", + stringify!(struVCADetect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamIDParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1), + "::", + stringify!(struStreamIDParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPosAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1), + "::", + stringify!(struPosAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTrialParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1), + "::", + stringify!(struTrialParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struACSAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40__bindgen_ty_1), + "::", + stringify!(struACSAlarm) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 984usize, + concat!("Size of: ", stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMajorType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40), + "::", + stringify!(wMajorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMinorType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40), + "::", + stringify!(wMinorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLockType) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40), + "::", + stringify!(byLockType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byQuickSearch) as usize - ptr as usize }, + 53usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40), + "::", + stringify!(byQuickSearch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 54usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uSeniorParam) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V40), + "::", + stringify!(uSeniorParam) + ) + ); +} +pub type NET_DVR_SEARCH_EVENT_PARAM_V40 = tagNET_DVR_SEARCH_EVENT_PARAM_V40; +pub type LPNET_DVR_SEARCH_EVENT_PARAM_V40 = *mut tagNET_DVR_SEARCH_EVENT_PARAM_V40; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM_V50 { + pub wMajorType: WORD, + pub wMinorType: WORD, + pub struStartTime: NET_DVR_TIME_SEARCH_COND, + pub struEndTime: NET_DVR_TIME_SEARCH_COND, + pub byLockType: BYTE, + pub byQuickSearch: BYTE, + pub byRes: [BYTE; 254usize], + pub uSeniorParam: tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1 { + pub byLen: [BYTE; 800usize], + pub struAlarmParam: tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_1, + pub struMotionParam: tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_2, + pub struVcaParam: tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_3, + pub struInquestParam: tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_4, + pub struVCADetect: tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_5, + pub struStreamIDParam: tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_6, + pub struPosAlarm: tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_7, + pub struTrialParam: tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_8, + pub struACSAlarm: tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_9, + pub struIOTAlarm: tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_10, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_1 { + pub wAlarmInNo: [WORD; 128usize], + pub byRes: [BYTE; 544usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAlarmInNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(wAlarmInNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_2 { + pub wMotDetChanNo: [WORD; 64usize], + pub byRes: [BYTE; 672usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_2, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMotDetChanNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(wMotDetChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_3 { + pub wChanNo: [WORD; 64usize], + pub byRuleID: BYTE, + pub byDriverBehaviortType: BYTE, + pub byADASType: BYTE, + pub byGSensorType: BYTE, + pub bySensorInType: BYTE, + pub byRes: [BYTE; 667usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_3() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_3, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wChanNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(wChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleID) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDriverBehaviortType) as usize - ptr as usize }, + 129usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byDriverBehaviortType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byADASType) as usize - ptr as usize }, + 130usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byADASType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGSensorType) as usize - ptr as usize }, + 131usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byGSensorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensorInType) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(bySensorInType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 133usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_4 { + pub byRoomIndex: BYTE, + pub byRes: [BYTE; 799usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_4() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_4, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_4) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRoomIndex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(byRoomIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_5 { + pub byAll: BYTE, + pub byRes1: [BYTE; 3usize], + pub wChanNo: [WORD; 64usize], + pub byRes: [BYTE; 668usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_5() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_5, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_5) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_5) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAll) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byAll) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wChanNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(wChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_6 { + pub struIDInfo: NET_DVR_STREAM_INFO, + pub dwCmdType: DWORD, + pub byBackupVolumeNum: BYTE, + pub byRes1: [BYTE; 3usize], + pub byArchiveLabel: [BYTE; 64usize], + pub byRes: [BYTE; 656usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_6() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_6, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_6) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_6) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIDInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(struIDInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCmdType) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(dwCmdType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBackupVolumeNum) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byBackupVolumeNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 77usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byArchiveLabel) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byArchiveLabel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_7 { + pub wChannel: [WORD; 64usize], + pub byAllChan: BYTE, + pub byCaseSensitive: BYTE, + pub byCombinateMode: BYTE, + pub byRes1: BYTE, + pub sKeyWord: [[::std::os::raw::c_char; 128usize]; 3usize], + pub byRes: [BYTE; 284usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_7() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_7, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_7) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_7) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(wChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAllChan) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byAllChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseSensitive) as usize - ptr as usize }, + 129usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byCaseSensitive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCombinateMode) as usize - ptr as usize }, + 130usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byCombinateMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 131usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sKeyWord) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(sKeyWord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 516usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_8 { + pub byCaseNo: [BYTE; 56usize], + pub byCaseName: [BYTE; 100usize], + pub byLitigant1: [BYTE; 32usize], + pub byLitigant2: [BYTE; 32usize], + pub byChiefJudge: [BYTE; 32usize], + pub byCaseType: BYTE, + pub byRes: [BYTE; 547usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_8() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_8, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_8) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(byCaseNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseName) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(byCaseName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLitigant1) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(byLitigant1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLitigant2) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(byLitigant2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChiefJudge) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(byChiefJudge) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseType) as usize - ptr as usize }, + 252usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(byCaseType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 253usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_9 { + pub dwMajor: DWORD, + pub dwMinor: DWORD, + pub byCardNo: [BYTE; 32usize], + pub byName: [BYTE; 32usize], + pub byMACAddr: [BYTE; 6usize], + pub byRes: [BYTE; 722usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_9() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_9, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_9) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_9) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMajor) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_9), + "::", + stringify!(dwMajor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMinor) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_9), + "::", + stringify!(dwMinor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_9), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_9), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMACAddr) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_9), + "::", + stringify!(byMACAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 78usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_9), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_10 { + pub wDeviceType: WORD, + pub wEventType: WORD, + pub wChannel: [WORD; 64usize], + pub byAllChan: BYTE, + pub byCaseSensitive: BYTE, + pub byCombinateMode: BYTE, + pub bySearchType: BYTE, + pub sKeyWord: [[::std::os::raw::c_char; 128usize]; 3usize], + pub wZoneNo: WORD, + pub byRes: [BYTE; 278usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_10() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_10, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_10) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_10) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDeviceType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_10), + "::", + stringify!(wDeviceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wEventType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_10), + "::", + stringify!(wEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_10), + "::", + stringify!(wChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAllChan) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_10), + "::", + stringify!(byAllChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseSensitive) as usize - ptr as usize }, + 133usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_10), + "::", + stringify!(byCaseSensitive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCombinateMode) as usize - ptr as usize }, + 134usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_10), + "::", + stringify!(byCombinateMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySearchType) as usize - ptr as usize }, + 135usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_10), + "::", + stringify!(bySearchType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sKeyWord) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_10), + "::", + stringify!(sKeyWord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wZoneNo) as usize - ptr as usize }, + 520usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_10), + "::", + stringify!(wZoneNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 522usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1__bindgen_ty_10), + "::", + stringify!(byRes) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1), + "::", + stringify!(byLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1), + "::", + stringify!(struAlarmParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMotionParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1), + "::", + stringify!(struMotionParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1), + "::", + stringify!(struVcaParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInquestParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1), + "::", + stringify!(struInquestParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVCADetect) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1), + "::", + stringify!(struVCADetect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamIDParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1), + "::", + stringify!(struStreamIDParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPosAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1), + "::", + stringify!(struPosAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTrialParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1), + "::", + stringify!(struTrialParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struACSAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1), + "::", + stringify!(struACSAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIOTAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50__bindgen_ty_1), + "::", + stringify!(struIOTAlarm) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_PARAM_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1084usize, + concat!("Size of: ", stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMajorType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50), + "::", + stringify!(wMajorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMinorType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50), + "::", + stringify!(wMinorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLockType) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50), + "::", + stringify!(byLockType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byQuickSearch) as usize - ptr as usize }, + 29usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50), + "::", + stringify!(byQuickSearch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 30usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uSeniorParam) as usize - ptr as usize }, + 284usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_PARAM_V50), + "::", + stringify!(uSeniorParam) + ) + ); +} +pub type NET_DVR_SEARCH_EVENT_PARAM_V50 = tagNET_DVR_SEARCH_EVENT_PARAM_V50; +pub type LPNET_DVR_SEARCH_EVENT_PARAM_V50 = *mut tagNET_DVR_SEARCH_EVENT_PARAM_V50; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_RET { + pub wMajorType: WORD, + pub wMinorType: WORD, + pub struStartTime: NET_DVR_TIME, + pub struEndTime: NET_DVR_TIME, + pub byChan: [BYTE; 64usize], + pub byChanEx: [BYTE; 32usize], + pub byRes: [BYTE; 4usize], + pub uSeniorRet: tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1 { + pub struAlarmRet: tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_1, + pub struMotionRet: tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_2, + pub struVcaRet: tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_3, + pub struInquestRet: tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_4, + pub struStreamIDRet: tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_5, + pub struTrialRet: tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_6, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_1 { + pub dwAlarmInNo: DWORD, + pub byRes: [BYTE; 300usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 304usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmInNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(dwAlarmInNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_2 { + pub dwMotDetNo: DWORD, + pub byRes: [BYTE; 300usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 304usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMotDetNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(dwMotDetNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_3 { + pub dwChanNo: DWORD, + pub byRuleID: BYTE, + pub byRes1: [BYTE; 3usize], + pub byRuleName: [BYTE; 32usize], + pub uEvent: NET_VCA_EVENT_UNION, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_3() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChanNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(dwChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byRuleName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uEvent) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(uEvent) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_4 { + pub byRoomIndex: BYTE, + pub byDriveIndex: BYTE, + pub byRes1: [BYTE; 6usize], + pub dwSegmentNo: DWORD, + pub wSegmetSize: WORD, + pub wSegmentState: WORD, + pub byRes2: [BYTE; 288usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_4() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 304usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_4) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRoomIndex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(byRoomIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDriveIndex) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(byDriveIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSegmentNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(dwSegmentNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSegmetSize) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(wSegmetSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSegmentState) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(wSegmentState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(byRes2) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_5 { + pub dwRecordType: DWORD, + pub dwRecordLength: DWORD, + pub byLockFlag: BYTE, + pub byDrawFrameType: BYTE, + pub byRes1: [BYTE; 2usize], + pub byFileName: [BYTE; 32usize], + pub dwFileIndex: DWORD, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_5() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 304usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_5) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_5) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(dwRecordType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordLength) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(dwRecordLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLockFlag) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byLockFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDrawFrameType) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byDrawFrameType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileName) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileIndex) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(dwFileIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_6 { + pub byRoomIndex: BYTE, + pub byDriveIndex: BYTE, + pub wSegmetSize: WORD, + pub dwSegmentNo: DWORD, + pub bySegmentState: BYTE, + pub byCaseType: BYTE, + pub byRes: [BYTE; 2usize], + pub byCaseNo: [BYTE; 52usize], + pub byCaseName: [BYTE; 64usize], + pub byLitigant1: [BYTE; 24usize], + pub byLitigant2: [BYTE; 24usize], + pub byChiefJudge: [BYTE; 24usize], + pub byRes1: [BYTE; 104usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_6() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 304usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_6) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_6) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRoomIndex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byRoomIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDriveIndex) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byDriveIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSegmetSize) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(wSegmetSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSegmentNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(dwSegmentNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySegmentState) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(bySegmentState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseType) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byCaseType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseNo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byCaseNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseName) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byCaseName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLitigant1) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byLitigant1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLitigant2) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byLitigant2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChiefJudge) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byChiefJudge) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byRes1) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 304usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmRet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1), + "::", + stringify!(struAlarmRet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMotionRet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1), + "::", + stringify!(struMotionRet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaRet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1), + "::", + stringify!(struVcaRet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInquestRet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1), + "::", + stringify!(struInquestRet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamIDRet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1), + "::", + stringify!(struStreamIDRet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTrialRet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET__bindgen_ty_1), + "::", + stringify!(struTrialRet) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 456usize, + concat!("Size of: ", stringify!(tagNET_DVR_SEARCH_EVENT_RET)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SEARCH_EVENT_RET)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMajorType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET), + "::", + stringify!(wMajorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMinorType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET), + "::", + stringify!(wMinorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChan) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET), + "::", + stringify!(byChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanEx) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET), + "::", + stringify!(byChanEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uSeniorRet) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET), + "::", + stringify!(uSeniorRet) + ) + ); +} +pub type NET_DVR_SEARCH_EVENT_RET = tagNET_DVR_SEARCH_EVENT_RET; +pub type LPNET_DVR_SEARCH_EVENT_RET = *mut tagNET_DVR_SEARCH_EVENT_RET; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_RET_V40 { + pub wMajorType: WORD, + pub wMinorType: WORD, + pub struStartTime: NET_DVR_TIME, + pub struEndTime: NET_DVR_TIME, + pub wChan: [WORD; 512usize], + pub byRes: [BYTE; 36usize], + pub uSeniorRet: tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1 { + pub byLen: [BYTE; 800usize], + pub struAlarmRet: tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_1, + pub struMotionRet: tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_2, + pub struVcaRet: tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_3, + pub struInquestRet: tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_4, + pub struStreamIDRet: tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_5, + pub struPosRet: tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_6, + pub struTrialRet: tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_7, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_1 { + pub dwAlarmInNo: DWORD, + pub byRes: [BYTE; 796usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmInNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(dwAlarmInNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_2 { + pub dwMotDetNo: DWORD, + pub byRes: [BYTE; 796usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_2, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMotDetNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(dwMotDetNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_3 { + pub dwChanNo: DWORD, + pub byRuleID: BYTE, + pub byRes1: [BYTE; 3usize], + pub byRuleName: [BYTE; 32usize], + pub uEvent: NET_VCA_EVENT_UNION, + pub byRes: [BYTE; 668usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_3() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_3, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChanNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(dwChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byRuleName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uEvent) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(uEvent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_4 { + pub byRoomIndex: BYTE, + pub byDriveIndex: BYTE, + pub byRes1: [BYTE; 6usize], + pub dwSegmentNo: DWORD, + pub wSegmetSize: WORD, + pub wSegmentState: WORD, + pub byRes2: [BYTE; 784usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_4() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_4, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_4) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRoomIndex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(byRoomIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDriveIndex) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(byDriveIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSegmentNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(dwSegmentNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSegmetSize) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(wSegmetSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSegmentState) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(wSegmentState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(byRes2) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_5 { + pub dwRecordType: DWORD, + pub dwRecordLength: DWORD, + pub byLockFlag: BYTE, + pub byDrawFrameType: BYTE, + pub byPosition: BYTE, + pub byRes1: BYTE, + pub byFileName: [BYTE; 32usize], + pub dwFileIndex: DWORD, + pub byTapeIndex: [BYTE; 32usize], + pub byFileNameEx: [BYTE; 256usize], + pub byRes: [BYTE; 464usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_5() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_5, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_5) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_5) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(dwRecordType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordLength) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(dwRecordLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLockFlag) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byLockFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDrawFrameType) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byDrawFrameType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPosition) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byPosition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileName) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileIndex) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(dwFileIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTapeIndex) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byTapeIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileNameEx) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byFileNameEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 336usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_6 { + pub dwChanNo: DWORD, + pub byRes: [BYTE; 796usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_6() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_6, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_6) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_6) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChanNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(dwChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_7 { + pub byRoomIndex: BYTE, + pub byDriveIndex: BYTE, + pub wSegmetSize: WORD, + pub dwSegmentNo: DWORD, + pub bySegmentState: BYTE, + pub byCaseType: BYTE, + pub byRes: [BYTE; 2usize], + pub byCaseNo: [BYTE; 52usize], + pub byCaseName: [BYTE; 64usize], + pub byLitigant1: [BYTE; 24usize], + pub byLitigant2: [BYTE; 24usize], + pub byChiefJudge: [BYTE; 24usize], + pub byRes1: [BYTE; 600usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_7() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_7, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_7) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_7) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRoomIndex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byRoomIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDriveIndex) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byDriveIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSegmetSize) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(wSegmetSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSegmentNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(dwSegmentNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySegmentState) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(bySegmentState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseType) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byCaseType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseNo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byCaseNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseName) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byCaseName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLitigant1) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byLitigant1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLitigant2) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byLitigant2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChiefJudge) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byChiefJudge) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byRes1) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1), + "::", + stringify!(byLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmRet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1), + "::", + stringify!(struAlarmRet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMotionRet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1), + "::", + stringify!(struMotionRet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaRet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1), + "::", + stringify!(struVcaRet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInquestRet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1), + "::", + stringify!(struInquestRet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamIDRet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1), + "::", + stringify!(struStreamIDRet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPosRet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1), + "::", + stringify!(struPosRet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTrialRet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40__bindgen_ty_1), + "::", + stringify!(struTrialRet) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1912usize, + concat!("Size of: ", stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMajorType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40), + "::", + stringify!(wMajorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMinorType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40), + "::", + stringify!(wMinorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wChan) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40), + "::", + stringify!(wChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1076usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uSeniorRet) as usize - ptr as usize }, + 1112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V40), + "::", + stringify!(uSeniorRet) + ) + ); +} +pub type NET_DVR_SEARCH_EVENT_RET_V40 = tagNET_DVR_SEARCH_EVENT_RET_V40; +pub type LPNET_DVR_SEARCH_EVENT_RET_V40 = *mut tagNET_DVR_SEARCH_EVENT_RET_V40; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_RET_V50 { + pub wMajorType: WORD, + pub wMinorType: WORD, + pub struStartTime: NET_DVR_TIME_SEARCH, + pub struEndTime: NET_DVR_TIME_SEARCH, + pub struAddr: NET_DVR_ADDRESS, + pub wChan: [WORD; 512usize], + pub byRes: [BYTE; 256usize], + pub uSeniorRet: tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1 { + pub byLen: [BYTE; 800usize], + pub struAlarmRet: tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_1, + pub struMotionRet: tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_2, + pub struVcaRet: tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_3, + pub struInquestRet: tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_4, + pub struStreamIDRet: tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_5, + pub struPosRet: tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_6, + pub struTrialRet: tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_7, + pub struIOTRet: tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_1 { + pub dwAlarmInNo: DWORD, + pub byRes: [BYTE; 796usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmInNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(dwAlarmInNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_2 { + pub dwMotDetNo: DWORD, + pub byRes: [BYTE; 796usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_2, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMotDetNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(dwMotDetNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_3 { + pub dwChanNo: DWORD, + pub byRuleID: BYTE, + pub byRes1: [BYTE; 3usize], + pub byRuleName: [BYTE; 32usize], + pub uEvent: NET_VCA_EVENT_UNION, + pub byRes: [BYTE; 668usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_3() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_3, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChanNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(dwChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byRuleName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uEvent) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(uEvent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_4 { + pub byRoomIndex: BYTE, + pub byDriveIndex: BYTE, + pub byRes1: [BYTE; 6usize], + pub dwSegmentNo: DWORD, + pub wSegmetSize: WORD, + pub wSegmentState: WORD, + pub byRes2: [BYTE; 784usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_4() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_4, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_4) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRoomIndex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(byRoomIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDriveIndex) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(byDriveIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSegmentNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(dwSegmentNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSegmetSize) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(wSegmetSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSegmentState) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(wSegmentState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(byRes2) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_5 { + pub dwRecordType: DWORD, + pub dwRecordLength: DWORD, + pub byLockFlag: BYTE, + pub byDrawFrameType: BYTE, + pub byPosition: BYTE, + pub byRes1: BYTE, + pub byFileName: [BYTE; 32usize], + pub dwFileIndex: DWORD, + pub byTapeIndex: [BYTE; 32usize], + pub byFileNameEx: [BYTE; 256usize], + pub byRes: [BYTE; 464usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_5() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_5, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_5) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_5) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(dwRecordType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordLength) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(dwRecordLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLockFlag) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byLockFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDrawFrameType) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byDrawFrameType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPosition) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byPosition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileName) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileIndex) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(dwFileIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTapeIndex) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byTapeIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileNameEx) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byFileNameEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 336usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_6 { + pub dwChanNo: DWORD, + pub byRes: [BYTE; 796usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_6() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_6, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_6) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_6) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChanNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(dwChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_7 { + pub byRoomIndex: BYTE, + pub byDriveIndex: BYTE, + pub wSegmetSize: WORD, + pub dwSegmentNo: DWORD, + pub bySegmentState: BYTE, + pub byCaseType: BYTE, + pub byRes: [BYTE; 2usize], + pub byCaseNo: [BYTE; 52usize], + pub byCaseName: [BYTE; 64usize], + pub byLitigant1: [BYTE; 24usize], + pub byLitigant2: [BYTE; 24usize], + pub byChiefJudge: [BYTE; 24usize], + pub byRes1: [BYTE; 600usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_7() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_7, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_7) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_7) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRoomIndex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byRoomIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDriveIndex) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byDriveIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSegmetSize) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(wSegmetSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSegmentNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(dwSegmentNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySegmentState) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(bySegmentState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseType) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byCaseType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseNo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byCaseNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseName) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byCaseName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLitigant1) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byLitigant1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLitigant2) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byLitigant2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChiefJudge) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byChiefJudge) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byRes1) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_8 { + pub dwChanNo: DWORD, + pub byRes: [BYTE; 796usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_8() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_8, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_8) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChanNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(dwChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(byRes) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1), + "::", + stringify!(byLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmRet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1), + "::", + stringify!(struAlarmRet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMotionRet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1), + "::", + stringify!(struMotionRet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaRet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1), + "::", + stringify!(struVcaRet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInquestRet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1), + "::", + stringify!(struInquestRet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamIDRet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1), + "::", + stringify!(struStreamIDRet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPosRet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1), + "::", + stringify!(struPosRet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTrialRet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1), + "::", + stringify!(struTrialRet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIOTRet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50__bindgen_ty_1), + "::", + stringify!(struIOTRet) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_EVENT_RET_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2256usize, + concat!("Size of: ", stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMajorType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50), + "::", + stringify!(wMajorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMinorType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50), + "::", + stringify!(wMinorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAddr) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50), + "::", + stringify!(struAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wChan) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50), + "::", + stringify!(wChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uSeniorRet) as usize - ptr as usize }, + 1456usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_EVENT_RET_V50), + "::", + stringify!(uSeniorRet) + ) + ); +} +pub type NET_DVR_SEARCH_EVENT_RET_V50 = tagNET_DVR_SEARCH_EVENT_RET_V50; +pub type LPNET_DVR_SEARCH_EVENT_RET_V50 = *mut tagNET_DVR_SEARCH_EVENT_RET_V50; +pub const tagCALIBRATE_TYPE_PDC_CALIBRATE: tagCALIBRATE_TYPE = 1; +pub const tagCALIBRATE_TYPE_BEHAVIOR_OUT_CALIBRATE: tagCALIBRATE_TYPE = 2; +pub const tagCALIBRATE_TYPE_BEHAVIOR_IN_CALIBRATE: tagCALIBRATE_TYPE = 3; +pub const tagCALIBRATE_TYPE_ITS_CALBIRETE: tagCALIBRATE_TYPE = 4; +pub const tagCALIBRATE_TYPE_BV_DIRECT_CALIBRATE: tagCALIBRATE_TYPE = 5; +pub const tagCALIBRATE_TYPE_PDC_LINE_CALIBRATE: tagCALIBRATE_TYPE = 6; +pub type tagCALIBRATE_TYPE = ::std::os::raw::c_uint; +pub use self::tagCALIBRATE_TYPE as CALIBRATE_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECT_LIST { + pub byRectNum: BYTE, + pub byRes1: [BYTE; 11usize], + pub struVcaRect: [NET_VCA_RECT; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECT_LIST() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 108usize, + concat!("Size of: ", stringify!(tagNET_DVR_RECT_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RECT_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRectNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECT_LIST), + "::", + stringify!(byRectNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECT_LIST), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaRect) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECT_LIST), + "::", + stringify!(struVcaRect) + ) + ); +} +pub type NET_DVR_RECT_LIST = tagNET_DVR_RECT_LIST; +pub type LPNET_DVR_RECT_LIST = *mut tagNET_DVR_RECT_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PDC_CALIBRATION { + pub struRectList: NET_DVR_RECT_LIST, + pub byRes: [BYTE; 120usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PDC_CALIBRATION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 228usize, + concat!("Size of: ", stringify!(tagNET_DVR_PDC_CALIBRATION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PDC_CALIBRATION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRectList) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_CALIBRATION), + "::", + stringify!(struRectList) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_CALIBRATION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PDC_CALIBRATION = tagNET_DVR_PDC_CALIBRATION; +pub type LPNET_DVR_PDC_CALIBRATION = *mut tagNET_DVR_PDC_CALIBRATION; +pub const tagLINE_MODE_HEIGHT_LINE: tagLINE_MODE = 0; +pub const tagLINE_MODE_LENGTH_LINE: tagLINE_MODE = 1; +pub type tagLINE_MODE = ::std::os::raw::c_uint; +pub use self::tagLINE_MODE as LINE_MODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CAMERA_PARAM { + pub byEnableHeight: BYTE, + pub byEnableAngle: BYTE, + pub byEnableHorizon: BYTE, + pub byRes: [BYTE; 5usize], + pub fCameraHeight: f32, + pub fCameraAngle: f32, + pub fHorizon: f32, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CAMERA_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_CAMERA_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CAMERA_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableHeight) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_PARAM), + "::", + stringify!(byEnableHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableAngle) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_PARAM), + "::", + stringify!(byEnableAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableHorizon) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_PARAM), + "::", + stringify!(byEnableHorizon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fCameraHeight) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_PARAM), + "::", + stringify!(fCameraHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fCameraAngle) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_PARAM), + "::", + stringify!(fCameraAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fHorizon) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_PARAM), + "::", + stringify!(fHorizon) + ) + ); +} +pub type NET_DVR_CAMERA_PARAM = tagNET_DVR_CAMERA_PARAM; +pub type LPNET_DVR_CAMERA_PARAM = *mut tagNET_DVR_CAMERA_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LINE_SEGMENT { + pub byLineMode: BYTE, + pub byRes: [BYTE; 3usize], + pub struStartPoint: NET_VCA_POINT, + pub struEndPoint: NET_VCA_POINT, + pub fValue: f32, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LINE_SEGMENT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_DVR_LINE_SEGMENT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LINE_SEGMENT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLineMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINE_SEGMENT), + "::", + stringify!(byLineMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINE_SEGMENT), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartPoint) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINE_SEGMENT), + "::", + stringify!(struStartPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndPoint) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINE_SEGMENT), + "::", + stringify!(struEndPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fValue) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINE_SEGMENT), + "::", + stringify!(fValue) + ) + ); +} +pub type NET_DVR_LINE_SEGMENT = tagNET_DVR_LINE_SEGMENT; +pub type LPNET_DVR_LINE_SEGMENT = *mut tagNET_DVR_LINE_SEGMENT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BEHAVIOR_OUT_CALIBRATION { + pub dwLineSegNum: DWORD, + pub struLineSegment: [NET_DVR_LINE_SEGMENT; 8usize], + pub struCameraParam: NET_DVR_CAMERA_PARAM, + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BEHAVIOR_OUT_CALIBRATION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 236usize, + concat!("Size of: ", stringify!(tagNET_DVR_BEHAVIOR_OUT_CALIBRATION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_BEHAVIOR_OUT_CALIBRATION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLineSegNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BEHAVIOR_OUT_CALIBRATION), + "::", + stringify!(dwLineSegNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLineSegment) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BEHAVIOR_OUT_CALIBRATION), + "::", + stringify!(struLineSegment) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCameraParam) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BEHAVIOR_OUT_CALIBRATION), + "::", + stringify!(struCameraParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BEHAVIOR_OUT_CALIBRATION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BEHAVIOR_OUT_CALIBRATION = tagNET_DVR_BEHAVIOR_OUT_CALIBRATION; +pub type LPNET_DVR_BEHAVIOR_OUT_CALIBRATION = *mut tagNET_DVR_BEHAVIOR_OUT_CALIBRATION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IN_CAL_SAMPLE { + pub struVcaRect: NET_VCA_RECT, + pub struLineSegment: NET_DVR_LINE_SEGMENT, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IN_CAL_SAMPLE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_IN_CAL_SAMPLE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IN_CAL_SAMPLE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaRect) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IN_CAL_SAMPLE), + "::", + stringify!(struVcaRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLineSegment) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IN_CAL_SAMPLE), + "::", + stringify!(struLineSegment) + ) + ); +} +pub type NET_DVR_IN_CAL_SAMPLE = tagNET_DVR_IN_CAL_SAMPLE; +pub type LPNET_DVR_IN_CAL_SAMPLE = *mut tagNET_DVR_IN_CAL_SAMPLE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BEHAVIOR_IN_CALIBRATION { + pub dwCalSampleNum: DWORD, + pub struCalSample: [NET_DVR_IN_CAL_SAMPLE; 5usize], + pub struCameraParam: NET_DVR_CAMERA_PARAM, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BEHAVIOR_IN_CALIBRATION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 240usize, + concat!("Size of: ", stringify!(tagNET_DVR_BEHAVIOR_IN_CALIBRATION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_BEHAVIOR_IN_CALIBRATION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCalSampleNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BEHAVIOR_IN_CALIBRATION), + "::", + stringify!(dwCalSampleNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCalSample) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BEHAVIOR_IN_CALIBRATION), + "::", + stringify!(struCalSample) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCameraParam) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BEHAVIOR_IN_CALIBRATION), + "::", + stringify!(struCameraParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BEHAVIOR_IN_CALIBRATION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BEHAVIOR_IN_CALIBRATION = tagNET_DVR_BEHAVIOR_IN_CALIBRATION; +pub type LPNET_DVR_BEHAVIOR_IN_CALIBRATION = *mut tagNET_DVR_BEHAVIOR_IN_CALIBRATION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ITS_CALIBRATION { + pub dwPointNum: DWORD, + pub struPoint: [NET_VCA_POINT; 4usize], + pub fWidth: f32, + pub fHeight: f32, + pub byRes1: [BYTE; 100usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ITS_CALIBRATION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!("Size of: ", stringify!(tagNET_DVR_ITS_CALIBRATION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ITS_CALIBRATION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPointNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ITS_CALIBRATION), + "::", + stringify!(dwPointNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPoint) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ITS_CALIBRATION), + "::", + stringify!(struPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fWidth) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ITS_CALIBRATION), + "::", + stringify!(fWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fHeight) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ITS_CALIBRATION), + "::", + stringify!(fHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ITS_CALIBRATION), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_ITS_CALIBRATION = tagNET_DVR_ITS_CALIBRATION; +pub type LPNET_DVR_ITS_CALIBRATION = *mut tagNET_DVR_ITS_CALIBRATION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BV_DIRECT_CALIBRATION { + pub dwCameraHeight: DWORD, + pub fPitchAngle: f32, + pub fInclineAngle: f32, + pub byRes1: [BYTE; 228usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BV_DIRECT_CALIBRATION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 240usize, + concat!("Size of: ", stringify!(tagNET_DVR_BV_DIRECT_CALIBRATION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_BV_DIRECT_CALIBRATION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCameraHeight) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_DIRECT_CALIBRATION), + "::", + stringify!(dwCameraHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fPitchAngle) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_DIRECT_CALIBRATION), + "::", + stringify!(fPitchAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fInclineAngle) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_DIRECT_CALIBRATION), + "::", + stringify!(fInclineAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_DIRECT_CALIBRATION), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_BV_DIRECT_CALIBRATION = tagNET_DVR_BV_DIRECT_CALIBRATION; +pub type LPNET_DVR_BV_DIRECT_CALIBRATION = *mut tagNET_DVR_BV_DIRECT_CALIBRATION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PDC_LINE_CALIBRATION { + pub struCalibrationLine: NET_VCA_LINE, + pub byRes: [BYTE; 224usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PDC_LINE_CALIBRATION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 240usize, + concat!("Size of: ", stringify!(tagNET_DVR_PDC_LINE_CALIBRATION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PDC_LINE_CALIBRATION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCalibrationLine) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_LINE_CALIBRATION), + "::", + stringify!(struCalibrationLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_LINE_CALIBRATION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PDC_LINE_CALIBRATION = tagNET_DVR_PDC_LINE_CALIBRATION; +pub type LPNET_DVR_PDC_LINE_CALIBRATION = *mut tagNET_DVR_PDC_LINE_CALIBRATION; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_CALIBRATION_PRARM_UNION { + pub byRes: [BYTE; 240usize], + pub struPDCCalibration: NET_DVR_PDC_CALIBRATION, + pub struBehaviorOutCalibration: NET_DVR_BEHAVIOR_OUT_CALIBRATION, + pub struBehaviorInCalibration: NET_DVR_BEHAVIOR_IN_CALIBRATION, + pub struITSCalibration: NET_DVR_ITS_CALIBRATION, + pub struBvDirectCalibration: NET_DVR_BV_DIRECT_CALIBRATION, + pub struPDCLineCalibration: NET_DVR_PDC_LINE_CALIBRATION, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CALIBRATION_PRARM_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 240usize, + concat!("Size of: ", stringify!(tagNET_DVR_CALIBRATION_PRARM_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_CALIBRATION_PRARM_UNION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALIBRATION_PRARM_UNION), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPDCCalibration) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALIBRATION_PRARM_UNION), + "::", + stringify!(struPDCCalibration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBehaviorOutCalibration) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALIBRATION_PRARM_UNION), + "::", + stringify!(struBehaviorOutCalibration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBehaviorInCalibration) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALIBRATION_PRARM_UNION), + "::", + stringify!(struBehaviorInCalibration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struITSCalibration) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALIBRATION_PRARM_UNION), + "::", + stringify!(struITSCalibration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBvDirectCalibration) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALIBRATION_PRARM_UNION), + "::", + stringify!(struBvDirectCalibration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPDCLineCalibration) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALIBRATION_PRARM_UNION), + "::", + stringify!(struPDCLineCalibration) + ) + ); +} +pub type NET_DVR_CALIBRATION_PRARM_UNION = tagNET_DVR_CALIBRATION_PRARM_UNION; +pub type LPNET_DVR_CALIBRATION_PRARM_UNION = *mut tagNET_DVR_CALIBRATION_PRARM_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_CALIBRATION_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byCalibrationType: BYTE, + pub byRes1: [BYTE; 2usize], + pub uCalibrateParam: NET_DVR_CALIBRATION_PRARM_UNION, + pub byRes2: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CALIBRATION_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(tagNET_DVR_CALIBRATION_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CALIBRATION_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALIBRATION_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALIBRATION_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCalibrationType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALIBRATION_CFG), + "::", + stringify!(byCalibrationType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALIBRATION_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uCalibrateParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALIBRATION_CFG), + "::", + stringify!(uCalibrateParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 248usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALIBRATION_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CALIBRATION_CFG = tagNET_DVR_CALIBRATION_CFG; +pub type LPNET_DVR_CALIBRATION_CFG = *mut tagNET_DVR_CALIBRATION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PDC_ENTER_DIRECTION { + pub struStartPoint: NET_VCA_POINT, + pub struEndPoint: NET_VCA_POINT, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PDC_ENTER_DIRECTION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_PDC_ENTER_DIRECTION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PDC_ENTER_DIRECTION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartPoint) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ENTER_DIRECTION), + "::", + stringify!(struStartPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndPoint) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ENTER_DIRECTION), + "::", + stringify!(struEndPoint) + ) + ); +} +pub type NET_DVR_PDC_ENTER_DIRECTION = tagNET_DVR_PDC_ENTER_DIRECTION; +pub type LPNET_DVR_PDC_ENTER_DIRECTION = *mut tagNET_DVR_PDC_ENTER_DIRECTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PDC_RULE_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 23usize], + pub struPolygon: NET_VCA_POLYGON, + pub struEnterDirection: NET_DVR_PDC_ENTER_DIRECTION, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PDC_RULE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_DVR_PDC_RULE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PDC_RULE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPolygon) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG), + "::", + stringify!(struPolygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEnterDirection) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG), + "::", + stringify!(struEnterDirection) + ) + ); +} +pub type NET_DVR_PDC_RULE_CFG = tagNET_DVR_PDC_RULE_CFG; +pub type LPNET_DVR_PDC_RULE_CFG = *mut tagNET_DVR_PDC_RULE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PDC_RULE_CFG_V41 { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 23usize], + pub struPolygon: NET_VCA_POLYGON, + pub struEnterDirection: NET_DVR_PDC_ENTER_DIRECTION, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub struDayStartTime: NET_DVR_TIME_EX, + pub struNightStartTime: NET_DVR_TIME_EX, + pub byRes: [BYTE; 100usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PDC_RULE_CFG_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 468usize, + concat!("Size of: ", stringify!(tagNET_DVR_PDC_RULE_CFG_V41)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PDC_RULE_CFG_V41)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V41), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V41), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V41), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPolygon) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V41), + "::", + stringify!(struPolygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEnterDirection) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V41), + "::", + stringify!(struEnterDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V41), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDayStartTime) as usize - ptr as usize }, + 352usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V41), + "::", + stringify!(struDayStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNightStartTime) as usize - ptr as usize }, + 360usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V41), + "::", + stringify!(struNightStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 368usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V41), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PDC_RULE_CFG_V41 = tagNET_DVR_PDC_RULE_CFG_V41; +pub type LPNET_DVR_PDC_RULE_CFG_V41 = *mut tagNET_DVR_PDC_RULE_CFG_V41; +#[doc = " IPC5.1.7 ������ͳ�ƹ��� Begin 2014-03-21"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PDC_RULE_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub dwID: DWORD, + pub byRes: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PDC_RULE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_PDC_RULE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PDC_RULE_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_COND), + "::", + stringify!(dwID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_COND), + "::", + stringify!(byRes) + ) + ); +} +#[doc = " IPC5.1.7 ������ͳ�ƹ��� Begin 2014-03-21"] +pub type NET_DVR_PDC_RULE_COND = tagNET_DVR_PDC_RULE_COND; +#[doc = " IPC5.1.7 ������ͳ�ƹ��� Begin 2014-03-21"] +pub type LPNET_DVR_PDC_RULE_COND = *mut tagNET_DVR_PDC_RULE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_POLYLINE { + pub struPoint: [NET_VCA_POINT; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_POLYLINE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_VCA_POLYLINE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_POLYLINE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPoint) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_POLYLINE), + "::", + stringify!(struPoint) + ) + ); +} +pub type NET_VCA_POLYLINE = tagNET_VCA_POLYLINE; +pub type LPNET_VCA_POLYLINE = *mut tagNET_VCA_POLYLINE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PDC_RULE_CFG_V42 { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byOSDEnable: BYTE, + pub byCurDetectType: BYTE, + pub byInterferenceSuppression: BYTE, + pub struOSDPoint: NET_VCA_POINT, + pub byDataUploadCycle: BYTE, + pub bySECUploadEnable: BYTE, + pub byEmailDayReport: BYTE, + pub byEmailWeekReport: BYTE, + pub byEmailMonthReport: BYTE, + pub byEmailYearReport: BYTE, + pub byRes2: [BYTE; 6usize], + pub struPolygon: NET_VCA_POLYGON, + pub struEnterDirection: NET_DVR_PDC_ENTER_DIRECTION, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub struDayStartTime: NET_DVR_TIME_EX, + pub struNightStartTime: NET_DVR_TIME_EX, + pub struAlarmHandleType: NET_DVR_HANDLEEXCEPTION_V40, + pub byDetecteSensitivity: BYTE, + pub byGenerateSpeedSpace: BYTE, + pub byGenerateSpeedTime: BYTE, + pub byCountSpeed: BYTE, + pub byDetecteType: BYTE, + pub byTargetSizeCorrect: BYTE, + pub byStreamOverlayRuleInfos: BYTE, + pub byRes3: BYTE, + pub struLine: NET_VCA_LINE, + pub byHeightFilterEnable: BYTE, + pub byDetectThreshold: BYTE, + pub byAidedTrackEnabled: BYTE, + pub byRes4: BYTE, + pub fHeightFilter: f32, + pub byCalibrateType: BYTE, + pub byCountingType: BYTE, + pub bySignalType: BYTE, + pub byRS485TransmissionEnabled: BYTE, + pub fTiltAngle: f32, + pub fHeelAngle: f32, + pub fHeight: f32, + pub struCountPolygon: NET_VCA_POLYGON, + pub struAutoCalibPolygon: NET_VCA_POLYGON, + pub struDailyResetTime: NET_DVR_TIME_EX, + pub struPolyLine: NET_VCA_POLYLINE, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PDC_RULE_CFG_V42() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 960usize, + concat!("Size of: ", stringify!(tagNET_DVR_PDC_RULE_CFG_V42)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PDC_RULE_CFG_V42)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOSDEnable) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(byOSDEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCurDetectType) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(byCurDetectType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInterferenceSuppression) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(byInterferenceSuppression) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOSDPoint) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(struOSDPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataUploadCycle) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(byDataUploadCycle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySECUploadEnable) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(bySECUploadEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEmailDayReport) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(byEmailDayReport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEmailWeekReport) as usize - ptr as usize }, + 19usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(byEmailWeekReport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEmailMonthReport) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(byEmailMonthReport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEmailYearReport) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(byEmailYearReport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPolygon) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(struPolygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEnterDirection) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(struEnterDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDayStartTime) as usize - ptr as usize }, + 352usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(struDayStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNightStartTime) as usize - ptr as usize }, + 360usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(struNightStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmHandleType) as usize - ptr as usize }, + 368usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(struAlarmHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetecteSensitivity) as usize - ptr as usize }, + 700usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(byDetecteSensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGenerateSpeedSpace) as usize - ptr as usize }, + 701usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(byGenerateSpeedSpace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGenerateSpeedTime) as usize - ptr as usize }, + 702usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(byGenerateSpeedTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCountSpeed) as usize - ptr as usize }, + 703usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(byCountSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetecteType) as usize - ptr as usize }, + 704usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(byDetecteType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTargetSizeCorrect) as usize - ptr as usize }, + 705usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(byTargetSizeCorrect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamOverlayRuleInfos) as usize - ptr as usize }, + 706usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(byStreamOverlayRuleInfos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 707usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLine) as usize - ptr as usize }, + 708usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(struLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHeightFilterEnable) as usize - ptr as usize }, + 724usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(byHeightFilterEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectThreshold) as usize - ptr as usize }, + 725usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(byDetectThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAidedTrackEnabled) as usize - ptr as usize }, + 726usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(byAidedTrackEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes4) as usize - ptr as usize }, + 727usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(byRes4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fHeightFilter) as usize - ptr as usize }, + 728usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(fHeightFilter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCalibrateType) as usize - ptr as usize }, + 732usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(byCalibrateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCountingType) as usize - ptr as usize }, + 733usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(byCountingType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySignalType) as usize - ptr as usize }, + 734usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(bySignalType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRS485TransmissionEnabled) as usize - ptr as usize }, + 735usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(byRS485TransmissionEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fTiltAngle) as usize - ptr as usize }, + 736usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(fTiltAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fHeelAngle) as usize - ptr as usize }, + 740usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(fHeelAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fHeight) as usize - ptr as usize }, + 744usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(fHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCountPolygon) as usize - ptr as usize }, + 748usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(struCountPolygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAutoCalibPolygon) as usize - ptr as usize }, + 832usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(struAutoCalibPolygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDailyResetTime) as usize - ptr as usize }, + 916usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(struDailyResetTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPolyLine) as usize - ptr as usize }, + 924usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(struPolyLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 956usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RULE_CFG_V42), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PDC_RULE_CFG_V42 = tagNET_DVR_PDC_RULE_CFG_V42; +pub type LPNET_DVR_PDC_RULE_CFG_V42 = *mut tagNET_DVR_PDC_RULE_CFG_V42; +#[doc = " IPC5.1.7 ������ͳ�ƹ��� End 2014-03-21"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRIAL_VERSION_CFG { + pub dwSize: DWORD, + pub wReserveTime: WORD, + pub byRes: [BYTE; 62usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRIAL_VERSION_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_TRIAL_VERSION_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TRIAL_VERSION_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRIAL_VERSION_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wReserveTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRIAL_VERSION_CFG), + "::", + stringify!(wReserveTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRIAL_VERSION_CFG), + "::", + stringify!(byRes) + ) + ); +} +#[doc = " IPC5.1.7 ������ͳ�ƹ��� End 2014-03-21"] +pub type NET_DVR_TRIAL_VERSION_CFG = tagNET_DVR_TRIAL_VERSION_CFG; +#[doc = " IPC5.1.7 ������ͳ�ƹ��� End 2014-03-21"] +pub type LPNET_DVR_TRIAL_VERSION_CFG = *mut tagNET_DVR_TRIAL_VERSION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SYN_CHANNEL_NAME_PARAM { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SYN_CHANNEL_NAME_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_SYN_CHANNEL_NAME_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SYN_CHANNEL_NAME_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SYN_CHANNEL_NAME_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SYN_CHANNEL_NAME_PARAM), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SYN_CHANNEL_NAME_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SYN_CHANNEL_NAME_PARAM = tagNET_DVR_SYN_CHANNEL_NAME_PARAM; +pub type LPNET_DVR_SYN_CHANNEL_NAME_PARAM = *mut tagNET_DVR_SYN_CHANNEL_NAME_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RESET_COUNTER_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byMode: BYTE, + pub byRes1: [BYTE; 2usize], + pub struTime: [NET_DVR_TIME_EX; 7usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RESET_COUNTER_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_DVR_RESET_COUNTER_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RESET_COUNTER_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RESET_COUNTER_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RESET_COUNTER_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RESET_COUNTER_CFG), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RESET_COUNTER_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RESET_COUNTER_CFG), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RESET_COUNTER_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RESET_COUNTER_CFG = tagNET_DVR_RESET_COUNTER_CFG; +pub type LPNET_DVR_RESET_COUNTER_CFG = *mut tagNET_DVR_RESET_COUNTER_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VCA_CTRLINFO_COND { + pub dwSize: DWORD, + pub struStreamInfo: NET_DVR_STREAM_INFO, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VCA_CTRLINFO_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 140usize, + concat!("Size of: ", stringify!(tagNET_DVR_VCA_CTRLINFO_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VCA_CTRLINFO_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_CTRLINFO_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_CTRLINFO_COND), + "::", + stringify!(struStreamInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_CTRLINFO_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VCA_CTRLINFO_COND = tagNET_DVR_VCA_CTRLINFO_COND; +pub type LPNET_DVR_VCA_CTRLINFO_COND = *mut tagNET_DVR_VCA_CTRLINFO_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VCA_CTRLINFO_CFG { + pub dwSize: DWORD, + pub byVCAEnable: BYTE, + pub byVCAType: BYTE, + pub byStreamWithVCA: BYTE, + pub byMode: BYTE, + pub byControlType: BYTE, + pub byRes1: [BYTE; 3usize], + pub wRelatedChannel: [WORD; 4usize], + pub byRes: [BYTE; 72usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VCA_CTRLINFO_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_DVR_VCA_CTRLINFO_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VCA_CTRLINFO_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_CTRLINFO_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVCAEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_CTRLINFO_CFG), + "::", + stringify!(byVCAEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVCAType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_CTRLINFO_CFG), + "::", + stringify!(byVCAType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamWithVCA) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_CTRLINFO_CFG), + "::", + stringify!(byStreamWithVCA) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_CTRLINFO_CFG), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byControlType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_CTRLINFO_CFG), + "::", + stringify!(byControlType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_CTRLINFO_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRelatedChannel) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_CTRLINFO_CFG), + "::", + stringify!(wRelatedChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_CTRLINFO_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VCA_CTRLINFO_CFG = tagNET_DVR_VCA_CTRLINFO_CFG; +pub type LPNET_DVR_VCA_CTRLINFO_CFG = *mut tagNET_DVR_VCA_CTRLINFO_CFG; +pub const tagPDC_PARAM_KEY_HUMAN_GENERATE_RATE: tagPDC_PARAM_KEY = 50; +pub const tagPDC_PARAM_KEY_DETECT_SENSITIVE: tagPDC_PARAM_KEY = 51; +pub type tagPDC_PARAM_KEY = ::std::os::raw::c_uint; +pub use self::tagPDC_PARAM_KEY as PDC_PARAM_KEY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PDC_TARGET_INFO { + pub dwTargetID: DWORD, + pub struTargetRect: NET_VCA_RECT, + pub byRes1: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PDC_TARGET_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28usize, + concat!("Size of: ", stringify!(tagNET_DVR_PDC_TARGET_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PDC_TARGET_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTargetID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_TARGET_INFO), + "::", + stringify!(dwTargetID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTargetRect) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_TARGET_INFO), + "::", + stringify!(struTargetRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_TARGET_INFO), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_PDC_TARGET_INFO = tagNET_DVR_PDC_TARGET_INFO; +pub type LPNET_DVR_PDC_TARGET_INFO = *mut tagNET_DVR_PDC_TARGET_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PDC_TARGET_IN_FRAME { + pub byTargetNum: BYTE, + pub byRes1: [BYTE; 3usize], + pub struTargetInfo: [NET_DVR_PDC_TARGET_INFO; 30usize], + pub byRes2: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PDC_TARGET_IN_FRAME() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 852usize, + concat!("Size of: ", stringify!(tagNET_DVR_PDC_TARGET_IN_FRAME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PDC_TARGET_IN_FRAME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTargetNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_TARGET_IN_FRAME), + "::", + stringify!(byTargetNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_TARGET_IN_FRAME), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTargetInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_TARGET_IN_FRAME), + "::", + stringify!(struTargetInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 844usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_TARGET_IN_FRAME), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PDC_TARGET_IN_FRAME = tagNET_DVR_PDC_TARGET_IN_FRAME; +pub type LPNET_DVR_PDC_TARGET_IN_FRAME = *mut tagNET_DVR_PDC_TARGET_IN_FRAME; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_PDC_ALRAM_INFO { + pub dwSize: DWORD, + pub byMode: BYTE, + pub byChannel: BYTE, + #[doc = " IPC5.1.7 �������� Begin 2014-03-21"] + pub bySmart: BYTE, + pub byRes1: BYTE, + #[doc = " IPC5.1.7 �������� End 2014-03-21"] + pub struDevInfo: NET_VCA_DEV_INFO, + pub uStatModeParam: tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1, + pub dwLeaveNum: DWORD, + pub dwEnterNum: DWORD, + pub byBrokenNetHttp: BYTE, + pub byRes3: BYTE, + pub wDevInfoIvmsChannelEx: WORD, + pub dwPassingNum: DWORD, + pub dwChildLeaveNum: DWORD, + pub dwChildEnterNum: DWORD, + pub dwDuplicatePeople: DWORD, + pub dwXmlLen: DWORD, + pub pXmlBuf: *mut ::std::os::raw::c_char, + pub byRes2: [BYTE; 8usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1 { + pub struStatFrame: tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1__bindgen_ty_1, + pub struStatTime: tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1__bindgen_ty_2, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1__bindgen_ty_1 { + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub byTimeDiffFlag: BYTE, + pub cTimeDifferenceH: ::std::os::raw::c_char, + pub cTimeDifferenceM: ::std::os::raw::c_char, + pub byRes: [BYTE; 89usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 100usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeDiffFlag) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byTimeDiffFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceH) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(cTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceM) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(cTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1__bindgen_ty_2 { + pub tmStart: NET_DVR_TIME, + pub tmEnd: NET_DVR_TIME, + pub byTimeDifferenceFlag: BYTE, + pub cStartTimeDifferenceH: ::std::os::raw::c_char, + pub cStartTimeDifferenceM: ::std::os::raw::c_char, + pub cStopTimeDifferenceH: ::std::os::raw::c_char, + pub cStopTimeDifferenceM: ::std::os::raw::c_char, + pub byRes: [BYTE; 87usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 140usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).tmStart) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(tmStart) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).tmEnd) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(tmEnd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeDifferenceFlag) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byTimeDifferenceFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStartTimeDifferenceH) as usize - ptr as usize }, + 49usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(cStartTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStartTimeDifferenceM) as usize - ptr as usize }, + 50usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(cStartTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStopTimeDifferenceH) as usize - ptr as usize }, + 51usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(cStopTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStopTimeDifferenceM) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(cStopTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 53usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byRes) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 140usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStatFrame) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1), + "::", + stringify!(struStatFrame) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStatTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO__bindgen_ty_1), + "::", + stringify!(struStatTime) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PDC_ALRAM_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 344usize, + concat!("Size of: ", stringify!(tagNET_DVR_PDC_ALRAM_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PDC_ALRAM_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySmart) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO), + "::", + stringify!(bySmart) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uStatModeParam) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO), + "::", + stringify!(uStatModeParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLeaveNum) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO), + "::", + stringify!(dwLeaveNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnterNum) as usize - ptr as usize }, + 300usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO), + "::", + stringify!(dwEnterNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrokenNetHttp) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO), + "::", + stringify!(byBrokenNetHttp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 305usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevInfoIvmsChannelEx) as usize - ptr as usize }, + 306usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO), + "::", + stringify!(wDevInfoIvmsChannelEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPassingNum) as usize - ptr as usize }, + 308usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO), + "::", + stringify!(dwPassingNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChildLeaveNum) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO), + "::", + stringify!(dwChildLeaveNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChildEnterNum) as usize - ptr as usize }, + 316usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO), + "::", + stringify!(dwChildEnterNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDuplicatePeople) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO), + "::", + stringify!(dwDuplicatePeople) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwXmlLen) as usize - ptr as usize }, + 324usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO), + "::", + stringify!(dwXmlLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pXmlBuf) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO), + "::", + stringify!(pXmlBuf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 336usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_ALRAM_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PDC_ALRAM_INFO = tagNET_DVR_PDC_ALRAM_INFO; +pub type LPNET_DVR_PDC_ALRAM_INFO = *mut tagNET_DVR_PDC_ALRAM_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PDC_QUERY { + pub tmStart: NET_DVR_TIME, + pub tmEnd: NET_DVR_TIME, + pub dwLeaveNum: DWORD, + pub dwEnterNum: DWORD, + pub byRes1: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PDC_QUERY() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 312usize, + concat!("Size of: ", stringify!(tagNET_DVR_PDC_QUERY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PDC_QUERY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).tmStart) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY), + "::", + stringify!(tmStart) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).tmEnd) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY), + "::", + stringify!(tmEnd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLeaveNum) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY), + "::", + stringify!(dwLeaveNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnterNum) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY), + "::", + stringify!(dwEnterNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_PDC_QUERY = tagNET_DVR_PDC_QUERY; +pub type LPNET_DVR_PDC_QUERY = *mut tagNET_DVR_PDC_QUERY; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_POSITION_RULE_CFG { + pub dwSize: DWORD, + pub struPtzPosition: NET_DVR_PTZ_POSITION, + pub struVcaRuleCfg: NET_VCA_RULECFG, + pub byRes2: [BYTE; 80usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_POSITION_RULE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 3316usize, + concat!("Size of: ", stringify!(tagNET_DVR_POSITION_RULE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_POSITION_RULE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSITION_RULE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPtzPosition) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSITION_RULE_CFG), + "::", + stringify!(struPtzPosition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaRuleCfg) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSITION_RULE_CFG), + "::", + stringify!(struVcaRuleCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 3236usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSITION_RULE_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_POSITION_RULE_CFG = tagNET_DVR_POSITION_RULE_CFG; +pub type LPNET_DVR_POSITION_RULE_CFG = *mut tagNET_DVR_POSITION_RULE_CFG; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_POSITION_RULE_CFG_V41 { + pub dwSize: DWORD, + pub struPtzPosition: NET_DVR_PTZ_POSITION, + pub struVcaRuleCfg: NET_VCA_RULECFG_V41, + pub byTrackEnable: BYTE, + pub byRes1: BYTE, + pub wTrackDuration: WORD, + pub byRes2: [BYTE; 76usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_POSITION_RULE_CFG_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 5172usize, + concat!("Size of: ", stringify!(tagNET_DVR_POSITION_RULE_CFG_V41)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_POSITION_RULE_CFG_V41) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSITION_RULE_CFG_V41), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPtzPosition) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSITION_RULE_CFG_V41), + "::", + stringify!(struPtzPosition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaRuleCfg) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSITION_RULE_CFG_V41), + "::", + stringify!(struVcaRuleCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrackEnable) as usize - ptr as usize }, + 5092usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSITION_RULE_CFG_V41), + "::", + stringify!(byTrackEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5093usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSITION_RULE_CFG_V41), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTrackDuration) as usize - ptr as usize }, + 5094usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSITION_RULE_CFG_V41), + "::", + stringify!(wTrackDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 5096usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSITION_RULE_CFG_V41), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_POSITION_RULE_CFG_V41 = tagNET_DVR_POSITION_RULE_CFG_V41; +pub type LPNET_DVR_POSITION_RULE_CFG_V41 = *mut tagNET_DVR_POSITION_RULE_CFG_V41; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LIMIT_ANGLE { + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub struUp: NET_DVR_PTZPOS, + pub struDown: NET_DVR_PTZPOS, + pub struLeft: NET_DVR_PTZPOS, + pub struRight: NET_DVR_PTZPOS, + pub byRes2: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LIMIT_ANGLE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_LIMIT_ANGLE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LIMIT_ANGLE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LIMIT_ANGLE), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LIMIT_ANGLE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struUp) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LIMIT_ANGLE), + "::", + stringify!(struUp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDown) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LIMIT_ANGLE), + "::", + stringify!(struDown) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLeft) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LIMIT_ANGLE), + "::", + stringify!(struLeft) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRight) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LIMIT_ANGLE), + "::", + stringify!(struRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LIMIT_ANGLE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_LIMIT_ANGLE = tagNET_DVR_LIMIT_ANGLE; +pub type LPNET_DVR_LIMIT_ANGLE = *mut tagNET_DVR_LIMIT_ANGLE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_POSITION_INDEX { + pub byIndex: BYTE, + pub byRes1: BYTE, + pub wDwell: WORD, + pub byRes2: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_POSITION_INDEX() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_POSITION_INDEX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_POSITION_INDEX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIndex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSITION_INDEX), + "::", + stringify!(byIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSITION_INDEX), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDwell) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSITION_INDEX), + "::", + stringify!(wDwell) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSITION_INDEX), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_POSITION_INDEX = tagNET_DVR_POSITION_INDEX; +pub type LPNET_DVR_POSITION_INDEX = *mut tagNET_DVR_POSITION_INDEX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_POSITION_TRACK_CFG { + pub dwSize: DWORD, + pub byNum: BYTE, + pub byRes1: [BYTE; 3usize], + pub struPositionIndex: [NET_DVR_POSITION_INDEX; 10usize], + pub byRes2: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_POSITION_TRACK_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 96usize, + concat!("Size of: ", stringify!(tagNET_DVR_POSITION_TRACK_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_POSITION_TRACK_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSITION_TRACK_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSITION_TRACK_CFG), + "::", + stringify!(byNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSITION_TRACK_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPositionIndex) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSITION_TRACK_CFG), + "::", + stringify!(struPositionIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSITION_TRACK_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_POSITION_TRACK_CFG = tagNET_DVR_POSITION_TRACK_CFG; +pub type LPNET_DVR_POSITION_TRACK_CFG = *mut tagNET_DVR_POSITION_TRACK_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PATROL_SCENE_INFO { + pub wDwell: WORD, + pub byPositionID: BYTE, + pub byRes: [BYTE; 5usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PATROL_SCENE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_PATROL_SCENE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PATROL_SCENE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDwell) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PATROL_SCENE_INFO), + "::", + stringify!(wDwell) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPositionID) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PATROL_SCENE_INFO), + "::", + stringify!(byPositionID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PATROL_SCENE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PATROL_SCENE_INFO = tagNET_DVR_PATROL_SCENE_INFO; +pub type LPNET_DVR_PATROL_SCENE_INFO = *mut tagNET_DVR_PATROL_SCENE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PATROL_TRACKCFG { + pub dwSize: DWORD, + pub struPatrolSceneInfo: [NET_DVR_PATROL_SCENE_INFO; 10usize], + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PATROL_TRACKCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 100usize, + concat!("Size of: ", stringify!(tagNET_DVR_PATROL_TRACKCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PATROL_TRACKCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PATROL_TRACKCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPatrolSceneInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PATROL_TRACKCFG), + "::", + stringify!(struPatrolSceneInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PATROL_TRACKCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PATROL_TRACKCFG = tagNET_DVR_PATROL_TRACKCFG; +pub type LPNET_DVR_PATROL_TRACKCFG = *mut tagNET_DVR_PATROL_TRACKCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRACK_PARAMCFG { + pub dwSize: DWORD, + pub wAlarmDelayTime: WORD, + pub wTrackHoldTime: WORD, + pub byTrackMode: BYTE, + pub byPreDirection: BYTE, + pub byTrackSmooth: BYTE, + pub byZoomAdjust: BYTE, + pub byMaxTrackZoom: BYTE, + pub byStopTrackWhenFindFace: BYTE, + pub byStopTrackThreshold: BYTE, + pub byRes: [BYTE; 9usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRACK_PARAMCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_DVR_TRACK_PARAMCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TRACK_PARAMCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_PARAMCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAlarmDelayTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_PARAMCFG), + "::", + stringify!(wAlarmDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTrackHoldTime) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_PARAMCFG), + "::", + stringify!(wTrackHoldTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrackMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_PARAMCFG), + "::", + stringify!(byTrackMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPreDirection) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_PARAMCFG), + "::", + stringify!(byPreDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrackSmooth) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_PARAMCFG), + "::", + stringify!(byTrackSmooth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZoomAdjust) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_PARAMCFG), + "::", + stringify!(byZoomAdjust) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMaxTrackZoom) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_PARAMCFG), + "::", + stringify!(byMaxTrackZoom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStopTrackWhenFindFace) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_PARAMCFG), + "::", + stringify!(byStopTrackWhenFindFace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStopTrackThreshold) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_PARAMCFG), + "::", + stringify!(byStopTrackThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRACK_PARAMCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TRACK_PARAMCFG = tagNET_DVR_TRACK_PARAMCFG; +pub type LPNET_DVR_TRACK_PARAMCFG = *mut tagNET_DVR_TRACK_PARAMCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DOME_MOVEMENT_PARAM { + pub wMaxZoom: WORD, + pub byRes: [BYTE; 42usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DOME_MOVEMENT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_DOME_MOVEMENT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DOME_MOVEMENT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMaxZoom) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOME_MOVEMENT_PARAM), + "::", + stringify!(wMaxZoom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOME_MOVEMENT_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DOME_MOVEMENT_PARAM = tagNET_DVR_DOME_MOVEMENT_PARAM; +pub type LPNET_DVR_DOME_MOVEMENT_PARAM = *mut tagNET_DVR_DOME_MOVEMENT_PARAM; +pub const tagTRAFFIC_AID_TYPE_CONGESTION: tagTRAFFIC_AID_TYPE = 1; +pub const tagTRAFFIC_AID_TYPE_PARKING: tagTRAFFIC_AID_TYPE = 2; +pub const tagTRAFFIC_AID_TYPE_INVERSE: tagTRAFFIC_AID_TYPE = 4; +pub const tagTRAFFIC_AID_TYPE_PEDESTRIAN: tagTRAFFIC_AID_TYPE = 8; +pub const tagTRAFFIC_AID_TYPE_DEBRIS: tagTRAFFIC_AID_TYPE = 16; +pub const tagTRAFFIC_AID_TYPE_SMOKE: tagTRAFFIC_AID_TYPE = 32; +pub const tagTRAFFIC_AID_TYPE_OVERLINE: tagTRAFFIC_AID_TYPE = 64; +pub const tagTRAFFIC_AID_TYPE_VEHICLE_CONTROL_LIST: tagTRAFFIC_AID_TYPE = 128; +pub const tagTRAFFIC_AID_TYPE_SPEED: tagTRAFFIC_AID_TYPE = 256; +pub const tagTRAFFIC_AID_TYPE_LANECHANGE: tagTRAFFIC_AID_TYPE = 512; +pub const tagTRAFFIC_AID_TYPE_TURNAROUND: tagTRAFFIC_AID_TYPE = 1024; +pub const tagTRAFFIC_AID_TYPE_VEHICLE_OCCUPANCY_NONVEHICLE: tagTRAFFIC_AID_TYPE = 2048; +pub const tagTRAFFIC_AID_TYPE_GASSER: tagTRAFFIC_AID_TYPE = 4096; +pub const tagTRAFFIC_AID_TYPE_ROADBLOCK: tagTRAFFIC_AID_TYPE = 8192; +pub const tagTRAFFIC_AID_TYPE_CONSTRUCTION: tagTRAFFIC_AID_TYPE = 16384; +pub const tagTRAFFIC_AID_TYPE_TRAFFIC_ACCIDENT: tagTRAFFIC_AID_TYPE = 32768; +pub const tagTRAFFIC_AID_TYPE_PARALLEL_PARKING: tagTRAFFIC_AID_TYPE = 65536; +pub const tagTRAFFIC_AID_TYPE_FOG_DETECTION: tagTRAFFIC_AID_TYPE = 131072; +pub const tagTRAFFIC_AID_TYPE_OCCUPY_EMERGENCY_LANE: tagTRAFFIC_AID_TYPE = 262144; +pub const tagTRAFFIC_AID_TYPE_CONFLAGRATION: tagTRAFFIC_AID_TYPE = 524288; +pub const tagTRAFFIC_AID_TYPE_TFS_MANUAL_TRIGGER: tagTRAFFIC_AID_TYPE = 1048576; +pub const tagTRAFFIC_AID_TYPE_LOADING_DOCK_TRIGGER_UPLOAD: tagTRAFFIC_AID_TYPE = 2097152; +pub const tagTRAFFIC_AID_TYPE_OCCUPY_OVERTAKING_LANE: tagTRAFFIC_AID_TYPE = 4194304; +pub const tagTRAFFIC_AID_TYPE_PROHIBITION_MARK_VIOLATION: tagTRAFFIC_AID_TYPE = 8388608; +pub const tagTRAFFIC_AID_TYPE_CHECK_POINT: tagTRAFFIC_AID_TYPE = 16777216; +pub const tagTRAFFIC_AID_TYPE_SUDDEN_SPEED_DROP: tagTRAFFIC_AID_TYPE = 33554432; +pub const tagTRAFFIC_AID_TYPE_SLOW_MOVING: tagTRAFFIC_AID_TYPE = 67108864; +pub type tagTRAFFIC_AID_TYPE = ::std::os::raw::c_uint; +pub use self::tagTRAFFIC_AID_TYPE as TRAFFIC_AID_TYPE; +pub const tagTRAFFIC_SCENE_MODE_FREEWAY: tagTRAFFIC_SCENE_MODE = 0; +pub const tagTRAFFIC_SCENE_MODE_TUNNEL: tagTRAFFIC_SCENE_MODE = 1; +pub const tagTRAFFIC_SCENE_MODE_BRIDGE: tagTRAFFIC_SCENE_MODE = 2; +pub type tagTRAFFIC_SCENE_MODE = ::std::os::raw::c_uint; +pub use self::tagTRAFFIC_SCENE_MODE as TRAFFIC_SCENE_MODE; +pub const tagITS_ABILITY_TYPE_ITS_CONGESTION_ABILITY: tagITS_ABILITY_TYPE = 1; +pub const tagITS_ABILITY_TYPE_ITS_PARKING_ABILITY: tagITS_ABILITY_TYPE = 2; +pub const tagITS_ABILITY_TYPE_ITS_INVERSE_ABILITY: tagITS_ABILITY_TYPE = 4; +pub const tagITS_ABILITY_TYPE_ITS_PEDESTRIAN_ABILITY: tagITS_ABILITY_TYPE = 8; +pub const tagITS_ABILITY_TYPE_ITS_DEBRIS_ABILITY: tagITS_ABILITY_TYPE = 16; +pub const tagITS_ABILITY_TYPE_ITS_SMOKE_ABILITY: tagITS_ABILITY_TYPE = 32; +pub const tagITS_ABILITY_TYPE_ITS_OVERLINE_ABILITY: tagITS_ABILITY_TYPE = 64; +pub const tagITS_ABILITY_TYPE_ITS_VEHICLE_CONTROL_LIST_ABILITY: tagITS_ABILITY_TYPE = 128; +pub const tagITS_ABILITY_TYPE_ITS_SPEED_ABILITY: tagITS_ABILITY_TYPE = 256; +pub const tagITS_ABILITY_TYPE_ITS_LANECHANGE_ABILITY: tagITS_ABILITY_TYPE = 512; +pub const tagITS_ABILITY_TYPE_ITS_TURNAROUND_ABILITY: tagITS_ABILITY_TYPE = 1024; +pub const tagITS_ABILITY_TYPE_ITS_LANE_VOLUME_ABILITY: tagITS_ABILITY_TYPE = 65536; +pub const tagITS_ABILITY_TYPE_ITS_LANE_VELOCITY_ABILITY: tagITS_ABILITY_TYPE = 131072; +pub const tagITS_ABILITY_TYPE_ITS_TIME_HEADWAY_ABILITY: tagITS_ABILITY_TYPE = 262144; +pub const tagITS_ABILITY_TYPE_ITS_SPACE_HEADWAY_ABILITY: tagITS_ABILITY_TYPE = 524288; +pub const tagITS_ABILITY_TYPE_ITS_TIME_OCCUPANCY_RATIO_ABILITY: tagITS_ABILITY_TYPE = 1048576; +pub const tagITS_ABILITY_TYPE_ITS_SPACE_OCCUPANCY_RATIO_ABILITY: tagITS_ABILITY_TYPE = 2097152; +pub const tagITS_ABILITY_TYPE_ITS_LANE_QUEUE_ABILITY: tagITS_ABILITY_TYPE = 4194304; +pub const tagITS_ABILITY_TYPE_ITS_VEHICLE_TYPE_ABILITY: tagITS_ABILITY_TYPE = 8388608; +pub const tagITS_ABILITY_TYPE_ITS_TRAFFIC_STATE_ABILITY: tagITS_ABILITY_TYPE = 16777216; +pub type tagITS_ABILITY_TYPE = ::std::os::raw::c_uint; +pub use self::tagITS_ABILITY_TYPE as ITS_ABILITY_TYPE; +pub const tagITS_TPS_TYPE_LANE_VOLUME: tagITS_TPS_TYPE = 1; +pub const tagITS_TPS_TYPE_LANE_VELOCITY: tagITS_TPS_TYPE = 2; +pub const tagITS_TPS_TYPE_TIME_HEADWAY: tagITS_TPS_TYPE = 4; +pub const tagITS_TPS_TYPE_SPACE_HEADWAY: tagITS_TPS_TYPE = 8; +pub const tagITS_TPS_TYPE_TIME_OCCUPANCY_RATIO: tagITS_TPS_TYPE = 16; +pub const tagITS_TPS_TYPE_SPACE_OCCUPANCY_RATIO: tagITS_TPS_TYPE = 32; +pub const tagITS_TPS_TYPE_QUEUE: tagITS_TPS_TYPE = 64; +pub const tagITS_TPS_TYPE_VEHICLE_TYPE: tagITS_TPS_TYPE = 128; +pub const tagITS_TPS_TYPE_TRAFFIC_STATE: tagITS_TPS_TYPE = 256; +pub type tagITS_TPS_TYPE = ::std::os::raw::c_uint; +pub use self::tagITS_TPS_TYPE as ITS_TPS_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REGION_LIST { + pub dwSize: DWORD, + pub byNum: BYTE, + pub byRes1: [BYTE; 3usize], + pub struPolygon: [NET_VCA_POLYGON; 8usize], + pub byRes2: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REGION_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 700usize, + concat!("Size of: ", stringify!(tagNET_DVR_REGION_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_REGION_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_LIST), + "::", + stringify!(byNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_LIST), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPolygon) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_LIST), + "::", + stringify!(struPolygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 680usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_LIST), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_REGION_LIST = tagNET_DVR_REGION_LIST; +pub type LPNET_DVR_REGION_LIST = *mut tagNET_DVR_REGION_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DIRECTION { + pub struStartPoint: NET_VCA_POINT, + pub struEndPoint: NET_VCA_POINT, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DIRECTION() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_DIRECTION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DIRECTION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartPoint) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECTION), + "::", + stringify!(struStartPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndPoint) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECTION), + "::", + stringify!(struEndPoint) + ) + ); +} +pub type NET_DVR_DIRECTION = tagNET_DVR_DIRECTION; +pub type LPNET_DVR_DIRECTION = *mut tagNET_DVR_DIRECTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ONE_LANE { + pub byEnable: BYTE, + pub byRes1: [BYTE; 11usize], + pub byLaneName: [BYTE; 32usize], + pub struFlowDirection: NET_DVR_DIRECTION, + pub struPolygon: NET_VCA_POLYGON, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ONE_LANE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!("Size of: ", stringify!(tagNET_DVR_ONE_LANE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ONE_LANE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_LANE), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_LANE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneName) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_LANE), + "::", + stringify!(byLaneName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFlowDirection) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_LANE), + "::", + stringify!(struFlowDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPolygon) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_LANE), + "::", + stringify!(struPolygon) + ) + ); +} +pub type NET_DVR_ONE_LANE = tagNET_DVR_ONE_LANE; +pub type LPNET_DVR_ONE_LANE = *mut tagNET_DVR_ONE_LANE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LANE_CFG { + pub dwSize: DWORD, + pub struLane: [NET_DVR_ONE_LANE; 8usize], + pub byRes1: [BYTE; 40usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LANE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1196usize, + concat!("Size of: ", stringify!(tagNET_DVR_LANE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LANE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLane) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_CFG), + "::", + stringify!(struLane) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_CFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_LANE_CFG = tagNET_DVR_LANE_CFG; +pub type LPNET_DVR_LANE_CFG = *mut tagNET_DVR_LANE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AID_PARAM { + pub wParkingDuration: WORD, + pub wPedestrianDuration: WORD, + pub wDebrisDuration: WORD, + pub wCongestionLength: WORD, + pub wCongestionDuration: WORD, + pub wInverseDuration: WORD, + pub wInverseDistance: WORD, + pub wInverseAngleTolerance: WORD, + pub wIllegalParkingTime: WORD, + pub wIllegalParkingPicNum: WORD, + pub byMergePic: BYTE, + pub byRes1: [BYTE; 23usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AID_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_AID_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AID_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wParkingDuration) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_PARAM), + "::", + stringify!(wParkingDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPedestrianDuration) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_PARAM), + "::", + stringify!(wPedestrianDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDebrisDuration) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_PARAM), + "::", + stringify!(wDebrisDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCongestionLength) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_PARAM), + "::", + stringify!(wCongestionLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCongestionDuration) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_PARAM), + "::", + stringify!(wCongestionDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInverseDuration) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_PARAM), + "::", + stringify!(wInverseDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInverseDistance) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_PARAM), + "::", + stringify!(wInverseDistance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInverseAngleTolerance) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_PARAM), + "::", + stringify!(wInverseAngleTolerance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wIllegalParkingTime) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_PARAM), + "::", + stringify!(wIllegalParkingTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wIllegalParkingPicNum) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_PARAM), + "::", + stringify!(wIllegalParkingPicNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMergePic) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_PARAM), + "::", + stringify!(byMergePic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_PARAM), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_AID_PARAM = tagNET_DVR_AID_PARAM; +pub type LPNET_DVR_AID_PARAM = *mut tagNET_DVR_AID_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ONE_AID_RULE { + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub byRuleName: [BYTE; 32usize], + pub dwEventType: DWORD, + pub struSizeFilter: NET_VCA_SIZE_FILTER, + pub struPolygon: NET_VCA_POLYGON, + pub struAIDParam: NET_DVR_AID_PARAM, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 2usize]; 7usize], + pub struHandleType: NET_DVR_HANDLEEXCEPTION_V30, + pub byRelRecordChan: [BYTE; 64usize], + pub byRes2: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ONE_AID_RULE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 444usize, + concat!("Size of: ", stringify!(tagNET_DVR_ONE_AID_RULE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ONE_AID_RULE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_AID_RULE), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_AID_RULE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_AID_RULE), + "::", + stringify!(byRuleName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEventType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_AID_RULE), + "::", + stringify!(dwEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSizeFilter) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_AID_RULE), + "::", + stringify!(struSizeFilter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPolygon) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_AID_RULE), + "::", + stringify!(struPolygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAIDParam) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_AID_RULE), + "::", + stringify!(struAIDParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_AID_RULE), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHandleType) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_AID_RULE), + "::", + stringify!(struHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelRecordChan) as usize - ptr as usize }, + 360usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_AID_RULE), + "::", + stringify!(byRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 424usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_AID_RULE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ONE_AID_RULE = tagNET_DVR_ONE_AID_RULE; +pub type LPNET_DVR_ONE_AID_RULE = *mut tagNET_DVR_ONE_AID_RULE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AID_RULECFG { + pub dwSize: DWORD, + pub byPicProType: BYTE, + pub byRes1: [BYTE; 3usize], + pub struPictureParam: NET_DVR_JPEGPARA, + pub struOneAIDRule: [NET_DVR_ONE_AID_RULE; 8usize], + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AID_RULECFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 3596usize, + concat!("Size of: ", stringify!(tagNET_DVR_AID_RULECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AID_RULECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_RULECFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicProType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_RULECFG), + "::", + stringify!(byPicProType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_RULECFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPictureParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_RULECFG), + "::", + stringify!(struPictureParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOneAIDRule) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_RULECFG), + "::", + stringify!(struOneAIDRule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 3564usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_RULECFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_AID_RULECFG = tagNET_DVR_AID_RULECFG; +pub type LPNET_DVR_AID_RULECFG = *mut tagNET_DVR_AID_RULECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ONE_AID_RULE_V41 { + pub byEnable: BYTE, + pub byLaneNo: BYTE, + pub byRes1: [BYTE; 2usize], + pub byRuleName: [BYTE; 32usize], + pub dwEventType: DWORD, + pub struSizeFilter: NET_VCA_SIZE_FILTER, + pub struPolygon: NET_VCA_POLYGON, + pub struAIDParam: NET_DVR_AID_PARAM, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub struHandleType: NET_DVR_HANDLEEXCEPTION_V30, + pub byRelRecordChan: [BYTE; 128usize], + pub byRes2: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ONE_AID_RULE_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 716usize, + concat!("Size of: ", stringify!(tagNET_DVR_ONE_AID_RULE_V41)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ONE_AID_RULE_V41)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_AID_RULE_V41), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNo) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_AID_RULE_V41), + "::", + stringify!(byLaneNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_AID_RULE_V41), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_AID_RULE_V41), + "::", + stringify!(byRuleName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEventType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_AID_RULE_V41), + "::", + stringify!(dwEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSizeFilter) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_AID_RULE_V41), + "::", + stringify!(struSizeFilter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPolygon) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_AID_RULE_V41), + "::", + stringify!(struPolygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAIDParam) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_AID_RULE_V41), + "::", + stringify!(struAIDParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_AID_RULE_V41), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHandleType) as usize - ptr as usize }, + 428usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_AID_RULE_V41), + "::", + stringify!(struHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelRecordChan) as usize - ptr as usize }, + 528usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_AID_RULE_V41), + "::", + stringify!(byRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 656usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_AID_RULE_V41), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ONE_AID_RULE_V41 = tagNET_DVR_ONE_AID_RULE_V41; +pub type LPNET_DVR_ONE_AID_RULE_V41 = *mut tagNET_DVR_ONE_AID_RULE_V41; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AID_RULECFG_V41 { + pub dwSize: DWORD, + pub byPicProType: BYTE, + pub byRes1: [BYTE; 3usize], + pub struPictureParam: NET_DVR_JPEGPARA, + pub struAIDRule: [NET_DVR_ONE_AID_RULE_V41; 8usize], + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AID_RULECFG_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 5868usize, + concat!("Size of: ", stringify!(tagNET_DVR_AID_RULECFG_V41)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AID_RULECFG_V41)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_RULECFG_V41), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicProType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_RULECFG_V41), + "::", + stringify!(byPicProType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_RULECFG_V41), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPictureParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_RULECFG_V41), + "::", + stringify!(struPictureParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAIDRule) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_RULECFG_V41), + "::", + stringify!(struAIDRule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 5740usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_RULECFG_V41), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_AID_RULECFG_V41 = tagNET_DVR_AID_RULECFG_V41; +pub type LPNET_DVR_AID_RULECFG_V41 = *mut tagNET_DVR_AID_RULECFG_V41; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ONE_TPS_RULE { + pub byEnable: BYTE, + pub byLaneID: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwCalcType: DWORD, + pub struSizeFilter: NET_VCA_SIZE_FILTER, + pub struVitrualLoop: NET_VCA_POLYGON, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 2usize]; 7usize], + pub struHandleType: NET_DVR_HANDLEEXCEPTION_V30, + pub byRes2: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ONE_TPS_RULE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 304usize, + concat!("Size of: ", stringify!(tagNET_DVR_ONE_TPS_RULE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ONE_TPS_RULE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_TPS_RULE), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneID) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_TPS_RULE), + "::", + stringify!(byLaneID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_TPS_RULE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCalcType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_TPS_RULE), + "::", + stringify!(dwCalcType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSizeFilter) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_TPS_RULE), + "::", + stringify!(struSizeFilter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVitrualLoop) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_TPS_RULE), + "::", + stringify!(struVitrualLoop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_TPS_RULE), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHandleType) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_TPS_RULE), + "::", + stringify!(struHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 284usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_TPS_RULE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ONE_TPS_RULE = tagNET_DVR_ONE_TPS_RULE; +pub type LPNET_DVR_ONE_TPS_RULE = *mut tagNET_DVR_ONE_TPS_RULE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TPS_RULECFG { + pub dwSize: DWORD, + pub struOneTpsRule: [NET_DVR_ONE_TPS_RULE; 8usize], + pub byRes2: [BYTE; 40usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TPS_RULECFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2476usize, + concat!("Size of: ", stringify!(tagNET_DVR_TPS_RULECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TPS_RULECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_RULECFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOneTpsRule) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_RULECFG), + "::", + stringify!(struOneTpsRule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 2436usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_RULECFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_TPS_RULECFG = tagNET_DVR_TPS_RULECFG; +pub type LPNET_DVR_TPS_RULECFG = *mut tagNET_DVR_TPS_RULECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ONE_TPS_RULE_V41 { + pub byEnable: BYTE, + pub byLaneID: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwCalcType: DWORD, + pub struSizeFilter: NET_VCA_SIZE_FILTER, + pub struVitrualLoop: NET_VCA_POLYGON, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub struHandleType: NET_DVR_HANDLEEXCEPTION_V30, + pub byRes2: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ONE_TPS_RULE_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(tagNET_DVR_ONE_TPS_RULE_V41)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ONE_TPS_RULE_V41)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_TPS_RULE_V41), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneID) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_TPS_RULE_V41), + "::", + stringify!(byLaneID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_TPS_RULE_V41), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCalcType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_TPS_RULE_V41), + "::", + stringify!(dwCalcType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSizeFilter) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_TPS_RULE_V41), + "::", + stringify!(struSizeFilter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVitrualLoop) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_TPS_RULE_V41), + "::", + stringify!(struVitrualLoop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_TPS_RULE_V41), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHandleType) as usize - ptr as usize }, + 352usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_TPS_RULE_V41), + "::", + stringify!(struHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 452usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_TPS_RULE_V41), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ONE_TPS_RULE_V41 = tagNET_DVR_ONE_TPS_RULE_V41; +pub type LPNET_DVR_ONE_TPS_RULE_V41 = *mut tagNET_DVR_ONE_TPS_RULE_V41; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TPS_RULECFG_V41 { + pub dwSize: DWORD, + pub struOneTpsRule: [NET_DVR_ONE_TPS_RULE_V41; 8usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TPS_RULECFG_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4228usize, + concat!("Size of: ", stringify!(tagNET_DVR_TPS_RULECFG_V41)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TPS_RULECFG_V41)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_RULECFG_V41), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOneTpsRule) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_RULECFG_V41), + "::", + stringify!(struOneTpsRule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_RULECFG_V41), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TPS_RULECFG_V41 = tagNET_DVR_TPS_RULECFG_V41; +pub type LPNET_DVR_TPS_RULECFG_V41 = *mut tagNET_DVR_TPS_RULECFG_V41; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_CONGESTION: tagTRAFFIC_AID_TYPE_EX = 1; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_PARKING: tagTRAFFIC_AID_TYPE_EX = 2; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_INVERSE: tagTRAFFIC_AID_TYPE_EX = 3; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_PEDESTRIAN: tagTRAFFIC_AID_TYPE_EX = 4; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_DEBRIS: tagTRAFFIC_AID_TYPE_EX = 5; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_SMOKE: tagTRAFFIC_AID_TYPE_EX = 6; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_OVERLINE: tagTRAFFIC_AID_TYPE_EX = 7; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_VEHICLE_CONTROL_LIST: tagTRAFFIC_AID_TYPE_EX = 8; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_SPEED: tagTRAFFIC_AID_TYPE_EX = 9; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_LANECHANGE: tagTRAFFIC_AID_TYPE_EX = 10; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_TURNAROUND: tagTRAFFIC_AID_TYPE_EX = 11; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_VEHICLE_OCCUPANCY_NONVEHICLE: + tagTRAFFIC_AID_TYPE_EX = 12; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_GASSER: tagTRAFFIC_AID_TYPE_EX = 13; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_ROADBLOCK: tagTRAFFIC_AID_TYPE_EX = 14; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_CONSTRUCTION: tagTRAFFIC_AID_TYPE_EX = 15; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_TRAFFIC_ACCIDENT: tagTRAFFIC_AID_TYPE_EX = 16; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_PARALLEL_PARKING: tagTRAFFIC_AID_TYPE_EX = 17; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_FOG_DETECTION: tagTRAFFIC_AID_TYPE_EX = 18; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_OCCUPY_EMERGENCY_LANE: tagTRAFFIC_AID_TYPE_EX = 19; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_CONFLAGRATION: tagTRAFFIC_AID_TYPE_EX = 20; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_TFS_MANUAL_TRIGGER: tagTRAFFIC_AID_TYPE_EX = 21; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_LOADING_DOCK_TRIGGER_UPLOAD: tagTRAFFIC_AID_TYPE_EX = + 22; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_OCCUPY_OVERTAKING_LANE: tagTRAFFIC_AID_TYPE_EX = 23; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_PROHIBITION_MARK_VIOLATION: tagTRAFFIC_AID_TYPE_EX = + 24; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_CHECK_POINT: tagTRAFFIC_AID_TYPE_EX = 25; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_SUDDEN_SPEED_DROP: tagTRAFFIC_AID_TYPE_EX = 26; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_SLOW_MOVING: tagTRAFFIC_AID_TYPE_EX = 27; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_NOT_KEEP_DISTANCE: tagTRAFFIC_AID_TYPE_EX = 28; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_NOT_SLOW_ZEBRA_CROSSING: tagTRAFFIC_AID_TYPE_EX = 29; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_OVER_TAKE_RIGHT_SIDE: tagTRAFFIC_AID_TYPE_EX = 30; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_LOW_SPEED: tagTRAFFIC_AID_TYPE_EX = 31; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_DRAG_RACING: tagTRAFFIC_AID_TYPE_EX = 32; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_CHANGE_LANE_CONTINUOUSLY: tagTRAFFIC_AID_TYPE_EX = + 33; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_S_SHARP_DRIVING: tagTRAFFIC_AID_TYPE_EX = 34; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_LARGE_VEHICLE_OCCUPY_LINE: tagTRAFFIC_AID_TYPE_EX = + 35; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_ROAD_GROUP: tagTRAFFIC_AID_TYPE_EX = 36; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_SINGLE_VEHICLE_BREAKDOWN: tagTRAFFIC_AID_TYPE_EX = + 37; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_BLACK_SMOKE_VEHICLE: tagTRAFFIC_AID_TYPE_EX = 38; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_VEHNOYIELDPEDEST: tagTRAFFIC_AID_TYPE_EX = 39; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_ILLEGALMANNEDVEH: tagTRAFFIC_AID_TYPE_EX = 40; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_ILLEGALMANNEDNONMOTORVEH: tagTRAFFIC_AID_TYPE_EX = + 41; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_UMBRELLATENTINSTALL: tagTRAFFIC_AID_TYPE_EX = 42; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_NONMOTORVEHONVEHLANE: tagTRAFFIC_AID_TYPE_EX = 43; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_WEARINGNOHELMET: tagTRAFFIC_AID_TYPE_EX = 44; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_PEDESTREDLIGHTRUNNING: tagTRAFFIC_AID_TYPE_EX = 45; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_PEDESTONNONMOTORVEHLANE: tagTRAFFIC_AID_TYPE_EX = 46; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_PEDESTONVEHLANE: tagTRAFFIC_AID_TYPE_EX = 47; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_OCCUPYDEDICATEDLANE: tagTRAFFIC_AID_TYPE_EX = 48; +pub const tagTRAFFIC_AID_TYPE_EX_ENUM_AID_TYPE_NOTDRIVEINDEDICATEDLANE: tagTRAFFIC_AID_TYPE_EX = 49; +pub type tagTRAFFIC_AID_TYPE_EX = ::std::os::raw::c_uint; +pub use self::tagTRAFFIC_AID_TYPE_EX as TRAFFIC_AID_TYPE_EX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AID_INFO { + pub byRuleID: BYTE, + pub byVisibilityLevel: BYTE, + pub byRes1: [BYTE; 2usize], + pub byRuleName: [BYTE; 32usize], + pub dwAIDType: DWORD, + pub struDirect: NET_DVR_DIRECTION, + pub bySpeedLimit: BYTE, + pub byCurrentSpeed: BYTE, + pub byVehicleEnterState: BYTE, + pub byState: BYTE, + pub byParkingID: [BYTE; 16usize], + pub dwAIDTypeEx: DWORD, + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AID_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 96usize, + concat!("Size of: ", stringify!(tagNET_DVR_AID_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AID_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_INFO), + "::", + stringify!(byRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVisibilityLevel) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_INFO), + "::", + stringify!(byVisibilityLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_INFO), + "::", + stringify!(byRuleName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAIDType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_INFO), + "::", + stringify!(dwAIDType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDirect) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_INFO), + "::", + stringify!(struDirect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpeedLimit) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_INFO), + "::", + stringify!(bySpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCurrentSpeed) as usize - ptr as usize }, + 57usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_INFO), + "::", + stringify!(byCurrentSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleEnterState) as usize - ptr as usize }, + 58usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_INFO), + "::", + stringify!(byVehicleEnterState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byState) as usize - ptr as usize }, + 59usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_INFO), + "::", + stringify!(byState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParkingID) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_INFO), + "::", + stringify!(byParkingID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAIDTypeEx) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_INFO), + "::", + stringify!(dwAIDTypeEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_AID_INFO = tagNET_DVR_AID_INFO; +pub type LPNET_DVR_AID_INFO = *mut tagNET_DVR_AID_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AID_ALARM { + pub dwSize: DWORD, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub struAIDInfo: NET_DVR_AID_INFO, + pub dwPicDataLen: DWORD, + pub pImage: *mut BYTE, + pub byRes: [BYTE; 40usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AID_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 312usize, + concat!("Size of: ", stringify!(tagNET_DVR_AID_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AID_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAIDInfo) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM), + "::", + stringify!(struAIDInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicDataLen) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM), + "::", + stringify!(dwPicDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pImage) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM), + "::", + stringify!(pImage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AID_ALARM = tagNET_DVR_AID_ALARM; +pub type LPNET_DVR_AID_ALARM = *mut tagNET_DVR_AID_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LANE_QUEUE { + pub struHead: NET_VCA_POINT, + pub struTail: NET_VCA_POINT, + pub dwLength: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LANE_QUEUE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_LANE_QUEUE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LANE_QUEUE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHead) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_QUEUE), + "::", + stringify!(struHead) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTail) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_QUEUE), + "::", + stringify!(struTail) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLength) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_QUEUE), + "::", + stringify!(dwLength) + ) + ); +} +pub type NET_DVR_LANE_QUEUE = tagNET_DVR_LANE_QUEUE; +pub type LPNET_DVR_LANE_QUEUE = *mut tagNET_DVR_LANE_QUEUE; +pub const tagTRAFFIC_DATA_VARY_TYPE_NO_VARY: tagTRAFFIC_DATA_VARY_TYPE = 0; +pub const tagTRAFFIC_DATA_VARY_TYPE_VEHICLE_ENTER: tagTRAFFIC_DATA_VARY_TYPE = 1; +pub const tagTRAFFIC_DATA_VARY_TYPE_VEHICLE_LEAVE: tagTRAFFIC_DATA_VARY_TYPE = 2; +pub const tagTRAFFIC_DATA_VARY_TYPE_UEUE_VARY: tagTRAFFIC_DATA_VARY_TYPE = 3; +pub type tagTRAFFIC_DATA_VARY_TYPE = ::std::os::raw::c_uint; +pub use self::tagTRAFFIC_DATA_VARY_TYPE as TRAFFIC_DATA_VARY_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LANE_PARAM { + pub byRuleName: [BYTE; 32usize], + pub byRuleID: BYTE, + pub byVaryType: BYTE, + pub byLaneType: BYTE, + pub byRes1: BYTE, + pub dwLaneVolume: DWORD, + pub dwLaneVelocity: DWORD, + pub dwTimeHeadway: DWORD, + pub dwSpaceHeadway: DWORD, + pub fSpaceOccupyRation: f32, + pub struLaneQueue: NET_DVR_LANE_QUEUE, + pub struRuleLocation: NET_VCA_POINT, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LANE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 116usize, + concat!("Size of: ", stringify!(tagNET_DVR_LANE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LANE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM), + "::", + stringify!(byRuleName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleID) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM), + "::", + stringify!(byRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVaryType) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM), + "::", + stringify!(byVaryType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneType) as usize - ptr as usize }, + 34usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM), + "::", + stringify!(byLaneType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 35usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLaneVolume) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM), + "::", + stringify!(dwLaneVolume) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLaneVelocity) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM), + "::", + stringify!(dwLaneVelocity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTimeHeadway) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM), + "::", + stringify!(dwTimeHeadway) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSpaceHeadway) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM), + "::", + stringify!(dwSpaceHeadway) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fSpaceOccupyRation) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM), + "::", + stringify!(fSpaceOccupyRation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneQueue) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM), + "::", + stringify!(struLaneQueue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRuleLocation) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM), + "::", + stringify!(struRuleLocation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_LANE_PARAM = tagNET_DVR_LANE_PARAM; +pub type LPNET_DVR_LANE_PARAM = *mut tagNET_DVR_LANE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TPS_INFO { + pub dwLanNum: DWORD, + pub struLaneParam: [NET_DVR_LANE_PARAM; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TPS_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 932usize, + concat!("Size of: ", stringify!(tagNET_DVR_TPS_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TPS_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLanNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_INFO), + "::", + stringify!(dwLanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneParam) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_INFO), + "::", + stringify!(struLaneParam) + ) + ); +} +pub type NET_DVR_TPS_INFO = tagNET_DVR_TPS_INFO; +pub type LPNET_DVR_TPS_INFO = *mut tagNET_DVR_TPS_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TPS_ALARM { + pub dwSize: DWORD, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub struTPSInfo: NET_DVR_TPS_INFO, + pub byRes1: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TPS_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1124usize, + concat!("Size of: ", stringify!(tagNET_DVR_TPS_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TPS_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ALARM), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ALARM), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ALARM), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTPSInfo) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ALARM), + "::", + stringify!(struTPSInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1092usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ALARM), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_TPS_ALARM = tagNET_DVR_TPS_ALARM; +pub type LPNET_DVR_TPS_ALARM = *mut tagNET_DVR_TPS_ALARM; +pub const tagTRAFFIC_DATA_VARY_TYPE_EX_ENUM_ENUM_TRAFFIC_VARY_NO: + tagTRAFFIC_DATA_VARY_TYPE_EX_ENUM = 0; +pub const tagTRAFFIC_DATA_VARY_TYPE_EX_ENUM_ENUM_TRAFFIC_VARY_VEHICLE_ENTER: + tagTRAFFIC_DATA_VARY_TYPE_EX_ENUM = 1; +pub const tagTRAFFIC_DATA_VARY_TYPE_EX_ENUM_ENUM_TRAFFIC_VARY_VEHICLE_LEAVE: + tagTRAFFIC_DATA_VARY_TYPE_EX_ENUM = 2; +pub const tagTRAFFIC_DATA_VARY_TYPE_EX_ENUM_ENUM_TRAFFIC_VARY_QUEUE: + tagTRAFFIC_DATA_VARY_TYPE_EX_ENUM = 4; +pub const tagTRAFFIC_DATA_VARY_TYPE_EX_ENUM_ENUM_TRAFFIC_VARY_STATISTIC: + tagTRAFFIC_DATA_VARY_TYPE_EX_ENUM = 8; +pub type tagTRAFFIC_DATA_VARY_TYPE_EX_ENUM = ::std::os::raw::c_uint; +pub use self::tagTRAFFIC_DATA_VARY_TYPE_EX_ENUM as TRAFFIC_DATA_VARY_TYPE_EX_ENUM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LANE_PARAM_V41 { + pub byRuleName: [BYTE; 32usize], + pub byRuleID: BYTE, + pub byLaneType: BYTE, + pub byTrafficState: BYTE, + pub byLaneNo: BYTE, + pub dwVaryType: DWORD, + pub dwTpsType: DWORD, + pub dwLaneVolume: DWORD, + pub dwLaneVelocity: DWORD, + pub dwTimeHeadway: DWORD, + pub dwSpaceHeadway: DWORD, + pub fSpaceOccupyRation: f32, + pub fTimeOccupyRation: f32, + pub dwLightVehicle: DWORD, + pub dwMidVehicle: DWORD, + pub dwHeavyVehicle: DWORD, + pub struLaneQueue: NET_DVR_LANE_QUEUE, + pub struRuleLocation: NET_VCA_POINT, + pub dwOversizeVehicle: DWORD, + pub byRes2: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LANE_PARAM_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 172usize, + concat!("Size of: ", stringify!(tagNET_DVR_LANE_PARAM_V41)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LANE_PARAM_V41)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM_V41), + "::", + stringify!(byRuleName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleID) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM_V41), + "::", + stringify!(byRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneType) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM_V41), + "::", + stringify!(byLaneType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrafficState) as usize - ptr as usize }, + 34usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM_V41), + "::", + stringify!(byTrafficState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNo) as usize - ptr as usize }, + 35usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM_V41), + "::", + stringify!(byLaneNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVaryType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM_V41), + "::", + stringify!(dwVaryType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTpsType) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM_V41), + "::", + stringify!(dwTpsType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLaneVolume) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM_V41), + "::", + stringify!(dwLaneVolume) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLaneVelocity) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM_V41), + "::", + stringify!(dwLaneVelocity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTimeHeadway) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM_V41), + "::", + stringify!(dwTimeHeadway) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSpaceHeadway) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM_V41), + "::", + stringify!(dwSpaceHeadway) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fSpaceOccupyRation) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM_V41), + "::", + stringify!(fSpaceOccupyRation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fTimeOccupyRation) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM_V41), + "::", + stringify!(fTimeOccupyRation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLightVehicle) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM_V41), + "::", + stringify!(dwLightVehicle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMidVehicle) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM_V41), + "::", + stringify!(dwMidVehicle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHeavyVehicle) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM_V41), + "::", + stringify!(dwHeavyVehicle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneQueue) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM_V41), + "::", + stringify!(struLaneQueue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRuleLocation) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM_V41), + "::", + stringify!(struRuleLocation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOversizeVehicle) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM_V41), + "::", + stringify!(dwOversizeVehicle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LANE_PARAM_V41), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_LANE_PARAM_V41 = tagNET_DVR_LANE_PARAM_V41; +pub type LPNET_DVR_LANE_PARAM_V41 = *mut tagNET_DVR_LANE_PARAM_V41; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TPS_INFO_V41 { + pub dwLanNum: DWORD, + pub struLaneParam: [NET_DVR_LANE_PARAM_V41; 8usize], + pub dwSceneID: DWORD, + pub byRes: [BYTE; 28usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TPS_INFO_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1412usize, + concat!("Size of: ", stringify!(tagNET_DVR_TPS_INFO_V41)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TPS_INFO_V41)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLanNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_INFO_V41), + "::", + stringify!(dwLanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneParam) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_INFO_V41), + "::", + stringify!(struLaneParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSceneID) as usize - ptr as usize }, + 1380usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_INFO_V41), + "::", + stringify!(dwSceneID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1384usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_INFO_V41), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TPS_INFO_V41 = tagNET_DVR_TPS_INFO_V41; +pub type LPNET_DVR_TPS_INFO_V41 = *mut tagNET_DVR_TPS_INFO_V41; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FACEDETECT_RULECFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byEventType: BYTE, + pub byUpLastAlarm: BYTE, + pub byUpFacePic: BYTE, + pub byRuleName: [BYTE; 32usize], + pub struVcaPolygon: NET_VCA_POLYGON, + pub byPicProType: BYTE, + pub bySensitivity: BYTE, + pub wDuration: WORD, + pub struPictureParam: NET_DVR_JPEGPARA, + pub struSizeFilter: NET_VCA_SIZE_FILTER, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 2usize]; 7usize], + pub struHandleType: NET_DVR_HANDLEEXCEPTION_V30, + pub byRelRecordChan: [BYTE; 64usize], + pub byPicRecordEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwEventTypeEx: DWORD, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FACEDETECT_RULECFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 428usize, + concat!("Size of: ", stringify!(tagNET_DVR_FACEDETECT_RULECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FACEDETECT_RULECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEventType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG), + "::", + stringify!(byEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUpLastAlarm) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG), + "::", + stringify!(byUpLastAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUpFacePic) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG), + "::", + stringify!(byUpFacePic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG), + "::", + stringify!(byRuleName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaPolygon) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG), + "::", + stringify!(struVcaPolygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicProType) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG), + "::", + stringify!(byPicProType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 125usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDuration) as usize - ptr as usize }, + 126usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG), + "::", + stringify!(wDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPictureParam) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG), + "::", + stringify!(struPictureParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSizeFilter) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG), + "::", + stringify!(struSizeFilter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHandleType) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG), + "::", + stringify!(struHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelRecordChan) as usize - ptr as usize }, + 324usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG), + "::", + stringify!(byRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicRecordEnable) as usize - ptr as usize }, + 388usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG), + "::", + stringify!(byPicRecordEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 389usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEventTypeEx) as usize - ptr as usize }, + 392usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG), + "::", + stringify!(dwEventTypeEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 396usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_FACEDETECT_RULECFG = tagNET_DVR_FACEDETECT_RULECFG; +pub type LPNET_DVR_FACEDETECT_RULECFG = *mut tagNET_DVR_FACEDETECT_RULECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FACE_PIPCFG { + pub byEnable: BYTE, + pub byBackChannel: BYTE, + pub byPosition: BYTE, + pub byPIPDiv: BYTE, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FACE_PIPCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_FACE_PIPCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FACE_PIPCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PIPCFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBackChannel) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PIPCFG), + "::", + stringify!(byBackChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPosition) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PIPCFG), + "::", + stringify!(byPosition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPIPDiv) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PIPCFG), + "::", + stringify!(byPIPDiv) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PIPCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FACE_PIPCFG = tagNET_DVR_FACE_PIPCFG; +pub type LPNET_DVR_FACE_PIPCFG = *mut tagNET_DVR_FACE_PIPCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FACEDETECT_RULECFG_V41 { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byEventType: BYTE, + pub byUpLastAlarm: BYTE, + pub byUpFacePic: BYTE, + pub byRuleName: [BYTE; 32usize], + pub struVcaPolygon: NET_VCA_POLYGON, + pub byPicProType: BYTE, + pub bySensitivity: BYTE, + pub wDuration: WORD, + pub struPictureParam: NET_DVR_JPEGPARA, + pub struSizeFilter: NET_VCA_SIZE_FILTER, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub struHandleType: NET_DVR_HANDLEEXCEPTION_V30, + pub byRelRecordChan: [BYTE; 64usize], + pub byPicRecordEnable: BYTE, + pub byRes1: BYTE, + pub wAlarmDelay: WORD, + pub struFacePIP: NET_DVR_FACE_PIPCFG, + pub wRelSnapChan: [WORD; 3usize], + pub byRes2: [BYTE; 2usize], + pub dwEventTypeEx: DWORD, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FACEDETECT_RULECFG_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 596usize, + concat!("Size of: ", stringify!(tagNET_DVR_FACEDETECT_RULECFG_V41)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG_V41) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG_V41), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG_V41), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEventType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG_V41), + "::", + stringify!(byEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUpLastAlarm) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG_V41), + "::", + stringify!(byUpLastAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUpFacePic) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG_V41), + "::", + stringify!(byUpFacePic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG_V41), + "::", + stringify!(byRuleName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaPolygon) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG_V41), + "::", + stringify!(struVcaPolygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicProType) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG_V41), + "::", + stringify!(byPicProType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 125usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG_V41), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDuration) as usize - ptr as usize }, + 126usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG_V41), + "::", + stringify!(wDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPictureParam) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG_V41), + "::", + stringify!(struPictureParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSizeFilter) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG_V41), + "::", + stringify!(struSizeFilter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG_V41), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHandleType) as usize - ptr as usize }, + 392usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG_V41), + "::", + stringify!(struHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelRecordChan) as usize - ptr as usize }, + 492usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG_V41), + "::", + stringify!(byRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicRecordEnable) as usize - ptr as usize }, + 556usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG_V41), + "::", + stringify!(byPicRecordEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 557usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG_V41), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAlarmDelay) as usize - ptr as usize }, + 558usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG_V41), + "::", + stringify!(wAlarmDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFacePIP) as usize - ptr as usize }, + 560usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG_V41), + "::", + stringify!(struFacePIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRelSnapChan) as usize - ptr as usize }, + 568usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG_V41), + "::", + stringify!(wRelSnapChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 574usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG_V41), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEventTypeEx) as usize - ptr as usize }, + 576usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG_V41), + "::", + stringify!(dwEventTypeEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 580usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_RULECFG_V41), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FACEDETECT_RULECFG_V41 = tagNET_DVR_FACEDETECT_RULECFG_V41; +pub type LPNET_DVR_FACEDETECT_RULECFG_V41 = *mut tagNET_DVR_FACEDETECT_RULECFG_V41; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FACEDETECT_ALARM { + pub dwSize: DWORD, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub byRuleName: [BYTE; 32usize], + pub struTargetInfo: NET_VCA_TARGET_INFO, + pub struDevInfo: NET_VCA_DEV_INFO, + pub dwPicDataLen: DWORD, + pub byAlarmPicType: BYTE, + pub byPanelChan: BYTE, + pub byRelAlarmPicNum: BYTE, + pub byRes1: BYTE, + pub dwFacePicDataLen: DWORD, + pub dwAlarmID: DWORD, + pub wDevInfoIvmsChannelEx: WORD, + pub byRes2: [BYTE; 42usize], + pub pFaceImage: *mut BYTE, + pub pImage: *mut BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FACEDETECT_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 296usize, + concat!("Size of: ", stringify!(tagNET_DVR_FACEDETECT_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FACEDETECT_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_ALARM), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_ALARM), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleName) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_ALARM), + "::", + stringify!(byRuleName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTargetInfo) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_ALARM), + "::", + stringify!(struTargetInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_ALARM), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicDataLen) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_ALARM), + "::", + stringify!(dwPicDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmPicType) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_ALARM), + "::", + stringify!(byAlarmPicType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPanelChan) as usize - ptr as usize }, + 221usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_ALARM), + "::", + stringify!(byPanelChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelAlarmPicNum) as usize - ptr as usize }, + 222usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_ALARM), + "::", + stringify!(byRelAlarmPicNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 223usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_ALARM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFacePicDataLen) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_ALARM), + "::", + stringify!(dwFacePicDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmID) as usize - ptr as usize }, + 228usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_ALARM), + "::", + stringify!(dwAlarmID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevInfoIvmsChannelEx) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_ALARM), + "::", + stringify!(wDevInfoIvmsChannelEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 234usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_ALARM), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pFaceImage) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_ALARM), + "::", + stringify!(pFaceImage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pImage) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECT_ALARM), + "::", + stringify!(pImage) + ) + ); +} +pub type NET_DVR_FACEDETECT_ALARM = tagNET_DVR_FACEDETECT_ALARM; +pub type LPNET_DVR_FACEDETECT_ALARM = *mut tagNET_DVR_FACEDETECT_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EVENT_PARAM_UNION { + pub uLen: [DWORD; 3usize], + pub dwHumanIn: DWORD, + pub fCrowdDensity: f32, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EVENT_PARAM_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_EVENT_PARAM_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EVENT_PARAM_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_PARAM_UNION), + "::", + stringify!(uLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHumanIn) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_PARAM_UNION), + "::", + stringify!(dwHumanIn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fCrowdDensity) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_PARAM_UNION), + "::", + stringify!(fCrowdDensity) + ) + ); +} +pub type NET_DVR_EVENT_PARAM_UNION = tagNET_DVR_EVENT_PARAM_UNION; +pub type LPNET_DVR_EVENT_PARAM_UNION = *mut tagNET_DVR_EVENT_PARAM_UNION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EVENT_INFO { + pub byRuleID: BYTE, + pub byRes: [BYTE; 3usize], + pub byRuleName: [BYTE; 32usize], + pub dwEventType: DWORD, + pub uEventParam: NET_DVR_EVENT_PARAM_UNION, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EVENT_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 60usize, + concat!("Size of: ", stringify!(tagNET_DVR_EVENT_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EVENT_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_INFO), + "::", + stringify!(byRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_INFO), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_INFO), + "::", + stringify!(byRuleName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEventType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_INFO), + "::", + stringify!(dwEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uEventParam) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_INFO), + "::", + stringify!(uEventParam) + ) + ); +} +pub type NET_DVR_EVENT_INFO = tagNET_DVR_EVENT_INFO; +pub type LPNET_DVR_EVENT_INFO = *mut tagNET_DVR_EVENT_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EVENT_INFO_LIST { + pub byNum: BYTE, + pub byRes1: [BYTE; 3usize], + pub struEventInfo: [NET_DVR_EVENT_INFO; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EVENT_INFO_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 484usize, + concat!("Size of: ", stringify!(tagNET_DVR_EVENT_INFO_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EVENT_INFO_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_INFO_LIST), + "::", + stringify!(byNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_INFO_LIST), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEventInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_INFO_LIST), + "::", + stringify!(struEventInfo) + ) + ); +} +pub type NET_DVR_EVENT_INFO_LIST = tagNET_DVR_EVENT_INFO_LIST; +pub type LPNET_DVR_EVENT_INFO_LIST = *mut tagNET_DVR_EVENT_INFO_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RULE_INFO_ALARM { + pub dwSize: DWORD, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub struEventInfoList: NET_DVR_EVENT_INFO_LIST, + pub byRes2: [BYTE; 40usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RULE_INFO_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 684usize, + concat!("Size of: ", stringify!(tagNET_DVR_RULE_INFO_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RULE_INFO_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RULE_INFO_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RULE_INFO_ALARM), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RULE_INFO_ALARM), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RULE_INFO_ALARM), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEventInfoList) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RULE_INFO_ALARM), + "::", + stringify!(struEventInfoList) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 644usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RULE_INFO_ALARM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_RULE_INFO_ALARM = tagNET_DVR_RULE_INFO_ALARM; +pub type LPNET_DVR_RULE_INFO_ALARM = *mut tagNET_DVR_RULE_INFO_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ONE_SCENE_TIME { + pub byActive: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwSceneID: DWORD, + pub struEffectiveTime: NET_DVR_SCHEDTIME, + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ONE_SCENE_TIME() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28usize, + concat!("Size of: ", stringify!(tagNET_DVR_ONE_SCENE_TIME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ONE_SCENE_TIME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byActive) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_SCENE_TIME), + "::", + stringify!(byActive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_SCENE_TIME), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSceneID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_SCENE_TIME), + "::", + stringify!(dwSceneID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEffectiveTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_SCENE_TIME), + "::", + stringify!(struEffectiveTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_SCENE_TIME), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ONE_SCENE_TIME = tagNET_DVR_ONE_SCENE_TIME; +pub type LPNET_DVR_ONE_SCENE_TIME = *mut tagNET_DVR_ONE_SCENE_TIME; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCENE_TIME_CFG { + pub dwSize: DWORD, + pub struSceneTime: [NET_DVR_ONE_SCENE_TIME; 16usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCENE_TIME_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 516usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCENE_TIME_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCENE_TIME_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENE_TIME_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSceneTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENE_TIME_CFG), + "::", + stringify!(struSceneTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 452usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENE_TIME_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCENE_TIME_CFG = tagNET_DVR_SCENE_TIME_CFG; +pub type LPNET_DVR_SCENE_TIME_CFG = *mut tagNET_DVR_SCENE_TIME_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ONE_SCENE_CFG_ { + pub byEnable: BYTE, + pub byDirection: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwSceneID: DWORD, + pub bySceneName: [BYTE; 32usize], + pub struPtzPos: NET_DVR_PTZPOS, + pub dwTrackTime: DWORD, + pub byRes2: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ONE_SCENE_CFG_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_ONE_SCENE_CFG_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ONE_SCENE_CFG_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_SCENE_CFG_), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDirection) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_SCENE_CFG_), + "::", + stringify!(byDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_SCENE_CFG_), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSceneID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_SCENE_CFG_), + "::", + stringify!(dwSceneID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySceneName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_SCENE_CFG_), + "::", + stringify!(bySceneName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPtzPos) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_SCENE_CFG_), + "::", + stringify!(struPtzPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTrackTime) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_SCENE_CFG_), + "::", + stringify!(dwTrackTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_SCENE_CFG_), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ONE_SCENE_CFG = tagNET_DVR_ONE_SCENE_CFG_; +pub type LPNET_DVR_ONE_SCENE_CFG = *mut tagNET_DVR_ONE_SCENE_CFG_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCENE_CFG { + pub dwSize: DWORD, + pub struSceneCfg: [NET_DVR_ONE_SCENE_CFG; 16usize], + pub byRes: [BYTE; 40usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCENE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1260usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCENE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCENE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSceneCfg) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENE_CFG), + "::", + stringify!(struSceneCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCENE_CFG = tagNET_DVR_SCENE_CFG; +pub type LPNET_DVR_SCENE_CFG = *mut tagNET_DVR_SCENE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCENE_COND { + pub dwSize: DWORD, + pub lChannel: LONG, + pub dwSceneID: DWORD, + pub byRes: [BYTE; 48usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCENE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 60usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCENE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCENE_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENE_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENE_COND), + "::", + stringify!(lChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSceneID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENE_COND), + "::", + stringify!(dwSceneID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENE_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCENE_COND = tagNET_DVR_SCENE_COND; +pub type LPNET_DVR_SCENE_COND = *mut tagNET_DVR_SCENE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FORENSICS_MODE { + pub dwSize: DWORD, + pub byMode: BYTE, + pub byRes: [BYTE; 23usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FORENSICS_MODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28usize, + concat!("Size of: ", stringify!(tagNET_DVR_FORENSICS_MODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FORENSICS_MODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FORENSICS_MODE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FORENSICS_MODE), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FORENSICS_MODE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FORENSICS_MODE = tagNET_DVR_FORENSICS_MODE; +pub type LPNET_DVR_FORENSICS_MODE = *mut tagNET_DVR_FORENSICS_MODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCENE_INFO_ { + pub dwSceneID: DWORD, + pub bySceneName: [BYTE; 32usize], + pub byDirection: BYTE, + pub byRes1: [BYTE; 3usize], + pub struPtzPos: NET_DVR_PTZPOS, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCENE_INFO_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 112usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCENE_INFO_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCENE_INFO_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSceneID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENE_INFO_), + "::", + stringify!(dwSceneID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySceneName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENE_INFO_), + "::", + stringify!(bySceneName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDirection) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENE_INFO_), + "::", + stringify!(byDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENE_INFO_), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPtzPos) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENE_INFO_), + "::", + stringify!(struPtzPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENE_INFO_), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SCENE_INFO = tagNET_DVR_SCENE_INFO_; +pub type LPNET_DVR_SCENE_INFO = *mut tagNET_DVR_SCENE_INFO_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AID_ALARM_V41 { + pub dwSize: DWORD, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub struAIDInfo: NET_DVR_AID_INFO, + pub struSceneInfo: NET_DVR_SCENE_INFO, + pub dwPicDataLen: DWORD, + pub pImage: *mut BYTE, + pub byDataType: BYTE, + pub byLaneNo: BYTE, + pub wMilliSecond: WORD, + pub byMonitoringSiteID: [BYTE; 48usize], + pub byDeviceID: [BYTE; 48usize], + pub dwXmlLen: DWORD, + pub pXmlBuf: *mut ::std::os::raw::c_char, + pub byTargetType: BYTE, + pub byRuleID: BYTE, + pub wDevInfoIvmsChannelEx: WORD, + pub byBrokenNetHttp: BYTE, + pub byRes: [BYTE; 3usize], + pub dwPlateSmallPicDataLen: DWORD, + pub pPlateSmallImage: *mut ::std::os::raw::c_char, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AID_ALARM_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 520usize, + concat!("Size of: ", stringify!(tagNET_DVR_AID_ALARM_V41)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AID_ALARM_V41)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM_V41), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM_V41), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM_V41), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM_V41), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAIDInfo) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM_V41), + "::", + stringify!(struAIDInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSceneInfo) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM_V41), + "::", + stringify!(struSceneInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicDataLen) as usize - ptr as usize }, + 368usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM_V41), + "::", + stringify!(dwPicDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pImage) as usize - ptr as usize }, + 376usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM_V41), + "::", + stringify!(pImage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataType) as usize - ptr as usize }, + 384usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM_V41), + "::", + stringify!(byDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNo) as usize - ptr as usize }, + 385usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM_V41), + "::", + stringify!(byLaneNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMilliSecond) as usize - ptr as usize }, + 386usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM_V41), + "::", + stringify!(wMilliSecond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonitoringSiteID) as usize - ptr as usize }, + 388usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM_V41), + "::", + stringify!(byMonitoringSiteID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 436usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM_V41), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwXmlLen) as usize - ptr as usize }, + 484usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM_V41), + "::", + stringify!(dwXmlLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pXmlBuf) as usize - ptr as usize }, + 488usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM_V41), + "::", + stringify!(pXmlBuf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTargetType) as usize - ptr as usize }, + 496usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM_V41), + "::", + stringify!(byTargetType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleID) as usize - ptr as usize }, + 497usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM_V41), + "::", + stringify!(byRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevInfoIvmsChannelEx) as usize - ptr as usize }, + 498usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM_V41), + "::", + stringify!(wDevInfoIvmsChannelEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrokenNetHttp) as usize - ptr as usize }, + 500usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM_V41), + "::", + stringify!(byBrokenNetHttp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 501usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM_V41), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlateSmallPicDataLen) as usize - ptr as usize }, + 504usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM_V41), + "::", + stringify!(dwPlateSmallPicDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPlateSmallImage) as usize - ptr as usize }, + 512usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AID_ALARM_V41), + "::", + stringify!(pPlateSmallImage) + ) + ); +} +pub type NET_DVR_AID_ALARM_V41 = tagNET_DVR_AID_ALARM_V41; +pub type LPNET_DVR_AID_ALARM_V41 = *mut tagNET_DVR_AID_ALARM_V41; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TPS_ALARM_V41 { + pub dwSize: DWORD, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub struTPSInfo: NET_DVR_TPS_INFO_V41, + pub byMonitoringSiteID: [BYTE; 48usize], + pub byDeviceID: [BYTE; 48usize], + pub dwStartTime: DWORD, + pub dwStopTime: DWORD, + pub byRes: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TPS_ALARM_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1700usize, + concat!("Size of: ", stringify!(tagNET_DVR_TPS_ALARM_V41)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TPS_ALARM_V41)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ALARM_V41), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ALARM_V41), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ALARM_V41), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ALARM_V41), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTPSInfo) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ALARM_V41), + "::", + stringify!(struTPSInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonitoringSiteID) as usize - ptr as usize }, + 1572usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ALARM_V41), + "::", + stringify!(byMonitoringSiteID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 1620usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ALARM_V41), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStartTime) as usize - ptr as usize }, + 1668usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ALARM_V41), + "::", + stringify!(dwStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStopTime) as usize - ptr as usize }, + 1672usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ALARM_V41), + "::", + stringify!(dwStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1676usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ALARM_V41), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TPS_ALARM_V41 = tagNET_DVR_TPS_ALARM_V41; +pub type LPNET_DVR_TPS_ALARM_V41 = *mut tagNET_DVR_TPS_ALARM_V41; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VCA_VERSION { + pub wMajorVersion: WORD, + pub wMinorVersion: WORD, + pub wRevisionNumber: WORD, + pub wBuildNumber: WORD, + pub wVersionYear: WORD, + pub byVersionMonth: BYTE, + pub byVersionDay: BYTE, + pub byType: BYTE, + pub byRes: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VCA_VERSION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_VCA_VERSION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VCA_VERSION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMajorVersion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_VERSION), + "::", + stringify!(wMajorVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMinorVersion) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_VERSION), + "::", + stringify!(wMinorVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRevisionNumber) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_VERSION), + "::", + stringify!(wRevisionNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBuildNumber) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_VERSION), + "::", + stringify!(wBuildNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wVersionYear) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_VERSION), + "::", + stringify!(wVersionYear) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVersionMonth) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_VERSION), + "::", + stringify!(byVersionMonth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVersionDay) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_VERSION), + "::", + stringify!(byVersionDay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_VERSION), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_VERSION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VCA_VERSION = tagNET_DVR_VCA_VERSION; +pub type LPNET_DVR_VCA_VERSION = *mut tagNET_DVR_VCA_VERSION; +#[doc = "����ʶ�� begin"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLATE_PARAM { + pub byPlateRecoMode: BYTE, + pub byBelive: BYTE, + pub byRes: [BYTE; 22usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLATE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLATE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PLATE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateRecoMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_PARAM), + "::", + stringify!(byPlateRecoMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBelive) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_PARAM), + "::", + stringify!(byBelive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_PARAM), + "::", + stringify!(byRes) + ) + ); +} +#[doc = "����ʶ�� begin"] +pub type NET_DVR_PALTE_PARAM = tagNET_DVR_PLATE_PARAM; +#[doc = "����ʶ�� begin"] +pub type LPNET_DVR_PALTE_PARAM = *mut tagNET_DVR_PLATE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLATECFG { + pub dwSize: DWORD, + pub dwEnable: DWORD, + pub byPicProType: BYTE, + pub byRes1: [BYTE; 3usize], + pub struPictureParam: NET_DVR_JPEGPARA, + pub struPlateParam: NET_DVR_PALTE_PARAM, + pub struHandleType: NET_DVR_HANDLEEXCEPTION, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 4usize]; 7usize], + pub byRelRecordChan: [BYTE; 16usize], + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLATECFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 196usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLATECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PLATECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATECFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATECFG), + "::", + stringify!(dwEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicProType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATECFG), + "::", + stringify!(byPicProType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATECFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPictureParam) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATECFG), + "::", + stringify!(struPictureParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateParam) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATECFG), + "::", + stringify!(struPlateParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHandleType) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATECFG), + "::", + stringify!(struHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATECFG), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelRecordChan) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATECFG), + "::", + stringify!(byRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATECFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PLATECFG = tagNET_DVR_PLATECFG; +pub type LPNET_DVR_PLATECFG = *mut tagNET_DVR_PLATECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLATE_INFO { + pub byPlateType: BYTE, + pub byColor: BYTE, + pub byBright: BYTE, + pub byLicenseLen: BYTE, + pub byEntireBelieve: BYTE, + pub byRegion: BYTE, + pub byCountry: BYTE, + pub byArea: BYTE, + pub byPlateSize: BYTE, + pub byAddInfoFlag: BYTE, + pub wCRIndex: WORD, + pub byRes: [BYTE; 4usize], + pub pAddInfoBuffer: *mut BYTE, + pub sPlateCategory: [::std::os::raw::c_char; 8usize], + pub dwXmlLen: DWORD, + pub pXmlBuf: *mut ::std::os::raw::c_char, + pub struPlateRect: NET_VCA_RECT, + pub sLicense: [::std::os::raw::c_char; 16usize], + pub byBelieve: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLATE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 96usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLATE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PLATE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_INFO), + "::", + stringify!(byPlateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byColor) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_INFO), + "::", + stringify!(byColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBright) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_INFO), + "::", + stringify!(byBright) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLicenseLen) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_INFO), + "::", + stringify!(byLicenseLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEntireBelieve) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_INFO), + "::", + stringify!(byEntireBelieve) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRegion) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_INFO), + "::", + stringify!(byRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCountry) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_INFO), + "::", + stringify!(byCountry) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byArea) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_INFO), + "::", + stringify!(byArea) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateSize) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_INFO), + "::", + stringify!(byPlateSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddInfoFlag) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_INFO), + "::", + stringify!(byAddInfoFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCRIndex) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_INFO), + "::", + stringify!(wCRIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_INFO), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pAddInfoBuffer) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_INFO), + "::", + stringify!(pAddInfoBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPlateCategory) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_INFO), + "::", + stringify!(sPlateCategory) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwXmlLen) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_INFO), + "::", + stringify!(dwXmlLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pXmlBuf) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_INFO), + "::", + stringify!(pXmlBuf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRect) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_INFO), + "::", + stringify!(struPlateRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLicense) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_INFO), + "::", + stringify!(sLicense) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBelieve) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_INFO), + "::", + stringify!(byBelieve) + ) + ); +} +pub type NET_DVR_PLATE_INFO = tagNET_DVR_PLATE_INFO; +pub type LPNET_DVR_PLATE_INFO = *mut tagNET_DVR_PLATE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLATERECO_RESULE { + pub dwSize: DWORD, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub struPlateInfo: NET_DVR_PLATE_INFO, + pub dwPicDataLen: DWORD, + pub dwRes: [DWORD; 4usize], + pub pImage: *mut BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLATERECO_RESULE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 288usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLATERECO_RESULE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PLATERECO_RESULE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATERECO_RESULE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATERECO_RESULE), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATERECO_RESULE), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATERECO_RESULE), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateInfo) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATERECO_RESULE), + "::", + stringify!(struPlateInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicDataLen) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATERECO_RESULE), + "::", + stringify!(dwPicDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRes) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATERECO_RESULE), + "::", + stringify!(dwRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pImage) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATERECO_RESULE), + "::", + stringify!(pImage) + ) + ); +} +pub type NET_DVR_PLATERECO_RESULE = tagNET_DVR_PLATERECO_RESULE; +pub type LPNET_DVR_PLATERECO_RESULE = *mut tagNET_DVR_PLATERECO_RESULE; +#[doc = "��Ƶ�ۺ�ƽ\u{328}"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_LOG_MATRIX { + pub strLogTime: NET_DVR_TIME, + pub dwMajorType: DWORD, + pub dwMinorType: DWORD, + pub sPanelUser: [BYTE; 16usize], + pub sNetUser: [BYTE; 16usize], + pub struRemoteHostAddr: NET_DVR_IPADDR, + pub dwParaType: DWORD, + pub dwChannel: DWORD, + pub dwDiskNumber: DWORD, + pub dwAlarmInPort: DWORD, + pub dwAlarmOutPort: DWORD, + pub dwInfoLen: DWORD, + pub byDevSequence: BYTE, + pub byMacAddr: [BYTE; 6usize], + pub sSerialNumber: [BYTE; 48usize], + pub sInfo: [::std::os::raw::c_char; 11785usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_LOG_MATRIX() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12072usize, + concat!("Size of: ", stringify!(NET_DVR_LOG_MATRIX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_LOG_MATRIX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strLogTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_MATRIX), + "::", + stringify!(strLogTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMajorType) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_MATRIX), + "::", + stringify!(dwMajorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMinorType) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_MATRIX), + "::", + stringify!(dwMinorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPanelUser) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_MATRIX), + "::", + stringify!(sPanelUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sNetUser) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_MATRIX), + "::", + stringify!(sNetUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRemoteHostAddr) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_MATRIX), + "::", + stringify!(struRemoteHostAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwParaType) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_MATRIX), + "::", + stringify!(dwParaType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 212usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_MATRIX), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDiskNumber) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_MATRIX), + "::", + stringify!(dwDiskNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmInPort) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_MATRIX), + "::", + stringify!(dwAlarmInPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmOutPort) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_MATRIX), + "::", + stringify!(dwAlarmOutPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInfoLen) as usize - ptr as usize }, + 228usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_MATRIX), + "::", + stringify!(dwInfoLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevSequence) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_MATRIX), + "::", + stringify!(byDevSequence) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMacAddr) as usize - ptr as usize }, + 233usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_MATRIX), + "::", + stringify!(byMacAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSerialNumber) as usize - ptr as usize }, + 239usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_MATRIX), + "::", + stringify!(sSerialNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sInfo) as usize - ptr as usize }, + 287usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_LOG_MATRIX), + "::", + stringify!(sInfo) + ) + ); +} +#[doc = "��Ƶ�ۺ�ƽ\u{328}"] +pub type LPNET_DVR_LOG_MATRIX = *mut NET_DVR_LOG_MATRIX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagVEDIOPLATLOG { + pub bySearchCondition: BYTE, + pub byDevSequence: BYTE, + pub sSerialNumber: [BYTE; 48usize], + pub byMacAddr: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_tagVEDIOPLATLOG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagVEDIOPLATLOG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagVEDIOPLATLOG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySearchCondition) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagVEDIOPLATLOG), + "::", + stringify!(bySearchCondition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevSequence) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagVEDIOPLATLOG), + "::", + stringify!(byDevSequence) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSerialNumber) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagVEDIOPLATLOG), + "::", + stringify!(sSerialNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMacAddr) as usize - ptr as usize }, + 50usize, + concat!( + "Offset of field: ", + stringify!(tagVEDIOPLATLOG), + "::", + stringify!(byMacAddr) + ) + ); +} +pub type NET_DVR_VEDIOPLATLOG = tagVEDIOPLATLOG; +pub type LPNET_DVR_VEDIOPLATLOG = *mut tagVEDIOPLATLOG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CODESYSTEMABILITY { + pub dwSize: DWORD, + pub dwAbilityVersion: DWORD, + pub dwSupportMaxVideoFrameRate: DWORD, + pub dwSupportRecordType: DWORD, + pub bySupportLinkMode: BYTE, + pub bySupportStringRow: BYTE, + pub bySupportHideNum: BYTE, + pub byRes1: BYTE, + pub byMainStreamSupportResolution: [BYTE; 8usize], + pub bySubStreamSupportResolution: [BYTE; 8usize], + pub byEventStreamSupportResolution: [BYTE; 8usize], + pub byNotSupportPreview: BYTE, + pub byNotSupportStorage: BYTE, + pub byRes2: [BYTE; 98usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CODESYSTEMABILITY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!("Size of: ", stringify!(tagNET_DVR_CODESYSTEMABILITY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CODESYSTEMABILITY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESYSTEMABILITY), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbilityVersion) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESYSTEMABILITY), + "::", + stringify!(dwAbilityVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSupportMaxVideoFrameRate) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESYSTEMABILITY), + "::", + stringify!(dwSupportMaxVideoFrameRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSupportRecordType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESYSTEMABILITY), + "::", + stringify!(dwSupportRecordType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportLinkMode) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESYSTEMABILITY), + "::", + stringify!(bySupportLinkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportStringRow) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESYSTEMABILITY), + "::", + stringify!(bySupportStringRow) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportHideNum) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESYSTEMABILITY), + "::", + stringify!(bySupportHideNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 19usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESYSTEMABILITY), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byMainStreamSupportResolution) as usize - ptr as usize + }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESYSTEMABILITY), + "::", + stringify!(byMainStreamSupportResolution) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).bySubStreamSupportResolution) as usize - ptr as usize + }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESYSTEMABILITY), + "::", + stringify!(bySubStreamSupportResolution) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byEventStreamSupportResolution) as usize - ptr as usize + }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESYSTEMABILITY), + "::", + stringify!(byEventStreamSupportResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNotSupportPreview) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESYSTEMABILITY), + "::", + stringify!(byNotSupportPreview) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNotSupportStorage) as usize - ptr as usize }, + 45usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESYSTEMABILITY), + "::", + stringify!(byNotSupportStorage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 46usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESYSTEMABILITY), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CODESYSTEMABILITY = tagNET_DVR_CODESYSTEMABILITY; +pub type LPNET_DVR_CODESYSTEMABILITY = *mut tagNET_DVR_CODESYSTEMABILITY; +#[doc = "ץ�Ļ�"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IO_INCFG { + pub dwSize: DWORD, + pub byIoInStatus: BYTE, + pub byRes: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IO_INCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_IO_INCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IO_INCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IO_INCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIoInStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IO_INCFG), + "::", + stringify!(byIoInStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IO_INCFG), + "::", + stringify!(byRes) + ) + ); +} +#[doc = "ץ�Ļ�"] +pub type NET_DVR_IO_INCFG = tagNET_DVR_IO_INCFG; +#[doc = "ץ�Ļ�"] +pub type LPNET_DVR_IO_INCFG = *mut tagNET_DVR_IO_INCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IO_OUTCFG { + pub dwSize: DWORD, + pub byDefaultStatus: BYTE, + pub byIoOutStatus: BYTE, + pub wAheadTime: WORD, + pub dwTimePluse: DWORD, + pub dwTimeDelay: DWORD, + pub byFreqMulti: BYTE, + pub byDutyRate: BYTE, + pub byRes: [BYTE; 2usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IO_OUTCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_IO_OUTCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IO_OUTCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IO_OUTCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDefaultStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IO_OUTCFG), + "::", + stringify!(byDefaultStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIoOutStatus) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IO_OUTCFG), + "::", + stringify!(byIoOutStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAheadTime) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IO_OUTCFG), + "::", + stringify!(wAheadTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTimePluse) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IO_OUTCFG), + "::", + stringify!(dwTimePluse) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTimeDelay) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IO_OUTCFG), + "::", + stringify!(dwTimeDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFreqMulti) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IO_OUTCFG), + "::", + stringify!(byFreqMulti) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDutyRate) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IO_OUTCFG), + "::", + stringify!(byDutyRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IO_OUTCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_IO_OUTCFG = tagNET_DVR_IO_OUTCFG; +pub type LPNET_DVR_IO_OUTCFG = *mut tagNET_DVR_IO_OUTCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FLASH_OUTCFG { + pub dwSize: DWORD, + pub byMode: BYTE, + pub byRelatedIoIn: BYTE, + pub byRecognizedLane: BYTE, + pub byDetectBrightness: BYTE, + pub byBrightnessThreld: BYTE, + pub byStartHour: BYTE, + pub byStartMinute: BYTE, + pub byEndHour: BYTE, + pub byEndMinute: BYTE, + pub byFlashLightEnable: BYTE, + pub byRes: [BYTE; 2usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FLASH_OUTCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_FLASH_OUTCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FLASH_OUTCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLASH_OUTCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLASH_OUTCFG), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedIoIn) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLASH_OUTCFG), + "::", + stringify!(byRelatedIoIn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecognizedLane) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLASH_OUTCFG), + "::", + stringify!(byRecognizedLane) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectBrightness) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLASH_OUTCFG), + "::", + stringify!(byDetectBrightness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrightnessThreld) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLASH_OUTCFG), + "::", + stringify!(byBrightnessThreld) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartHour) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLASH_OUTCFG), + "::", + stringify!(byStartHour) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartMinute) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLASH_OUTCFG), + "::", + stringify!(byStartMinute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEndHour) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLASH_OUTCFG), + "::", + stringify!(byEndHour) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEndMinute) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLASH_OUTCFG), + "::", + stringify!(byEndMinute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlashLightEnable) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLASH_OUTCFG), + "::", + stringify!(byFlashLightEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLASH_OUTCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FLASH_OUTCFG = tagNET_DVR_FLASH_OUTCFG; +pub type LPNET_DVR_FLASH_OUTCFG = *mut tagNET_DVR_FLASH_OUTCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LIGHTSNAPCFG { + pub dwSize: DWORD, + pub byLightIoIn: BYTE, + pub byTrigIoIn: BYTE, + pub byRelatedDriveWay: BYTE, + pub byTrafficLight: BYTE, + pub bySnapTimes1: BYTE, + pub bySnapTimes2: BYTE, + pub byRes1: [BYTE; 2usize], + pub wIntervalTime1: [WORD; 4usize], + pub wIntervalTime2: [WORD; 4usize], + pub byRecord: BYTE, + pub bySessionTimeout: BYTE, + pub byPreRecordTime: BYTE, + pub byVideoDelay: BYTE, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LIGHTSNAPCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(tagNET_DVR_LIGHTSNAPCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LIGHTSNAPCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LIGHTSNAPCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLightIoIn) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LIGHTSNAPCFG), + "::", + stringify!(byLightIoIn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrigIoIn) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LIGHTSNAPCFG), + "::", + stringify!(byTrigIoIn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedDriveWay) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LIGHTSNAPCFG), + "::", + stringify!(byRelatedDriveWay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrafficLight) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LIGHTSNAPCFG), + "::", + stringify!(byTrafficLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnapTimes1) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LIGHTSNAPCFG), + "::", + stringify!(bySnapTimes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnapTimes2) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LIGHTSNAPCFG), + "::", + stringify!(bySnapTimes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LIGHTSNAPCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wIntervalTime1) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LIGHTSNAPCFG), + "::", + stringify!(wIntervalTime1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wIntervalTime2) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LIGHTSNAPCFG), + "::", + stringify!(wIntervalTime2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecord) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LIGHTSNAPCFG), + "::", + stringify!(byRecord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySessionTimeout) as usize - ptr as usize }, + 29usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LIGHTSNAPCFG), + "::", + stringify!(bySessionTimeout) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPreRecordTime) as usize - ptr as usize }, + 30usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LIGHTSNAPCFG), + "::", + stringify!(byPreRecordTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoDelay) as usize - ptr as usize }, + 31usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LIGHTSNAPCFG), + "::", + stringify!(byVideoDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LIGHTSNAPCFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_LIGHTSNAPCFG = tagNET_DVR_LIGHTSNAPCFG; +pub type LPNET_DVR_LIGHTSNAPCFG = *mut tagNET_DVR_LIGHTSNAPCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MEASURESPEEDCFG { + pub dwSize: DWORD, + pub byTrigIo1: BYTE, + pub byTrigIo2: BYTE, + pub byRelatedDriveWay: BYTE, + pub byTestSpeedTimeOut: BYTE, + pub dwDistance: DWORD, + pub byCapSpeed: BYTE, + pub bySpeedLimit: BYTE, + pub bySnapTimes1: BYTE, + pub bySnapTimes2: BYTE, + pub wIntervalTime1: [WORD; 4usize], + pub wIntervalTime2: [WORD; 4usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MEASURESPEEDCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(tagNET_DVR_MEASURESPEEDCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MEASURESPEEDCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MEASURESPEEDCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrigIo1) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MEASURESPEEDCFG), + "::", + stringify!(byTrigIo1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrigIo2) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MEASURESPEEDCFG), + "::", + stringify!(byTrigIo2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedDriveWay) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MEASURESPEEDCFG), + "::", + stringify!(byRelatedDriveWay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTestSpeedTimeOut) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MEASURESPEEDCFG), + "::", + stringify!(byTestSpeedTimeOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDistance) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MEASURESPEEDCFG), + "::", + stringify!(dwDistance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCapSpeed) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MEASURESPEEDCFG), + "::", + stringify!(byCapSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpeedLimit) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MEASURESPEEDCFG), + "::", + stringify!(bySpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnapTimes1) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MEASURESPEEDCFG), + "::", + stringify!(bySnapTimes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnapTimes2) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MEASURESPEEDCFG), + "::", + stringify!(bySnapTimes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wIntervalTime1) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MEASURESPEEDCFG), + "::", + stringify!(wIntervalTime1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wIntervalTime2) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MEASURESPEEDCFG), + "::", + stringify!(wIntervalTime2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MEASURESPEEDCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MEASURESPEEDCFG = tagNET_DVR_MEASURESPEEDCFG; +pub type LPNET_DVR_MEASURESPEEDCFG = *mut tagNET_DVR_MEASURESPEEDCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CLOUDSTORAGE_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRes1: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CLOUDSTORAGE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_CLOUDSTORAGE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CLOUDSTORAGE_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUDSTORAGE_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUDSTORAGE_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUDSTORAGE_COND), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_CLOUDSTORAGE_COND = tagNET_DVR_CLOUDSTORAGE_COND; +pub type LPNET_DVR_CLOUDSTORAGE_COND = *mut tagNET_DVR_CLOUDSTORAGE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_POOLPARAM { + pub dwPoolID: DWORD, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_POOLPARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_POOLPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_POOLPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPoolID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POOLPARAM), + "::", + stringify!(dwPoolID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POOLPARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_POOLPARAM = tagNET_DVR_POOLPARAM; +pub type LPNET_DVR_POOLPARAM = *mut tagNET_DVR_POOLPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CLOUDSTORAGE_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes: [BYTE; 3usize], + pub struIP: NET_DVR_IPADDR, + pub wPort: WORD, + pub byRes1: [BYTE; 2usize], + pub szUser: [::std::os::raw::c_char; 48usize], + pub szPassword: [::std::os::raw::c_char; 48usize], + pub struPoolInfo: [NET_DVR_POOLPARAM; 16usize], + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CLOUDSTORAGE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 508usize, + concat!("Size of: ", stringify!(tagNET_DVR_CLOUDSTORAGE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CLOUDSTORAGE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUDSTORAGE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUDSTORAGE_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUDSTORAGE_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUDSTORAGE_CFG), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUDSTORAGE_CFG), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 154usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUDSTORAGE_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szUser) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUDSTORAGE_CFG), + "::", + stringify!(szUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szPassword) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUDSTORAGE_CFG), + "::", + stringify!(szPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPoolInfo) as usize - ptr as usize }, + 252usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUDSTORAGE_CFG), + "::", + stringify!(struPoolInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 380usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUDSTORAGE_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CLOUDSTORAGE_CFG = tagNET_DVR_CLOUDSTORAGE_CFG; +pub type LPNET_DVR_CLOUDSTORAGE_CFG = *mut tagNET_DVR_CLOUDSTORAGE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PARKLAMP_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byParkingIndex: BYTE, + pub byRes: [BYTE; 15usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PARKLAMP_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_DVR_PARKLAMP_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PARKLAMP_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKLAMP_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKLAMP_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParkingIndex) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKLAMP_COND), + "::", + stringify!(byParkingIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKLAMP_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PARKLAMP_COND = tagNET_DVR_PARKLAMP_COND; +pub type LPNET_DVR_PARKLAMP_COND = *mut tagNET_DVR_PARKLAMP_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PARKLAMP_INFOCFG { + pub dwSize: DWORD, + pub sLicense: [::std::os::raw::c_char; 16usize], + pub sParkingNo: [::std::os::raw::c_char; 16usize], + pub byLampFlicker: BYTE, + pub byLampColor: BYTE, + pub byStatus: BYTE, + pub byColorDepth: BYTE, + pub byColor: BYTE, + pub byVehicleLogoRecog: BYTE, + pub byRes: [BYTE; 250usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PARKLAMP_INFOCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 292usize, + concat!("Size of: ", stringify!(tagNET_DVR_PARKLAMP_INFOCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PARKLAMP_INFOCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKLAMP_INFOCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLicense) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKLAMP_INFOCFG), + "::", + stringify!(sLicense) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sParkingNo) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKLAMP_INFOCFG), + "::", + stringify!(sParkingNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLampFlicker) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKLAMP_INFOCFG), + "::", + stringify!(byLampFlicker) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLampColor) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKLAMP_INFOCFG), + "::", + stringify!(byLampColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKLAMP_INFOCFG), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byColorDepth) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKLAMP_INFOCFG), + "::", + stringify!(byColorDepth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byColor) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKLAMP_INFOCFG), + "::", + stringify!(byColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleLogoRecog) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKLAMP_INFOCFG), + "::", + stringify!(byVehicleLogoRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKLAMP_INFOCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PARKLAMP_INFOCFG = tagNET_DVR_PARKLAMP_INFOCFG; +pub type LPNET_DVR_PARKLAMP_INFOCFG = *mut tagNET_DVR_PARKLAMP_INFOCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIDEOEFFECT { + pub byBrightnessLevel: BYTE, + pub byContrastLevel: BYTE, + pub bySharpnessLevel: BYTE, + pub bySaturationLevel: BYTE, + pub byHueLevel: BYTE, + pub byEnableFunc: BYTE, + pub byLightInhibitLevel: BYTE, + pub byGrayLevel: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEOEFFECT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEOEFFECT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VIDEOEFFECT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrightnessLevel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOEFFECT), + "::", + stringify!(byBrightnessLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byContrastLevel) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOEFFECT), + "::", + stringify!(byContrastLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySharpnessLevel) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOEFFECT), + "::", + stringify!(bySharpnessLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySaturationLevel) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOEFFECT), + "::", + stringify!(bySaturationLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHueLevel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOEFFECT), + "::", + stringify!(byHueLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableFunc) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOEFFECT), + "::", + stringify!(byEnableFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLightInhibitLevel) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOEFFECT), + "::", + stringify!(byLightInhibitLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGrayLevel) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOEFFECT), + "::", + stringify!(byGrayLevel) + ) + ); +} +pub type NET_DVR_VIDEOEFFECT = tagNET_DVR_VIDEOEFFECT; +pub type LPNET_DVR_VIDEOEFFECT = *mut tagNET_DVR_VIDEOEFFECT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GAIN { + pub byGainLevel: BYTE, + pub byGainUserSet: BYTE, + pub byRes: [BYTE; 2usize], + pub dwMaxGainValue: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GAIN() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_GAIN)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GAIN)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGainLevel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GAIN), + "::", + stringify!(byGainLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGainUserSet) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GAIN), + "::", + stringify!(byGainUserSet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GAIN), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxGainValue) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GAIN), + "::", + stringify!(dwMaxGainValue) + ) + ); +} +pub type NET_DVR_GAIN = tagNET_DVR_GAIN; +pub type LPNET_DVR_GAIN = *mut tagNET_DVR_GAIN; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WHITEBALANCE { + pub byWhiteBalanceMode: BYTE, + pub byWhiteBalanceModeRGain: BYTE, + pub byWhiteBalanceModeBGain: BYTE, + pub byRes: [BYTE; 5usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WHITEBALANCE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_WHITEBALANCE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WHITEBALANCE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWhiteBalanceMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WHITEBALANCE), + "::", + stringify!(byWhiteBalanceMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWhiteBalanceModeRGain) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WHITEBALANCE), + "::", + stringify!(byWhiteBalanceModeRGain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWhiteBalanceModeBGain) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WHITEBALANCE), + "::", + stringify!(byWhiteBalanceModeBGain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WHITEBALANCE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WHITEBALANCE = tagNET_DVR_WHITEBALANCE; +pub type LPNET_DVR_WHITEBALANCE = *mut tagNET_DVR_WHITEBALANCE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EXPOSURE { + pub byExposureMode: BYTE, + pub byAutoApertureLevel: BYTE, + pub byRes: [BYTE; 2usize], + pub dwVideoExposureSet: DWORD, + pub dwExposureUserSet: DWORD, + pub dwRes: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXPOSURE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_EXPOSURE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EXPOSURE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExposureMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXPOSURE), + "::", + stringify!(byExposureMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAutoApertureLevel) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXPOSURE), + "::", + stringify!(byAutoApertureLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXPOSURE), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoExposureSet) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXPOSURE), + "::", + stringify!(dwVideoExposureSet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwExposureUserSet) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXPOSURE), + "::", + stringify!(dwExposureUserSet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXPOSURE), + "::", + stringify!(dwRes) + ) + ); +} +pub type NET_DVR_EXPOSURE = tagNET_DVR_EXPOSURE; +pub type LPNET_DVR_EXPOSURE = *mut tagNET_DVR_EXPOSURE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WDR { + pub byWDREnabled: BYTE, + pub byWDRLevel1: BYTE, + pub byWDRLevel2: BYTE, + pub byWDRContrastLevel: BYTE, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WDR() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_WDR)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WDR)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWDREnabled) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WDR), + "::", + stringify!(byWDREnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWDRLevel1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WDR), + "::", + stringify!(byWDRLevel1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWDRLevel2) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WDR), + "::", + stringify!(byWDRLevel2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWDRContrastLevel) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WDR), + "::", + stringify!(byWDRContrastLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WDR), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WDR = tagNET_DVR_WDR; +pub type LPNET_DVR_WDR = *mut tagNET_DVR_WDR; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WDR_CFG { + pub dwSize: DWORD, + pub struWDR: NET_DVR_WDR, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WDR_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_DVR_WDR_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WDR_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WDR_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWDR) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WDR_CFG), + "::", + stringify!(struWDR) + ) + ); +} +pub type NET_DVR_WDR_CFG = tagNET_DVR_WDR_CFG; +pub type LPNET_DVR_WDR_CFG = *mut tagNET_DVR_WDR_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DAYNIGHT { + pub byDayNightFilterType: BYTE, + pub bySwitchScheduleEnabled: BYTE, + pub byBeginTime: BYTE, + pub byEndTime: BYTE, + pub byDayToNightFilterLevel: BYTE, + pub byNightToDayFilterLevel: BYTE, + pub byDayNightFilterTime: BYTE, + pub byBeginTimeMin: BYTE, + pub byBeginTimeSec: BYTE, + pub byEndTimeMin: BYTE, + pub byEndTimeSec: BYTE, + pub byAlarmTrigState: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DAYNIGHT() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_DAYNIGHT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DAYNIGHT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDayNightFilterType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DAYNIGHT), + "::", + stringify!(byDayNightFilterType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySwitchScheduleEnabled) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DAYNIGHT), + "::", + stringify!(bySwitchScheduleEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBeginTime) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DAYNIGHT), + "::", + stringify!(byBeginTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEndTime) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DAYNIGHT), + "::", + stringify!(byEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDayToNightFilterLevel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DAYNIGHT), + "::", + stringify!(byDayToNightFilterLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNightToDayFilterLevel) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DAYNIGHT), + "::", + stringify!(byNightToDayFilterLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDayNightFilterTime) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DAYNIGHT), + "::", + stringify!(byDayNightFilterTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBeginTimeMin) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DAYNIGHT), + "::", + stringify!(byBeginTimeMin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBeginTimeSec) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DAYNIGHT), + "::", + stringify!(byBeginTimeSec) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEndTimeMin) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DAYNIGHT), + "::", + stringify!(byEndTimeMin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEndTimeSec) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DAYNIGHT), + "::", + stringify!(byEndTimeSec) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmTrigState) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DAYNIGHT), + "::", + stringify!(byAlarmTrigState) + ) + ); +} +pub type NET_DVR_DAYNIGHT = tagNET_DVR_DAYNIGHT; +pub type LPNET_DVR_DAYNIGHT = *mut tagNET_DVR_DAYNIGHT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GAMMACORRECT { + pub byGammaCorrectionEnabled: BYTE, + pub byGammaCorrectionLevel: BYTE, + pub byRes: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GAMMACORRECT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_GAMMACORRECT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GAMMACORRECT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGammaCorrectionEnabled) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GAMMACORRECT), + "::", + stringify!(byGammaCorrectionEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGammaCorrectionLevel) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GAMMACORRECT), + "::", + stringify!(byGammaCorrectionLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GAMMACORRECT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GAMMACORRECT = tagNET_DVR_GAMMACORRECT; +pub type LPNET_DVR_GAMMACORRECT = *mut tagNET_DVR_GAMMACORRECT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BACKLIGHT { + pub byBacklightMode: BYTE, + pub byBacklightLevel: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwPositionX1: DWORD, + pub dwPositionY1: DWORD, + pub dwPositionX2: DWORD, + pub dwPositionY2: DWORD, + pub byRes2: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BACKLIGHT() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_DVR_BACKLIGHT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BACKLIGHT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBacklightMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKLIGHT), + "::", + stringify!(byBacklightMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBacklightLevel) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKLIGHT), + "::", + stringify!(byBacklightLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKLIGHT), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPositionX1) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKLIGHT), + "::", + stringify!(dwPositionX1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPositionY1) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKLIGHT), + "::", + stringify!(dwPositionY1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPositionX2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKLIGHT), + "::", + stringify!(dwPositionX2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPositionY2) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKLIGHT), + "::", + stringify!(dwPositionY2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKLIGHT), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_BACKLIGHT = tagNET_DVR_BACKLIGHT; +pub type LPNET_DVR_BACKLIGHT = *mut tagNET_DVR_BACKLIGHT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_NOISEREMOVE { + pub byDigitalNoiseRemoveEnable: BYTE, + pub byDigitalNoiseRemoveLevel: BYTE, + pub bySpectralLevel: BYTE, + pub byTemporalLevel: BYTE, + pub byDigitalNoiseRemove2DEnable: BYTE, + pub byDigitalNoiseRemove2DLevel: BYTE, + pub byRes: [BYTE; 2usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NOISEREMOVE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_NOISEREMOVE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NOISEREMOVE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDigitalNoiseRemoveEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOISEREMOVE), + "::", + stringify!(byDigitalNoiseRemoveEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDigitalNoiseRemoveLevel) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOISEREMOVE), + "::", + stringify!(byDigitalNoiseRemoveLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpectralLevel) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOISEREMOVE), + "::", + stringify!(bySpectralLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTemporalLevel) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOISEREMOVE), + "::", + stringify!(byTemporalLevel) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byDigitalNoiseRemove2DEnable) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOISEREMOVE), + "::", + stringify!(byDigitalNoiseRemove2DEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDigitalNoiseRemove2DLevel) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOISEREMOVE), + "::", + stringify!(byDigitalNoiseRemove2DLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOISEREMOVE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_NOISEREMOVE = tagNET_DVR_NOISEREMOVE; +pub type LPNET_DVR_NOISEREMOVE = *mut tagNET_DVR_NOISEREMOVE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CMOSMODCFG { + pub byCaptureMod: BYTE, + pub byBrightnessGate: BYTE, + pub byCaptureGain1: BYTE, + pub byCaptureGain2: BYTE, + pub dwCaptureShutterSpeed1: DWORD, + pub dwCaptureShutterSpeed2: DWORD, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CMOSMODCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_CMOSMODCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CMOSMODCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaptureMod) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMOSMODCFG), + "::", + stringify!(byCaptureMod) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrightnessGate) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMOSMODCFG), + "::", + stringify!(byBrightnessGate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaptureGain1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMOSMODCFG), + "::", + stringify!(byCaptureGain1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaptureGain2) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMOSMODCFG), + "::", + stringify!(byCaptureGain2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCaptureShutterSpeed1) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMOSMODCFG), + "::", + stringify!(dwCaptureShutterSpeed1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCaptureShutterSpeed2) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMOSMODCFG), + "::", + stringify!(dwCaptureShutterSpeed2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMOSMODCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CMOSMODECFG = tagNET_DVR_CMOSMODCFG; +pub type LPNET_DVR_CMOSMODECFG = *mut tagNET_DVR_CMOSMODCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CAMERAPARAMCFG { + pub dwSize: DWORD, + pub struVideoEffect: NET_DVR_VIDEOEFFECT, + pub struGain: NET_DVR_GAIN, + pub struWhiteBalance: NET_DVR_WHITEBALANCE, + pub struExposure: NET_DVR_EXPOSURE, + pub struGammaCorrect: NET_DVR_GAMMACORRECT, + pub struWdr: NET_DVR_WDR, + pub struDayNight: NET_DVR_DAYNIGHT, + pub struBackLight: NET_DVR_BACKLIGHT, + pub struNoiseRemove: NET_DVR_NOISEREMOVE, + pub byPowerLineFrequencyMode: BYTE, + pub byIrisMode: BYTE, + pub byMirror: BYTE, + pub byDigitalZoom: BYTE, + pub byDeadPixelDetect: BYTE, + pub byBlackPwl: BYTE, + pub byEptzGate: BYTE, + pub byLocalOutputGate: BYTE, + pub byCoderOutputMode: BYTE, + pub byLineCoding: BYTE, + pub byDimmerMode: BYTE, + pub byPaletteMode: BYTE, + pub byEnhancedMode: BYTE, + pub byDynamicContrastEN: BYTE, + pub byDynamicContrast: BYTE, + pub byJPEGQuality: BYTE, + pub struCmosModeCfg: NET_DVR_CMOSMODECFG, + pub byFilterSwitch: BYTE, + pub byFocusSpeed: BYTE, + pub byAutoCompensationInterval: BYTE, + pub bySceneMode: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CAMERAPARAMCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 152usize, + concat!("Size of: ", stringify!(tagNET_DVR_CAMERAPARAMCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CAMERAPARAMCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVideoEffect) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(struVideoEffect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGain) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(struGain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWhiteBalance) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(struWhiteBalance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struExposure) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(struExposure) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGammaCorrect) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(struGammaCorrect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWdr) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(struWdr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDayNight) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(struDayNight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBackLight) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(struBackLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNoiseRemove) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(struNoiseRemove) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPowerLineFrequencyMode) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(byPowerLineFrequencyMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIrisMode) as usize - ptr as usize }, + 117usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(byIrisMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMirror) as usize - ptr as usize }, + 118usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(byMirror) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDigitalZoom) as usize - ptr as usize }, + 119usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(byDigitalZoom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeadPixelDetect) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(byDeadPixelDetect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBlackPwl) as usize - ptr as usize }, + 121usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(byBlackPwl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEptzGate) as usize - ptr as usize }, + 122usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(byEptzGate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalOutputGate) as usize - ptr as usize }, + 123usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(byLocalOutputGate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCoderOutputMode) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(byCoderOutputMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLineCoding) as usize - ptr as usize }, + 125usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(byLineCoding) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDimmerMode) as usize - ptr as usize }, + 126usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(byDimmerMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPaletteMode) as usize - ptr as usize }, + 127usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(byPaletteMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnhancedMode) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(byEnhancedMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDynamicContrastEN) as usize - ptr as usize }, + 129usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(byDynamicContrastEN) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDynamicContrast) as usize - ptr as usize }, + 130usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(byDynamicContrast) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJPEGQuality) as usize - ptr as usize }, + 131usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(byJPEGQuality) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCmosModeCfg) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(struCmosModeCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFilterSwitch) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(byFilterSwitch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFocusSpeed) as usize - ptr as usize }, + 149usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(byFocusSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAutoCompensationInterval) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(byAutoCompensationInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySceneMode) as usize - ptr as usize }, + 151usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG), + "::", + stringify!(bySceneMode) + ) + ); +} +pub type NET_DVR_CAMERAPARAMCFG = tagNET_DVR_CAMERAPARAMCFG; +pub type LPNET_DVR_CAMERAPARAMCFG = *mut tagNET_DVR_CAMERAPARAMCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEFOGCFG { + pub byMode: BYTE, + pub byLevel: BYTE, + pub byRes: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEFOGCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEFOGCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEFOGCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEFOGCFG), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLevel) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEFOGCFG), + "::", + stringify!(byLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEFOGCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DEFOGCFG = tagNET_DVR_DEFOGCFG; +pub type LPNET_DVR_DEFOGCFG = *mut tagNET_DVR_DEFOGCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ELECTRONICSTABILIZATION { + pub byEnable: BYTE, + pub byLevel: BYTE, + pub byRes: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ELECTRONICSTABILIZATION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_ELECTRONICSTABILIZATION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ELECTRONICSTABILIZATION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELECTRONICSTABILIZATION), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLevel) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELECTRONICSTABILIZATION), + "::", + stringify!(byLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELECTRONICSTABILIZATION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ELECTRONICSTABILIZATION = tagNET_DVR_ELECTRONICSTABILIZATION; +pub type LPNET_DVR_ELECTRONICSTABILIZATION = *mut tagNET_DVR_ELECTRONICSTABILIZATION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CORRIDOR_MODE_CCD { + pub byEnableCorridorMode: BYTE, + pub byRes: [BYTE; 11usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CORRIDOR_MODE_CCD() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_CORRIDOR_MODE_CCD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CORRIDOR_MODE_CCD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableCorridorMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CORRIDOR_MODE_CCD), + "::", + stringify!(byEnableCorridorMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CORRIDOR_MODE_CCD), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CORRIDOR_MODE_CCD = tagNET_DVR_CORRIDOR_MODE_CCD; +pub type LPNET_DVR_CORRIDOR_MODE_CCD = *mut tagNET_DVR_CORRIDOR_MODE_CCD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SMARTIR_PARAM { + pub byMode: BYTE, + pub byIRDistance: BYTE, + pub byShortIRDistance: BYTE, + pub byLongIRDistance: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SMARTIR_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(tagNET_DVR_SMARTIR_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SMARTIR_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTIR_PARAM), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIRDistance) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTIR_PARAM), + "::", + stringify!(byIRDistance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShortIRDistance) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTIR_PARAM), + "::", + stringify!(byShortIRDistance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLongIRDistance) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTIR_PARAM), + "::", + stringify!(byLongIRDistance) + ) + ); +} +pub type NET_DVR_SMARTIR_PARAM = tagNET_DVR_SMARTIR_PARAM; +pub type LPNET_DVR_SMARTIR_PARAM = *mut tagNET_DVR_SMARTIR_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PIRIS_PARAM { + pub byMode: BYTE, + pub byPIrisAperture: BYTE, + pub byRes: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PIRIS_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_PIRIS_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PIRIS_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIRIS_PARAM), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPIrisAperture) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIRIS_PARAM), + "::", + stringify!(byPIrisAperture) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIRIS_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PIRIS_PARAM = tagNET_DVR_PIRIS_PARAM; +pub type LPNET_DVR_PIRIS_PARAM = *mut tagNET_DVR_PIRIS_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LASER_PARAM_CFG { + pub byControlMode: BYTE, + pub bySensitivity: BYTE, + pub byTriggerMode: BYTE, + pub byBrightness: BYTE, + pub byAngle: BYTE, + pub byLimitBrightness: BYTE, + pub byEnabled: BYTE, + pub byIllumination: BYTE, + pub byLightAngle: BYTE, + pub byRes: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LASER_PARAM_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_LASER_PARAM_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LASER_PARAM_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byControlMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LASER_PARAM_CFG), + "::", + stringify!(byControlMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LASER_PARAM_CFG), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTriggerMode) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LASER_PARAM_CFG), + "::", + stringify!(byTriggerMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrightness) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LASER_PARAM_CFG), + "::", + stringify!(byBrightness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAngle) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LASER_PARAM_CFG), + "::", + stringify!(byAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLimitBrightness) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LASER_PARAM_CFG), + "::", + stringify!(byLimitBrightness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LASER_PARAM_CFG), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIllumination) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LASER_PARAM_CFG), + "::", + stringify!(byIllumination) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLightAngle) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LASER_PARAM_CFG), + "::", + stringify!(byLightAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LASER_PARAM_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LASER_PARAM_CFG = tagNET_DVR_LASER_PARAM_CFG; +pub type LPNET_DVR_LASER_PARAM_CFG = *mut tagNET_DVR_LASER_PARAM_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FFC_PARAM { + pub byMode: BYTE, + pub byRes1: BYTE, + pub wCompensateTime: WORD, + pub byRes2: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FFC_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_FFC_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FFC_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FFC_PARAM), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FFC_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCompensateTime) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FFC_PARAM), + "::", + stringify!(wCompensateTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FFC_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_FFC_PARAM = tagNET_DVR_FFC_PARAM; +pub type LPNET_DVR_FFC_PARAM = *mut tagNET_DVR_FFC_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DDE_PARAM { + pub byMode: BYTE, + pub byNormalLevel: BYTE, + pub byExpertLevel: BYTE, + pub byRes: [BYTE; 5usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DDE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_DDE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DDE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DDE_PARAM), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNormalLevel) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DDE_PARAM), + "::", + stringify!(byNormalLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExpertLevel) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DDE_PARAM), + "::", + stringify!(byExpertLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DDE_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DDE_PARAM = tagNET_DVR_DDE_PARAM; +pub type LPNET_DVR_DDE_PARAM = *mut tagNET_DVR_DDE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AGC_PARAM { + pub bySceneType: BYTE, + pub byLightLevel: BYTE, + pub byGainLevel: BYTE, + pub byRes: [BYTE; 5usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AGC_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_AGC_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AGC_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySceneType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AGC_PARAM), + "::", + stringify!(bySceneType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLightLevel) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AGC_PARAM), + "::", + stringify!(byLightLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGainLevel) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AGC_PARAM), + "::", + stringify!(byGainLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AGC_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AGC_PARAM = tagNET_DVR_AGC_PARAM; +pub type LPNET_DVR_AGC_PARAM = *mut tagNET_DVR_AGC_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SNAP_CAMERAPARAMCFG { + pub byWDRMode: BYTE, + pub byWDRType: BYTE, + pub byWDRLevel: BYTE, + pub byRes1: BYTE, + pub struStartTime: NET_DVR_TIME_EX, + pub struEndTime: NET_DVR_TIME_EX, + pub byDayNightBrightness: BYTE, + pub byMCEEnabled: BYTE, + pub byMCELevel: BYTE, + pub byAutoContrastEnabled: BYTE, + pub byAutoContrastLevel: BYTE, + pub byLSEDetailEnabled: BYTE, + pub byLSEDetailLevel: BYTE, + pub byLPDEEnabled: BYTE, + pub byLPDELevel: BYTE, + pub byLseEnabled: BYTE, + pub byLseLevel: BYTE, + pub byLSEHaloLevel: BYTE, + pub byLseType: BYTE, + pub byRes2: [BYTE; 3usize], + pub struLSEStartTime: NET_DVR_TIME_EX, + pub struLSEEndTime: NET_DVR_TIME_EX, + pub byLightLevel: BYTE, + pub byPlateContrastLevel: BYTE, + pub byPlateSaturationLevel: BYTE, + pub byRes: [BYTE; 9usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SNAP_CAMERAPARAMCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWDRMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG), + "::", + stringify!(byWDRMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWDRType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG), + "::", + stringify!(byWDRType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWDRLevel) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG), + "::", + stringify!(byWDRLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDayNightBrightness) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG), + "::", + stringify!(byDayNightBrightness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMCEEnabled) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG), + "::", + stringify!(byMCEEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMCELevel) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG), + "::", + stringify!(byMCELevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAutoContrastEnabled) as usize - ptr as usize }, + 23usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG), + "::", + stringify!(byAutoContrastEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAutoContrastLevel) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG), + "::", + stringify!(byAutoContrastLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLSEDetailEnabled) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG), + "::", + stringify!(byLSEDetailEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLSEDetailLevel) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG), + "::", + stringify!(byLSEDetailLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLPDEEnabled) as usize - ptr as usize }, + 27usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG), + "::", + stringify!(byLPDEEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLPDELevel) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG), + "::", + stringify!(byLPDELevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLseEnabled) as usize - ptr as usize }, + 29usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG), + "::", + stringify!(byLseEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLseLevel) as usize - ptr as usize }, + 30usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG), + "::", + stringify!(byLseLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLSEHaloLevel) as usize - ptr as usize }, + 31usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG), + "::", + stringify!(byLSEHaloLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLseType) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG), + "::", + stringify!(byLseType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLSEStartTime) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG), + "::", + stringify!(struLSEStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLSEEndTime) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG), + "::", + stringify!(struLSEEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLightLevel) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG), + "::", + stringify!(byLightLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateContrastLevel) as usize - ptr as usize }, + 53usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG), + "::", + stringify!(byPlateContrastLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateSaturationLevel) as usize - ptr as usize }, + 54usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG), + "::", + stringify!(byPlateSaturationLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 55usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_CAMERAPARAMCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SNAP_CAMERAPARAMCFG = tagNET_DVR_SNAP_CAMERAPARAMCFG; +pub type LPNET_DVR_SNAP_CAMERAPARAMCFG = *mut tagNET_DVR_SNAP_CAMERAPARAMCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OPTICAL_DEHAZE { + pub byEnable: BYTE, + pub byRes: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OPTICAL_DEHAZE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_OPTICAL_DEHAZE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OPTICAL_DEHAZE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_DEHAZE), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_DEHAZE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_OPTICAL_DEHAZE = tagNET_DVR_OPTICAL_DEHAZE; +pub type LPNET_DVR_OPTICAL_DEHAZE = *mut tagNET_DVR_OPTICAL_DEHAZE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_THERMOMETRY_AGC { + pub byMode: BYTE, + pub byRes1: [BYTE; 3usize], + pub iHighTemperature: ::std::os::raw::c_int, + pub iLowTemperature: ::std::os::raw::c_int, + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_THERMOMETRY_AGC() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_THERMOMETRY_AGC)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_THERMOMETRY_AGC)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_AGC), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_AGC), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iHighTemperature) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_AGC), + "::", + stringify!(iHighTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iLowTemperature) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_AGC), + "::", + stringify!(iLowTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_AGC), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_THERMOMETRY_AGC = tagNET_DVR_THERMOMETRY_AGC; +pub type LPNET_DVR_THERMOMETRY_AGC = *mut tagNET_DVR_THERMOMETRY_AGC; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CAMERAPARAMCFG_EX { + pub dwSize: DWORD, + pub struVideoEffect: NET_DVR_VIDEOEFFECT, + pub struGain: NET_DVR_GAIN, + pub struWhiteBalance: NET_DVR_WHITEBALANCE, + pub struExposure: NET_DVR_EXPOSURE, + pub struGammaCorrect: NET_DVR_GAMMACORRECT, + pub struWdr: NET_DVR_WDR, + pub struDayNight: NET_DVR_DAYNIGHT, + pub struBackLight: NET_DVR_BACKLIGHT, + pub struNoiseRemove: NET_DVR_NOISEREMOVE, + pub byPowerLineFrequencyMode: BYTE, + pub byIrisMode: BYTE, + pub byMirror: BYTE, + pub byDigitalZoom: BYTE, + pub byDeadPixelDetect: BYTE, + pub byBlackPwl: BYTE, + pub byEptzGate: BYTE, + pub byLocalOutputGate: BYTE, + pub byCoderOutputMode: BYTE, + pub byLineCoding: BYTE, + pub byDimmerMode: BYTE, + pub byPaletteMode: BYTE, + pub byEnhancedMode: BYTE, + pub byDynamicContrastEN: BYTE, + pub byDynamicContrast: BYTE, + pub byJPEGQuality: BYTE, + pub struCmosModeCfg: NET_DVR_CMOSMODECFG, + pub byFilterSwitch: BYTE, + pub byFocusSpeed: BYTE, + pub byAutoCompensationInterval: BYTE, + pub bySceneMode: BYTE, + pub struDefogCfg: NET_DVR_DEFOGCFG, + pub struElectronicStabilization: NET_DVR_ELECTRONICSTABILIZATION, + pub struCorridorMode: NET_DVR_CORRIDOR_MODE_CCD, + pub byExposureSegmentEnable: BYTE, + pub byBrightCompensate: BYTE, + pub byCaptureModeN: BYTE, + pub byCaptureModeP: BYTE, + pub struSmartIRParam: NET_DVR_SMARTIR_PARAM, + pub struPIrisParam: NET_DVR_PIRIS_PARAM, + pub struLaserParam: NET_DVR_LASER_PARAM_CFG, + pub struFFCParam: NET_DVR_FFC_PARAM, + pub struDDEParam: NET_DVR_DDE_PARAM, + pub struAGCParam: NET_DVR_AGC_PARAM, + pub byLensDistortionCorrection: BYTE, + pub byDistortionCorrectionLevel: BYTE, + pub byCalibrationAccurateLevel: BYTE, + pub byZoomedInDistantViewLevel: BYTE, + pub struSnapCCD: NET_DVR_SNAP_CAMERAPARAMCFG, + pub struOpticalDehaze: NET_DVR_OPTICAL_DEHAZE, + pub struThermAGC: NET_DVR_THERMOMETRY_AGC, + pub byFusionMode: BYTE, + pub byHorizontalFOV: BYTE, + pub byVerticalFOV: BYTE, + pub byBrightnessSuddenChangeSuppression: BYTE, + pub byGPSEnabled: BYTE, + pub byRes: BYTE, + pub wCaptureModeN: WORD, + pub wCaptureModeP: WORD, + pub byRes2: [BYTE; 150usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CAMERAPARAMCFG_EX() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 492usize, + concat!("Size of: ", stringify!(tagNET_DVR_CAMERAPARAMCFG_EX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CAMERAPARAMCFG_EX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVideoEffect) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(struVideoEffect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGain) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(struGain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWhiteBalance) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(struWhiteBalance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struExposure) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(struExposure) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGammaCorrect) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(struGammaCorrect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWdr) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(struWdr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDayNight) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(struDayNight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBackLight) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(struBackLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNoiseRemove) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(struNoiseRemove) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPowerLineFrequencyMode) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byPowerLineFrequencyMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIrisMode) as usize - ptr as usize }, + 117usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byIrisMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMirror) as usize - ptr as usize }, + 118usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byMirror) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDigitalZoom) as usize - ptr as usize }, + 119usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byDigitalZoom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeadPixelDetect) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byDeadPixelDetect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBlackPwl) as usize - ptr as usize }, + 121usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byBlackPwl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEptzGate) as usize - ptr as usize }, + 122usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byEptzGate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalOutputGate) as usize - ptr as usize }, + 123usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byLocalOutputGate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCoderOutputMode) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byCoderOutputMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLineCoding) as usize - ptr as usize }, + 125usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byLineCoding) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDimmerMode) as usize - ptr as usize }, + 126usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byDimmerMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPaletteMode) as usize - ptr as usize }, + 127usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byPaletteMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnhancedMode) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byEnhancedMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDynamicContrastEN) as usize - ptr as usize }, + 129usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byDynamicContrastEN) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDynamicContrast) as usize - ptr as usize }, + 130usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byDynamicContrast) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJPEGQuality) as usize - ptr as usize }, + 131usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byJPEGQuality) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCmosModeCfg) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(struCmosModeCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFilterSwitch) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byFilterSwitch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFocusSpeed) as usize - ptr as usize }, + 149usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byFocusSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAutoCompensationInterval) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byAutoCompensationInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySceneMode) as usize - ptr as usize }, + 151usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(bySceneMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDefogCfg) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(struDefogCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struElectronicStabilization) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(struElectronicStabilization) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCorridorMode) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(struCorridorMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExposureSegmentEnable) as usize - ptr as usize }, + 180usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byExposureSegmentEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrightCompensate) as usize - ptr as usize }, + 181usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byBrightCompensate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaptureModeN) as usize - ptr as usize }, + 182usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byCaptureModeN) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaptureModeP) as usize - ptr as usize }, + 183usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byCaptureModeP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSmartIRParam) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(struSmartIRParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPIrisParam) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(struPIrisParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaserParam) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(struLaserParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFFCParam) as usize - ptr as usize }, + 212usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(struFFCParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDDEParam) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(struDDEParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAGCParam) as usize - ptr as usize }, + 228usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(struAGCParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLensDistortionCorrection) as usize - ptr as usize }, + 236usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byLensDistortionCorrection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDistortionCorrectionLevel) as usize - ptr as usize }, + 237usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byDistortionCorrectionLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCalibrationAccurateLevel) as usize - ptr as usize }, + 238usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byCalibrationAccurateLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZoomedInDistantViewLevel) as usize - ptr as usize }, + 239usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byZoomedInDistantViewLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSnapCCD) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(struSnapCCD) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOpticalDehaze) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(struOpticalDehaze) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struThermAGC) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(struThermAGC) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFusionMode) as usize - ptr as usize }, + 332usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byFusionMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHorizontalFOV) as usize - ptr as usize }, + 333usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byHorizontalFOV) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVerticalFOV) as usize - ptr as usize }, + 334usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byVerticalFOV) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byBrightnessSuddenChangeSuppression) as usize - ptr as usize + }, + 335usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byBrightnessSuddenChangeSuppression) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGPSEnabled) as usize - ptr as usize }, + 336usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byGPSEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 337usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCaptureModeN) as usize - ptr as usize }, + 338usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(wCaptureModeN) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCaptureModeP) as usize - ptr as usize }, + 340usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(wCaptureModeP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 342usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERAPARAMCFG_EX), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CAMERAPARAMCFG_EX = tagNET_DVR_CAMERAPARAMCFG_EX; +pub type LPNET_DVR_CAMERAPARAMCFG_EX = *mut tagNET_DVR_CAMERAPARAMCFG_EX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FOCUSING_POSITION_STATE { + pub dwSize: DWORD, + pub byState: BYTE, + pub byRes: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FOCUSING_POSITION_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_FOCUSING_POSITION_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FOCUSING_POSITION_STATE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FOCUSING_POSITION_STATE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byState) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FOCUSING_POSITION_STATE), + "::", + stringify!(byState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FOCUSING_POSITION_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FOCUSING_POSITION_STATE = tagNET_DVR_FOCUSING_POSITION_STATE; +pub type LPNET_DVR_FOCUSING_POSITION_STATE = *mut tagNET_DVR_FOCUSING_POSITION_STATE; +pub const _VCA_PLATE_COLOR__VCA_BLUE_PLATE: _VCA_PLATE_COLOR_ = 0; +pub const _VCA_PLATE_COLOR__VCA_YELLOW_PLATE: _VCA_PLATE_COLOR_ = 1; +pub const _VCA_PLATE_COLOR__VCA_WHITE_PLATE: _VCA_PLATE_COLOR_ = 2; +pub const _VCA_PLATE_COLOR__VCA_BLACK_PLATE: _VCA_PLATE_COLOR_ = 3; +pub const _VCA_PLATE_COLOR__VCA_GREEN_PLATE: _VCA_PLATE_COLOR_ = 4; +pub const _VCA_PLATE_COLOR__VCA_BKAIR_PLATE: _VCA_PLATE_COLOR_ = 5; +pub const _VCA_PLATE_COLOR__VCA_RED_PLATE: _VCA_PLATE_COLOR_ = 6; +pub const _VCA_PLATE_COLOR__VCA_ORANGE_PLATE: _VCA_PLATE_COLOR_ = 7; +pub const _VCA_PLATE_COLOR__VCA_BROWN_PLATE: _VCA_PLATE_COLOR_ = 8; +pub const _VCA_PLATE_COLOR__VCA_OTHER: _VCA_PLATE_COLOR_ = 255; +pub type _VCA_PLATE_COLOR_ = ::std::os::raw::c_uint; +pub use self::_VCA_PLATE_COLOR_ as VCA_PLATE_COLOR; +pub const _VCA_PLATE_TYPE__VCA_STANDARD92_PLATE: _VCA_PLATE_TYPE_ = 0; +pub const _VCA_PLATE_TYPE__VCA_STANDARD02_PLATE: _VCA_PLATE_TYPE_ = 1; +pub const _VCA_PLATE_TYPE__VCA_WJPOLICE_PLATE: _VCA_PLATE_TYPE_ = 2; +pub const _VCA_PLATE_TYPE__VCA_JINGCHE_PLATE: _VCA_PLATE_TYPE_ = 3; +pub const _VCA_PLATE_TYPE__STANDARD92_BACK_PLATE: _VCA_PLATE_TYPE_ = 4; +pub const _VCA_PLATE_TYPE__VCA_SHIGUAN_PLATE: _VCA_PLATE_TYPE_ = 5; +pub const _VCA_PLATE_TYPE__VCA_NONGYONG_PLATE: _VCA_PLATE_TYPE_ = 6; +pub const _VCA_PLATE_TYPE__VCA_MOTO_PLATE: _VCA_PLATE_TYPE_ = 7; +pub const _VCA_PLATE_TYPE__NEW_ENERGY_PLATE: _VCA_PLATE_TYPE_ = 8; +pub const _VCA_PLATE_TYPE__VCA_CONSULATE_PLATE: _VCA_PLATE_TYPE_ = 9; +pub const _VCA_PLATE_TYPE__VCA_EMERGENCY_PLATE: _VCA_PLATE_TYPE_ = 10; +pub const _VCA_PLATE_TYPE__TRANSPORT_PLATE: _VCA_PLATE_TYPE_ = 32; +pub const _VCA_PLATE_TYPE__COMMERCIAL_PLATE: _VCA_PLATE_TYPE_ = 33; +pub const _VCA_PLATE_TYPE__PRIVATE_PLATE: _VCA_PLATE_TYPE_ = 34; +pub const _VCA_PLATE_TYPE__LEARNING_PLATE: _VCA_PLATE_TYPE_ = 35; +pub const _VCA_PLATE_TYPE__CD_PLATE: _VCA_PLATE_TYPE_ = 36; +pub const _VCA_PLATE_TYPE__CC_PLATE: _VCA_PLATE_TYPE_ = 37; +pub const _VCA_PLATE_TYPE__ARMY_PLATE: _VCA_PLATE_TYPE_ = 38; +pub const _VCA_PLATE_TYPE__PROTOCOL_PLATE: _VCA_PLATE_TYPE_ = 39; +pub const _VCA_PLATE_TYPE__GOVERNMENT_PLATE: _VCA_PLATE_TYPE_ = 40; +pub const _VCA_PLATE_TYPE__EXPORT_PLATE: _VCA_PLATE_TYPE_ = 41; +pub const _VCA_PLATE_TYPE__TAXI_PLATE: _VCA_PLATE_TYPE_ = 42; +pub const _VCA_PLATE_TYPE__TESTING_PLATE: _VCA_PLATE_TYPE_ = 43; +pub const _VCA_PLATE_TYPE__TRANSFER_PLATE: _VCA_PLATE_TYPE_ = 44; +pub const _VCA_PLATE_TYPE__TRUCK_PLATE: _VCA_PLATE_TYPE_ = 45; +pub const _VCA_PLATE_TYPE__BUS_PLATE: _VCA_PLATE_TYPE_ = 46; +pub const _VCA_PLATE_TYPE__PUBLIC_PLATE: _VCA_PLATE_TYPE_ = 47; +pub const _VCA_PLATE_TYPE__PUB_TRANS_PLATE: _VCA_PLATE_TYPE_ = 48; +pub const _VCA_PLATE_TYPE__PRI_TRANS_PLATE: _VCA_PLATE_TYPE_ = 49; +pub const _VCA_PLATE_TYPE__TUMBREL_PLATE: _VCA_PLATE_TYPE_ = 50; +pub const _VCA_PLATE_TYPE__HONG_KONG_MACAO_PLATE: _VCA_PLATE_TYPE_ = 51; +pub const _VCA_PLATE_TYPE__UNKNOWN_PLATE: _VCA_PLATE_TYPE_ = 255; +pub type _VCA_PLATE_TYPE_ = ::std::os::raw::c_uint; +pub use self::_VCA_PLATE_TYPE_ as VCA_PLATE_TYPE; +pub const _VTR_RESULT_VTR_RESULT_OTHER: _VTR_RESULT = 0; +pub const _VTR_RESULT_VTR_RESULT_BUS: _VTR_RESULT = 1; +pub const _VTR_RESULT_VTR_RESULT_TRUCK: _VTR_RESULT = 2; +pub const _VTR_RESULT_VTR_RESULT_CAR: _VTR_RESULT = 3; +pub const _VTR_RESULT_VTR_RESULT_MINIBUS: _VTR_RESULT = 4; +pub const _VTR_RESULT_VTR_RESULT_SMALLTRUCK: _VTR_RESULT = 5; +pub const _VTR_RESULT_VTR_RESULT_HUMAN: _VTR_RESULT = 6; +pub const _VTR_RESULT_VTR_RESULT_TUMBREL: _VTR_RESULT = 7; +pub const _VTR_RESULT_VTR_RESULT_TRIKE: _VTR_RESULT = 8; +pub const _VTR_RESULT_VTR_RESULT_SUV_MPV: _VTR_RESULT = 9; +pub const _VTR_RESULT_VTR_RESULT_MEDIUM_BUS: _VTR_RESULT = 10; +pub const _VTR_RESULT_VTR_RESULT_MOTOR_VEHICLE: _VTR_RESULT = 11; +pub const _VTR_RESULT_VTR_RESULT_NON_MOTOR_VEHICLE: _VTR_RESULT = 12; +pub const _VTR_RESULT_VTR_RESULT_SMALLCAR: _VTR_RESULT = 13; +pub const _VTR_RESULT_VTR_RESULT_MICROCAR: _VTR_RESULT = 14; +pub const _VTR_RESULT_VTR_RESULT_PICKUP: _VTR_RESULT = 15; +pub const _VTR_RESULT_VTR_RESULT_CONTAINER_TRUCK: _VTR_RESULT = 16; +pub const _VTR_RESULT_VTR_RESULT_MINI_TRUCK: _VTR_RESULT = 17; +pub const _VTR_RESULT_VTR_RESULT_SLAG_CAR: _VTR_RESULT = 18; +pub const _VTR_RESULT_VTR_RESULT_CRANE: _VTR_RESULT = 19; +pub const _VTR_RESULT_VTR_RESULT_OIL_TANK_TRUCK: _VTR_RESULT = 20; +pub const _VTR_RESULT_VTR_RESULT_CONCRETE_MIXER: _VTR_RESULT = 21; +pub const _VTR_RESULT_VTR_RESULT_PLATFORM_TRAILER: _VTR_RESULT = 22; +pub const _VTR_RESULT_VTR_RESULT_HATCHBACK: _VTR_RESULT = 23; +pub const _VTR_RESULT_VTR_RESULT_SALOON: _VTR_RESULT = 24; +pub const _VTR_RESULT_VTR_RESULT_SPORT_SEDAN: _VTR_RESULT = 25; +pub const _VTR_RESULT_VTR_RESULT_SMALL_BUS: _VTR_RESULT = 26; +pub type _VTR_RESULT = ::std::os::raw::c_uint; +pub use self::_VTR_RESULT as VTR_RESULT; +pub const _VCR_CLR_CLASS_VCR_CLR_UNSUPPORT: _VCR_CLR_CLASS = 0; +pub const _VCR_CLR_CLASS_VCR_CLR_WHITE: _VCR_CLR_CLASS = 1; +pub const _VCR_CLR_CLASS_VCR_CLR_SILVER: _VCR_CLR_CLASS = 2; +pub const _VCR_CLR_CLASS_VCR_CLR_GRAY: _VCR_CLR_CLASS = 3; +pub const _VCR_CLR_CLASS_VCR_CLR_BLACK: _VCR_CLR_CLASS = 4; +pub const _VCR_CLR_CLASS_VCR_CLR_RED: _VCR_CLR_CLASS = 5; +pub const _VCR_CLR_CLASS_VCR_CLR_DARKBLUE: _VCR_CLR_CLASS = 6; +pub const _VCR_CLR_CLASS_VCR_CLR_BLUE: _VCR_CLR_CLASS = 7; +pub const _VCR_CLR_CLASS_VCR_CLR_YELLOW: _VCR_CLR_CLASS = 8; +pub const _VCR_CLR_CLASS_VCR_CLR_GREEN: _VCR_CLR_CLASS = 9; +pub const _VCR_CLR_CLASS_VCR_CLR_BROWN: _VCR_CLR_CLASS = 10; +pub const _VCR_CLR_CLASS_VCR_CLR_PINK: _VCR_CLR_CLASS = 11; +pub const _VCR_CLR_CLASS_VCR_CLR_PURPLE: _VCR_CLR_CLASS = 12; +pub const _VCR_CLR_CLASS_VCR_CLR_DARKGRAY: _VCR_CLR_CLASS = 13; +pub const _VCR_CLR_CLASS_VCR_CLR_CYAN: _VCR_CLR_CLASS = 14; +pub type _VCR_CLR_CLASS = ::std::os::raw::c_uint; +pub use self::_VCR_CLR_CLASS as VCR_CLR_CLASS; +pub const _VCA_OPERATE_TYPE__VCA_LICENSE_TYPE: _VCA_OPERATE_TYPE_ = 1; +pub const _VCA_OPERATE_TYPE__VCA_PLATECOLOR_TYPE: _VCA_OPERATE_TYPE_ = 2; +pub const _VCA_OPERATE_TYPE__VCA_CARDNO_TYPE: _VCA_OPERATE_TYPE_ = 4; +pub const _VCA_OPERATE_TYPE__VCA_PLATETYPE_TYPE: _VCA_OPERATE_TYPE_ = 8; +pub const _VCA_OPERATE_TYPE__VCA_LISTTYPE_TYPE: _VCA_OPERATE_TYPE_ = 16; +pub const _VCA_OPERATE_TYPE__VCA_INDEX_TYPE: _VCA_OPERATE_TYPE_ = 32; +pub const _VCA_OPERATE_TYPE__VCA_OPERATE_INDEX_TYPE: _VCA_OPERATE_TYPE_ = 64; +pub type _VCA_OPERATE_TYPE_ = ::std::os::raw::c_uint; +pub use self::_VCA_OPERATE_TYPE_ as VCA_OPERATE_TYPE; +pub const _VCA_ILLEGAL_TYPE__VCA_POSTPIC_TYPE: _VCA_ILLEGAL_TYPE_ = 1; +pub const _VCA_ILLEGAL_TYPE__VCA_LOWSPEED_TYPE: _VCA_ILLEGAL_TYPE_ = 2; +pub const _VCA_ILLEGAL_TYPE__VCA_HIGHSPEED_TYPE: _VCA_ILLEGAL_TYPE_ = 4; +pub const _VCA_ILLEGAL_TYPE__VCA_RETROGRADE_TYPE: _VCA_ILLEGAL_TYPE_ = 8; +pub const _VCA_ILLEGAL_TYPE__VCA_RUSH_REDLIGHT_TYPE: _VCA_ILLEGAL_TYPE_ = 16; +pub const _VCA_ILLEGAL_TYPE__VCA_PRESS_LANE_TYPE: _VCA_ILLEGAL_TYPE_ = 32; +pub const _VCA_ILLEGAL_TYPE__VCA_VIOLATE_GUIDE_TYPE: _VCA_ILLEGAL_TYPE_ = 64; +pub const _VCA_ILLEGAL_TYPE__VCA_ROAD_STRAND_TYPE: _VCA_ILLEGAL_TYPE_ = 128; +pub const _VCA_ILLEGAL_TYPE__VCA_VEHICLE_ILLEGAL_LANE_TYPE: _VCA_ILLEGAL_TYPE_ = 256; +pub const _VCA_ILLEGAL_TYPE__VCA_ILLEGAL_LANE_CHANGE_TYPE: _VCA_ILLEGAL_TYPE_ = 512; +pub const _VCA_ILLEGAL_TYPE__VCA_ILLEGAL_LANE_DRIVE_TYPE: _VCA_ILLEGAL_TYPE_ = 1024; +pub const _VCA_ILLEGAL_TYPE__VCA_VIOLATE_BAN_TYPE: _VCA_ILLEGAL_TYPE_ = 2048; +pub const _VCA_ILLEGAL_TYPE__VCA_CROSS_PARKING_TYPE: _VCA_ILLEGAL_TYPE_ = 4096; +pub const _VCA_ILLEGAL_TYPE__VCA_GREEN_PARKING_TYPE: _VCA_ILLEGAL_TYPE_ = 8192; +pub type _VCA_ILLEGAL_TYPE_ = ::std::os::raw::c_uint; +pub use self::_VCA_ILLEGAL_TYPE_ as VCA_ILLEGAL_TYPE; +pub const _VCA_VEHICLE_TYPE__VCA_OTHER_TYPE: _VCA_VEHICLE_TYPE_ = 1; +pub const _VCA_VEHICLE_TYPE__VCA_SMALLCAR_TYPE: _VCA_VEHICLE_TYPE_ = 2; +pub const _VCA_VEHICLE_TYPE__VCA_BIGCAR_TYPE: _VCA_VEHICLE_TYPE_ = 4; +pub const _VCA_VEHICLE_TYPE__VCA_BUS_TYPE: _VCA_VEHICLE_TYPE_ = 8; +pub const _VCA_VEHICLE_TYPE__VCA_TRUCK_TYPE: _VCA_VEHICLE_TYPE_ = 16; +pub const _VCA_VEHICLE_TYPE__VCA_CAR_TYPE: _VCA_VEHICLE_TYPE_ = 32; +pub const _VCA_VEHICLE_TYPE__VCA_MINIBUS_TYPE: _VCA_VEHICLE_TYPE_ = 64; +pub const _VCA_VEHICLE_TYPE__VCA_SMALL_TRUCK_TYPE: _VCA_VEHICLE_TYPE_ = 128; +pub type _VCA_VEHICLE_TYPE_ = ::std::os::raw::c_uint; +pub use self::_VCA_VEHICLE_TYPE_ as VCA_VEHICLE_TYPE; +pub const _VLR_VEHICLE_CLASS_VLR_OTHER: _VLR_VEHICLE_CLASS = 0; +pub const _VLR_VEHICLE_CLASS_VLR_VOLKSWAGEN: _VLR_VEHICLE_CLASS = 1; +pub const _VLR_VEHICLE_CLASS_VLR_BUICK: _VLR_VEHICLE_CLASS = 2; +pub const _VLR_VEHICLE_CLASS_VLR_BMW: _VLR_VEHICLE_CLASS = 3; +pub const _VLR_VEHICLE_CLASS_VLR_HONDA: _VLR_VEHICLE_CLASS = 4; +pub const _VLR_VEHICLE_CLASS_VLR_PEUGEOT: _VLR_VEHICLE_CLASS = 5; +pub const _VLR_VEHICLE_CLASS_VLR_TOYOTA: _VLR_VEHICLE_CLASS = 6; +pub const _VLR_VEHICLE_CLASS_VLR_FORD: _VLR_VEHICLE_CLASS = 7; +pub const _VLR_VEHICLE_CLASS_VLR_NISSAN: _VLR_VEHICLE_CLASS = 8; +pub const _VLR_VEHICLE_CLASS_VLR_AUDI: _VLR_VEHICLE_CLASS = 9; +pub const _VLR_VEHICLE_CLASS_VLR_MAZDA: _VLR_VEHICLE_CLASS = 10; +pub const _VLR_VEHICLE_CLASS_VLR_CHEVROLET: _VLR_VEHICLE_CLASS = 11; +pub const _VLR_VEHICLE_CLASS_VLR_CITROEN: _VLR_VEHICLE_CLASS = 12; +pub const _VLR_VEHICLE_CLASS_VLR_HYUNDAI: _VLR_VEHICLE_CLASS = 13; +pub const _VLR_VEHICLE_CLASS_VLR_CHERY: _VLR_VEHICLE_CLASS = 14; +pub const _VLR_VEHICLE_CLASS_VLR_KIA: _VLR_VEHICLE_CLASS = 15; +pub const _VLR_VEHICLE_CLASS_VLR_ROEWE: _VLR_VEHICLE_CLASS = 16; +pub const _VLR_VEHICLE_CLASS_VLR_MITSUBISHI: _VLR_VEHICLE_CLASS = 17; +pub const _VLR_VEHICLE_CLASS_VLR_SKODA: _VLR_VEHICLE_CLASS = 18; +pub const _VLR_VEHICLE_CLASS_VLR_GEELY: _VLR_VEHICLE_CLASS = 19; +pub const _VLR_VEHICLE_CLASS_VLR_ZHONGHUA: _VLR_VEHICLE_CLASS = 20; +pub const _VLR_VEHICLE_CLASS_VLR_VOLVO: _VLR_VEHICLE_CLASS = 21; +pub const _VLR_VEHICLE_CLASS_VLR_LEXUS: _VLR_VEHICLE_CLASS = 22; +pub const _VLR_VEHICLE_CLASS_VLR_FIAT: _VLR_VEHICLE_CLASS = 23; +pub const _VLR_VEHICLE_CLASS_VLR_EMGRAND: _VLR_VEHICLE_CLASS = 24; +pub const _VLR_VEHICLE_CLASS_VLR_DONGFENG: _VLR_VEHICLE_CLASS = 25; +pub const _VLR_VEHICLE_CLASS_VLR_BYD: _VLR_VEHICLE_CLASS = 26; +pub const _VLR_VEHICLE_CLASS_VLR_SUZUKI: _VLR_VEHICLE_CLASS = 27; +pub const _VLR_VEHICLE_CLASS_VLR_JINBEI: _VLR_VEHICLE_CLASS = 28; +pub const _VLR_VEHICLE_CLASS_VLR_HAIMA: _VLR_VEHICLE_CLASS = 29; +pub const _VLR_VEHICLE_CLASS_VLR_SGMW: _VLR_VEHICLE_CLASS = 30; +pub const _VLR_VEHICLE_CLASS_VLR_JAC: _VLR_VEHICLE_CLASS = 31; +pub const _VLR_VEHICLE_CLASS_VLR_SUBARU: _VLR_VEHICLE_CLASS = 32; +pub const _VLR_VEHICLE_CLASS_VLR_ENGLON: _VLR_VEHICLE_CLASS = 33; +pub const _VLR_VEHICLE_CLASS_VLR_GREATWALL: _VLR_VEHICLE_CLASS = 34; +pub const _VLR_VEHICLE_CLASS_VLR_HAFEI: _VLR_VEHICLE_CLASS = 35; +pub const _VLR_VEHICLE_CLASS_VLR_ISUZU: _VLR_VEHICLE_CLASS = 36; +pub const _VLR_VEHICLE_CLASS_VLR_SOUEAST: _VLR_VEHICLE_CLASS = 37; +pub const _VLR_VEHICLE_CLASS_VLR_CHANA: _VLR_VEHICLE_CLASS = 38; +pub const _VLR_VEHICLE_CLASS_VLR_FOTON: _VLR_VEHICLE_CLASS = 39; +pub const _VLR_VEHICLE_CLASS_VLR_XIALI: _VLR_VEHICLE_CLASS = 40; +pub const _VLR_VEHICLE_CLASS_VLR_BENZ: _VLR_VEHICLE_CLASS = 41; +pub const _VLR_VEHICLE_CLASS_VLR_FAW: _VLR_VEHICLE_CLASS = 42; +pub const _VLR_VEHICLE_CLASS_VLR_NAVECO: _VLR_VEHICLE_CLASS = 43; +pub const _VLR_VEHICLE_CLASS_VLR_LIFAN: _VLR_VEHICLE_CLASS = 44; +pub const _VLR_VEHICLE_CLASS_VLR_BESTURN: _VLR_VEHICLE_CLASS = 45; +pub const _VLR_VEHICLE_CLASS_VLR_CROWN: _VLR_VEHICLE_CLASS = 46; +pub const _VLR_VEHICLE_CLASS_VLR_RENAULT: _VLR_VEHICLE_CLASS = 47; +pub const _VLR_VEHICLE_CLASS_VLR_JMC: _VLR_VEHICLE_CLASS = 48; +pub const _VLR_VEHICLE_CLASS_VLR_MG: _VLR_VEHICLE_CLASS = 49; +pub const _VLR_VEHICLE_CLASS_VLR_KAMA: _VLR_VEHICLE_CLASS = 50; +pub const _VLR_VEHICLE_CLASS_VLR_ZOTYE: _VLR_VEHICLE_CLASS = 51; +pub const _VLR_VEHICLE_CLASS_VLR_CHANGHE: _VLR_VEHICLE_CLASS = 52; +pub const _VLR_VEHICLE_CLASS_VLR_XMKINGLONG: _VLR_VEHICLE_CLASS = 53; +pub const _VLR_VEHICLE_CLASS_VLR_HUIZHONG: _VLR_VEHICLE_CLASS = 54; +pub const _VLR_VEHICLE_CLASS_VLR_SZKINGLONG: _VLR_VEHICLE_CLASS = 55; +pub const _VLR_VEHICLE_CLASS_VLR_HIGER: _VLR_VEHICLE_CLASS = 56; +pub const _VLR_VEHICLE_CLASS_VLR_YUTONG: _VLR_VEHICLE_CLASS = 57; +pub const _VLR_VEHICLE_CLASS_VLR_CNHTC: _VLR_VEHICLE_CLASS = 58; +pub const _VLR_VEHICLE_CLASS_VLR_BEIBEN: _VLR_VEHICLE_CLASS = 59; +pub const _VLR_VEHICLE_CLASS_VLR_XINGMA: _VLR_VEHICLE_CLASS = 60; +pub const _VLR_VEHICLE_CLASS_VLR_YUEJIN: _VLR_VEHICLE_CLASS = 61; +pub const _VLR_VEHICLE_CLASS_VLR_HUANGHAI: _VLR_VEHICLE_CLASS = 62; +pub const _VLR_VEHICLE_CLASS_VLR_OLDWALL: _VLR_VEHICLE_CLASS = 63; +pub const _VLR_VEHICLE_CLASS_VLR_CHANACOMMERCIAL: _VLR_VEHICLE_CLASS = 64; +pub const _VLR_VEHICLE_CLASS_VLR_PORSCHE: _VLR_VEHICLE_CLASS = 65; +pub const _VLR_VEHICLE_CLASS_VLR_CADILLAC: _VLR_VEHICLE_CLASS = 66; +pub const _VLR_VEHICLE_CLASS_VLR_INFINITI: _VLR_VEHICLE_CLASS = 67; +pub const _VLR_VEHICLE_CLASS_VLR_GLEAGLE: _VLR_VEHICLE_CLASS = 68; +pub const _VLR_VEHICLE_CLASS_VLR_JEEP: _VLR_VEHICLE_CLASS = 69; +pub const _VLR_VEHICLE_CLASS_VLR_LANDROVER: _VLR_VEHICLE_CLASS = 70; +pub const _VLR_VEHICLE_CLASS_VLR_CHANGFENG: _VLR_VEHICLE_CLASS = 71; +pub const _VLR_VEHICLE_CLASS_VLR_BENNI: _VLR_VEHICLE_CLASS = 72; +pub const _VLR_VEHICLE_CLASS_VLR_ERA: _VLR_VEHICLE_CLASS = 73; +pub const _VLR_VEHICLE_CLASS_VLR_TAURUS: _VLR_VEHICLE_CLASS = 74; +pub const _VLR_VEHICLE_CLASS_VLR_EADO: _VLR_VEHICLE_CLASS = 75; +pub const _VLR_VEHICLE_CLASS_VLR_SHANQI: _VLR_VEHICLE_CLASS = 76; +pub const _VLR_VEHICLE_CLASS_VLR_HONGYAN: _VLR_VEHICLE_CLASS = 77; +pub const _VLR_VEHICLE_CLASS_VLR_DRAGON: _VLR_VEHICLE_CLASS = 78; +pub const _VLR_VEHICLE_CLASS_VLR_JACTEXT: _VLR_VEHICLE_CLASS = 79; +pub const _VLR_VEHICLE_CLASS_VLR_JACBUS: _VLR_VEHICLE_CLASS = 80; +pub const _VLR_VEHICLE_CLASS_VLR_ANKAI: _VLR_VEHICLE_CLASS = 81; +pub const _VLR_VEHICLE_CLASS_VLR_SHENLONG: _VLR_VEHICLE_CLASS = 82; +pub const _VLR_VEHICLE_CLASS_VLR_DAEWOO: _VLR_VEHICLE_CLASS = 83; +pub const _VLR_VEHICLE_CLASS_VLR_WUZHENG: _VLR_VEHICLE_CLASS = 84; +pub const _VLR_VEHICLE_CLASS_VLR_MAN: _VLR_VEHICLE_CLASS = 85; +pub const _VLR_VEHICLE_CLASS_VLR_ZHONGTONG: _VLR_VEHICLE_CLASS = 86; +pub const _VLR_VEHICLE_CLASS_VLR_BAOJUN: _VLR_VEHICLE_CLASS = 87; +pub const _VLR_VEHICLE_CLASS_VLR_BQWEIWANG: _VLR_VEHICLE_CLASS = 88; +pub const _VLR_VEHICLE_CLASS_VLR_TRUMPCHE: _VLR_VEHICLE_CLASS = 89; +pub const _VLR_VEHICLE_CLASS_VLR_LUFENG: _VLR_VEHICLE_CLASS = 90; +pub const _VLR_VEHICLE_CLASS_VLR_HMZHENGZHOU: _VLR_VEHICLE_CLASS = 91; +pub const _VLR_VEHICLE_CLASS_VLR_BEIJING: _VLR_VEHICLE_CLASS = 92; +pub const _VLR_VEHICLE_CLASS_VLR_ZHONGSHUN: _VLR_VEHICLE_CLASS = 93; +pub const _VLR_VEHICLE_CLASS_VLR_WEILIN: _VLR_VEHICLE_CLASS = 94; +pub const _VLR_VEHICLE_CLASS_VLR_OPEL: _VLR_VEHICLE_CLASS = 95; +pub const _VLR_VEHICLE_CLASS_VLR_KARRY: _VLR_VEHICLE_CLASS = 96; +pub const _VLR_VEHICLE_CLASS_VLR_SMA: _VLR_VEHICLE_CLASS = 97; +pub const _VLR_VEHICLE_CLASS_VLR_SMATEXT: _VLR_VEHICLE_CLASS = 98; +pub const _VLR_VEHICLE_CLASS_VLR_YUWIN: _VLR_VEHICLE_CLASS = 99; +pub const _VLR_VEHICLE_CLASS_VLR_MINI: _VLR_VEHICLE_CLASS = 100; +pub const _VLR_VEHICLE_CLASS_VLR_MARK: _VLR_VEHICLE_CLASS = 101; +pub const _VLR_VEHICLE_CLASS_VLR_HAVAL: _VLR_VEHICLE_CLASS = 102; +pub const _VLR_VEHICLE_CLASS_VLR_OGA: _VLR_VEHICLE_CLASS = 103; +pub const _VLR_VEHICLE_CLASS_VLR_VENUCIA: _VLR_VEHICLE_CLASS = 104; +pub const _VLR_VEHICLE_CLASS_VLR_BYD2: _VLR_VEHICLE_CLASS = 105; +pub const _VLR_VEHICLE_CLASS_VLR_SMART: _VLR_VEHICLE_CLASS = 106; +pub const _VLR_VEHICLE_CLASS_VLR_BAW: _VLR_VEHICLE_CLASS = 107; +pub const _VLR_VEHICLE_CLASS_VLR_LUXGEN: _VLR_VEHICLE_CLASS = 108; +pub const _VLR_VEHICLE_CLASS_VLR_YEMA: _VLR_VEHICLE_CLASS = 109; +pub const _VLR_VEHICLE_CLASS_VLR_ZTE: _VLR_VEHICLE_CLASS = 110; +pub const _VLR_VEHICLE_CLASS_VLR_EVERUS: _VLR_VEHICLE_CLASS = 111; +pub const _VLR_VEHICLE_CLASS_VLR_CHRYSLER: _VLR_VEHICLE_CLASS = 112; +pub const _VLR_VEHICLE_CLASS_VLR_GONOW: _VLR_VEHICLE_CLASS = 113; +pub const _VLR_VEHICLE_CLASS_VLR_SHJIANG: _VLR_VEHICLE_CLASS = 114; +pub const _VLR_VEHICLE_CLASS_VLR_RUILIN: _VLR_VEHICLE_CLASS = 115; +pub const _VLR_VEHICLE_CLASS_VLR_FORTA: _VLR_VEHICLE_CLASS = 116; +pub const _VLR_VEHICLE_CLASS_VLR_GAGUAR: _VLR_VEHICLE_CLASS = 117; +pub const _VLR_VEHICLE_CLASS_VLR_HEIBAO: _VLR_VEHICLE_CLASS = 118; +pub const _VLR_VEHICLE_CLASS_VLR_TKING: _VLR_VEHICLE_CLASS = 119; +pub const _VLR_VEHICLE_CLASS_VLR_TKINGTEXT: _VLR_VEHICLE_CLASS = 120; +pub const _VLR_VEHICLE_CLASS_VLR_FODAY: _VLR_VEHICLE_CLASS = 121; +pub const _VLR_VEHICLE_CLASS_VLR_LOTUS: _VLR_VEHICLE_CLASS = 122; +pub const _VLR_VEHICLE_CLASS_VLR_NANJUN: _VLR_VEHICLE_CLASS = 123; +pub const _VLR_VEHICLE_CLASS_VLR_SHUANGHUAN: _VLR_VEHICLE_CLASS = 124; +pub const _VLR_VEHICLE_CLASS_VLR_SAIBAO: _VLR_VEHICLE_CLASS = 125; +pub const _VLR_VEHICLE_CLASS_VLR_HAWTAI: _VLR_VEHICLE_CLASS = 126; +pub const _VLR_VEHICLE_CLASS_VLR_LIFO: _VLR_VEHICLE_CLASS = 127; +pub const _VLR_VEHICLE_CLASS_VLR_JONWAY: _VLR_VEHICLE_CLASS = 128; +pub const _VLR_VEHICLE_CLASS_VLR_FULONGMA: _VLR_VEHICLE_CLASS = 129; +pub const _VLR_VEHICLE_CLASS_VLR_WEILI: _VLR_VEHICLE_CLASS = 130; +pub const _VLR_VEHICLE_CLASS_VLR_ANCHI: _VLR_VEHICLE_CLASS = 131; +pub const _VLR_VEHICLE_CLASS_VLR_PAIXI: _VLR_VEHICLE_CLASS = 132; +pub const _VLR_VEHICLE_CLASS_VLR_HIGERTEXT: _VLR_VEHICLE_CLASS = 133; +pub const _VLR_VEHICLE_CLASS_VLR_RIYECAR: _VLR_VEHICLE_CLASS = 134; +pub const _VLR_VEHICLE_CLASS_VLR_RIYETRUCK: _VLR_VEHICLE_CLASS = 135; +pub const _VLR_VEHICLE_CLASS_VLR_JIANGNAN: _VLR_VEHICLE_CLASS = 136; +pub const _VLR_VEHICLE_CLASS_VLR_OLDZOTYE: _VLR_VEHICLE_CLASS = 137; +pub const _VLR_VEHICLE_CLASS_VLR_OLDXIALI: _VLR_VEHICLE_CLASS = 138; +pub const _VLR_VEHICLE_CLASS_VLR_NEWAOCHI: _VLR_VEHICLE_CLASS = 139; +pub const _VLR_VEHICLE_CLASS_VLR_CDW: _VLR_VEHICLE_CLASS = 140; +pub const _VLR_VEHICLE_CLASS_VLR_CDWTEXT: _VLR_VEHICLE_CLASS = 141; +pub const _VLR_VEHICLE_CLASS_VLR_CIIMO: _VLR_VEHICLE_CLASS = 142; +pub const _VLR_VEHICLE_CLASS_VLR_CHANADS: _VLR_VEHICLE_CLASS = 143; +pub const _VLR_VEHICLE_CLASS_VLR_DS: _VLR_VEHICLE_CLASS = 144; +pub const _VLR_VEHICLE_CLASS_VLR_ROHENS: _VLR_VEHICLE_CLASS = 145; +pub const _VLR_VEHICLE_CLASS_VLR_YANTAI: _VLR_VEHICLE_CLASS = 146; +pub const _VLR_VEHICLE_CLASS_VLR_SHUANGLONG: _VLR_VEHICLE_CLASS = 147; +pub const _VLR_VEHICLE_CLASS_VLR_FENGLING: _VLR_VEHICLE_CLASS = 148; +pub const _VLR_VEHICLE_CLASS_VLR_XINKAI: _VLR_VEHICLE_CLASS = 149; +pub const _VLR_VEHICLE_CLASS_VLR_GMC: _VLR_VEHICLE_CLASS = 150; +pub const _VLR_VEHICLE_CLASS_VLR_DATONG: _VLR_VEHICLE_CLASS = 151; +pub const _VLR_VEHICLE_CLASS_VLR_BQYINXIANG: _VLR_VEHICLE_CLASS = 152; +pub const _VLR_VEHICLE_CLASS_VLR_NEWCHERY: _VLR_VEHICLE_CLASS = 153; +pub const _VLR_VEHICLE_CLASS_VLR_MUDAN: _VLR_VEHICLE_CLASS = 154; +pub const _VLR_VEHICLE_CLASS_VLR_DAYUN: _VLR_VEHICLE_CLASS = 155; +pub const _VLR_VEHICLE_CLASS_VLR_DONGWO: _VLR_VEHICLE_CLASS = 156; +pub const _VLR_VEHICLE_CLASS_VLR_UNION: _VLR_VEHICLE_CLASS = 157; +pub const _VLR_VEHICLE_CLASS_VLR_CHUNZHOU: _VLR_VEHICLE_CLASS = 158; +pub const _VLR_VEHICLE_CLASS_VLR_SANY: _VLR_VEHICLE_CLASS = 159; +pub const _VLR_VEHICLE_CLASS_VLR_YAXING: _VLR_VEHICLE_CLASS = 160; +pub const _VLR_VEHICLE_CLASS_VLR_HENGTONG: _VLR_VEHICLE_CLASS = 161; +pub const _VLR_VEHICLE_CLASS_VLR_SHAOLIN: _VLR_VEHICLE_CLASS = 162; +pub const _VLR_VEHICLE_CLASS_VLR_YOUNG: _VLR_VEHICLE_CLASS = 163; +pub const _VLR_VEHICLE_CLASS_VLR_STOM: _VLR_VEHICLE_CLASS = 164; +pub const _VLR_VEHICLE_CLASS_VLR_SANHUAN: _VLR_VEHICLE_CLASS = 165; +pub const _VLR_VEHICLE_CLASS_VLR_XUGONG: _VLR_VEHICLE_CLASS = 166; +pub const _VLR_VEHICLE_CLASS_VLR_BEIFANG: _VLR_VEHICLE_CLASS = 167; +pub const _VLR_VEHICLE_CLASS_VLR_JIANGHUAN: _VLR_VEHICLE_CLASS = 168; +pub const _VLR_VEHICLE_CLASS_VLR_BJFARM: _VLR_VEHICLE_CLASS = 169; +pub const _VLR_VEHICLE_CLASS_VLR_NEWDADI: _VLR_VEHICLE_CLASS = 170; +pub const _VLR_VEHICLE_CLASS_VLR_SUNWIN: _VLR_VEHICLE_CLASS = 171; +pub const _VLR_VEHICLE_CLASS_VLR_YINGTIAN: _VLR_VEHICLE_CLASS = 172; +pub const _VLR_VEHICLE_CLASS_VLR_QINGQI: _VLR_VEHICLE_CLASS = 173; +pub const _VLR_VEHICLE_CLASS_VLR_CHUFENG: _VLR_VEHICLE_CLASS = 174; +pub const _VLR_VEHICLE_CLASS_VLR_SCANIA: _VLR_VEHICLE_CLASS = 175; +pub const _VLR_VEHICLE_CLASS_VLR_JIULONG: _VLR_VEHICLE_CLASS = 176; +pub const _VLR_VEHICLE_CLASS_VLR_YOUYI: _VLR_VEHICLE_CLASS = 177; +pub const _VLR_VEHICLE_CLASS_VLR_SHANGRAO: _VLR_VEHICLE_CLASS = 178; +pub const _VLR_VEHICLE_CLASS_VLR_JIJIANG: _VLR_VEHICLE_CLASS = 179; +pub const _VLR_VEHICLE_CLASS_VLR_YANGZI: _VLR_VEHICLE_CLASS = 180; +pub const _VLR_VEHICLE_CLASS_VLR_XIWO: _VLR_VEHICLE_CLASS = 181; +pub const _VLR_VEHICLE_CLASS_VLR_CHANGJIANG: _VLR_VEHICLE_CLASS = 182; +pub const _VLR_VEHICLE_CLASS_VLR_WUYI: _VLR_VEHICLE_CLASS = 183; +pub const _VLR_VEHICLE_CLASS_VLR_CHENGDU: _VLR_VEHICLE_CLASS = 184; +pub const _VLR_VEHICLE_CLASS_VLR_TIANMA: _VLR_VEHICLE_CLASS = 185; +pub const _VLR_VEHICLE_CLASS_VLR_BAOLONG: _VLR_VEHICLE_CLASS = 186; +pub const _VLR_VEHICLE_CLASS_VLR_NEWYATU: _VLR_VEHICLE_CLASS = 187; +pub const _VLR_VEHICLE_CLASS_VLR_BARUI: _VLR_VEHICLE_CLASS = 188; +pub const _VLR_VEHICLE_CLASS_VLR_GUANZHI: _VLR_VEHICLE_CLASS = 189; +pub const _VLR_VEHICLE_CLASS_VLR_XIYATE: _VLR_VEHICLE_CLASS = 190; +pub const _VLR_VEHICLE_CLASS_VLR_BINLI: _VLR_VEHICLE_CLASS = 191; +pub const _VLR_VEHICLE_CLASS_VLR_DADI: _VLR_VEHICLE_CLASS = 192; +pub const _VLR_VEHICLE_CLASS_VLR_FUQI: _VLR_VEHICLE_CLASS = 193; +pub const _VLR_VEHICLE_CLASS_VLR_HANGTIAN: _VLR_VEHICLE_CLASS = 194; +pub const _VLR_VEHICLE_CLASS_VLR_HENGTIAN: _VLR_VEHICLE_CLASS = 195; +pub const _VLR_VEHICLE_CLASS_VLR_JMCCAR: _VLR_VEHICLE_CLASS = 196; +pub const _VLR_VEHICLE_CLASS_VLR_KAERSEN: _VLR_VEHICLE_CLASS = 197; +pub const _VLR_VEHICLE_CLASS_VLR_KAWEI: _VLR_VEHICLE_CLASS = 198; +pub const _VLR_VEHICLE_CLASS_VLR_LANBOJINI: _VLR_VEHICLE_CLASS = 199; +pub const _VLR_VEHICLE_CLASS_VLR_MASHALADI: _VLR_VEHICLE_CLASS = 200; +pub const _VLR_VEHICLE_CLASS_VLR_SHUCHI: _VLR_VEHICLE_CLASS = 201; +pub const _VLR_VEHICLE_CLASS_VLR_SHILI: _VLR_VEHICLE_CLASS = 202; +pub const _VLR_VEHICLE_CLASS_VLR_HUABEI: _VLR_VEHICLE_CLASS = 203; +pub const _VLR_VEHICLE_CLASS_VLR_YIZHENG: _VLR_VEHICLE_CLASS = 204; +pub const _VLR_VEHICLE_CLASS_VLR_CHUNLAN: _VLR_VEHICLE_CLASS = 205; +pub const _VLR_VEHICLE_CLASS_VLR_DAFA: _VLR_VEHICLE_CLASS = 206; +pub const _VLR_VEHICLE_CLASS_VLR_SHENYE: _VLR_VEHICLE_CLASS = 207; +pub const _VLR_VEHICLE_CLASS_VLR_FALALI: _VLR_VEHICLE_CLASS = 208; +pub const _VLR_VEHICLE_CLASS_VLR_FUXING: _VLR_VEHICLE_CLASS = 209; +pub const _VLR_VEHICLE_CLASS_VLR_ANYUAN: _VLR_VEHICLE_CLASS = 210; +pub const _VLR_VEHICLE_CLASS_VLR_JINGHUA: _VLR_VEHICLE_CLASS = 211; +pub const _VLR_VEHICLE_CLASS_VLR_TAIHU: _VLR_VEHICLE_CLASS = 212; +pub const _VLR_VEHICLE_CLASS_VLR_WUZHOULONG: _VLR_VEHICLE_CLASS = 213; +pub const _VLR_VEHICLE_CLASS_VLR_CHANGLONG: _VLR_VEHICLE_CLASS = 214; +pub const _VLR_VEHICLE_CLASS_VLR_YUEXI: _VLR_VEHICLE_CLASS = 215; +pub const _VLR_VEHICLE_CLASS_VLR_SHENMA: _VLR_VEHICLE_CLASS = 216; +pub const _VLR_VEHICLE_CLASS_VLR_LUSHAN: _VLR_VEHICLE_CLASS = 217; +pub const _VLR_VEHICLE_CLASS_VLR_WANFENG: _VLR_VEHICLE_CLASS = 218; +pub const _VLR_VEHICLE_CLASS_VLR_GZYUNBAO: _VLR_VEHICLE_CLASS = 219; +pub const _VLR_VEHICLE_CLASS_VLR_ZHONGDA: _VLR_VEHICLE_CLASS = 220; +pub const _VLR_VEHICLE_CLASS_VLR_THREEWHEEL: _VLR_VEHICLE_CLASS = 221; +pub const _VLR_VEHICLE_CLASS_VLR_TWOWHEEL: _VLR_VEHICLE_CLASS = 222; +pub const _VLR_VEHICLE_CLASS_VLR_JBC: _VLR_VEHICLE_CLASS = 223; +pub const _VLR_VEHICLE_CLASS_VLR_YZJIANG: _VLR_VEHICLE_CLASS = 224; +pub const _VLR_VEHICLE_CLASS_VLR_CNJ: _VLR_VEHICLE_CLASS = 225; +pub const _VLR_VEHICLE_CLASS_VLR_FORLAND: _VLR_VEHICLE_CLASS = 226; +pub const _VLR_VEHICLE_CLASS_VLR_FARMCAR: _VLR_VEHICLE_CLASS = 227; +pub const _VLR_VEHICLE_CLASS_VLR_DONGFANGHONG: _VLR_VEHICLE_CLASS = 228; +pub const _VLR_VEHICLE_CLASS_VLR_STEYR: _VLR_VEHICLE_CLASS = 229; +pub const _VLR_VEHICLE_CLASS_VLR_HONGQI: _VLR_VEHICLE_CLASS = 230; +pub const _VLR_VEHICLE_CLASS_VLR_USER1: _VLR_VEHICLE_CLASS = 231; +pub const _VLR_VEHICLE_CLASS_VLR_USER2: _VLR_VEHICLE_CLASS = 232; +pub const _VLR_VEHICLE_CLASS_VLR_USER3: _VLR_VEHICLE_CLASS = 233; +pub const _VLR_VEHICLE_CLASS_VLR_USER4: _VLR_VEHICLE_CLASS = 234; +pub const _VLR_VEHICLE_CLASS_VLR_USER5: _VLR_VEHICLE_CLASS = 235; +pub const _VLR_VEHICLE_CLASS_VLR_USER6: _VLR_VEHICLE_CLASS = 236; +pub const _VLR_VEHICLE_CLASS_VLR_USER7: _VLR_VEHICLE_CLASS = 237; +pub const _VLR_VEHICLE_CLASS_VLR_USER8: _VLR_VEHICLE_CLASS = 238; +pub type _VLR_VEHICLE_CLASS = ::std::os::raw::c_uint; +pub use self::_VLR_VEHICLE_CLASS as VLR_VEHICLE_CLASS; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_OTHER: _VSB_VOLKSWAGEN_CLASS = 0; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_LAVIDA: _VSB_VOLKSWAGEN_CLASS = 1; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_CROSSLAVIDA: _VSB_VOLKSWAGEN_CLASS = 2; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_TIGUAN: _VSB_VOLKSWAGEN_CLASS = 3; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_TOURAN: _VSB_VOLKSWAGEN_CLASS = 4; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_SANTANA: _VSB_VOLKSWAGEN_CLASS = 5; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_SANTANA2000: _VSB_VOLKSWAGEN_CLASS = 6; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_SANTANA3000: _VSB_VOLKSWAGEN_CLASS = 7; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_VISTA: _VSB_VOLKSWAGEN_CLASS = 8; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_PASSAT: _VSB_VOLKSWAGEN_CLASS = 9; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_PASSATLINGYU: _VSB_VOLKSWAGEN_CLASS = 10; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_POLO: _VSB_VOLKSWAGEN_CLASS = 11; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_POLOCROSS: _VSB_VOLKSWAGEN_CLASS = 12; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_POLOGTI: _VSB_VOLKSWAGEN_CLASS = 13; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_SAGITAR: _VSB_VOLKSWAGEN_CLASS = 14; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_MAGOTAN: _VSB_VOLKSWAGEN_CLASS = 15; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_JETTA: _VSB_VOLKSWAGEN_CLASS = 16; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_BORA: _VSB_VOLKSWAGEN_CLASS = 17; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_NEWGOLF: _VSB_VOLKSWAGEN_CLASS = 18; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_GOLFGTI: _VSB_VOLKSWAGEN_CLASS = 19; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_GOL: _VSB_VOLKSWAGEN_CLASS = 20; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_CADDY: _VSB_VOLKSWAGEN_CLASS = 21; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_PHAETON: _VSB_VOLKSWAGEN_CLASS = 22; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_TOUREG: _VSB_VOLKSWAGEN_CLASS = 23; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_SCIROCCO: _VSB_VOLKSWAGEN_CLASS = 24; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_BEETLE: _VSB_VOLKSWAGEN_CLASS = 25; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_SHARAN: _VSB_VOLKSWAGEN_CLASS = 26; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_MULTIVAN: _VSB_VOLKSWAGEN_CLASS = 27; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_CARBONCOPY: _VSB_VOLKSWAGEN_CLASS = 28; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_VISTACHANGDA: _VSB_VOLKSWAGEN_CLASS = 29; +pub const _VSB_VOLKSWAGEN_CLASS_VSB_VOLKSWAGEN_BORASPORTLINE: _VSB_VOLKSWAGEN_CLASS = 30; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_CC_1: _VSB_VOLKSWAGEN_CLASS = 31; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_Cross_POLO_1: _VSB_VOLKSWAGEN_CLASS = 32; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_Cross_POLO_2: _VSB_VOLKSWAGEN_CLASS = 33; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_MULTIVAN_1: _VSB_VOLKSWAGEN_CLASS = 34; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_POLO_1: _VSB_VOLKSWAGEN_CLASS = 35; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_POLO_2: _VSB_VOLKSWAGEN_CLASS = 36; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_POLO_JINQU_1: _VSB_VOLKSWAGEN_CLASS = 37; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_POLO_JINQU_2: _VSB_VOLKSWAGEN_CLASS = 38; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_Tiguan_1: _VSB_VOLKSWAGEN_CLASS = 39; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_Tiguan_2: _VSB_VOLKSWAGEN_CLASS = 40; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_XIALANG_1: _VSB_VOLKSWAGEN_CLASS = 41; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_BAOLAI_1: _VSB_VOLKSWAGEN_CLASS = 42; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_BAOLAI_2: _VSB_VOLKSWAGEN_CLASS = 43; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_BAOLAI_3: _VSB_VOLKSWAGEN_CLASS = 44; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_BAOLAI_4: _VSB_VOLKSWAGEN_CLASS = 45; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_SHANGKU_1: _VSB_VOLKSWAGEN_CLASS = 46; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_PASATE_1: _VSB_VOLKSWAGEN_CLASS = 47; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_PASATE_2: _VSB_VOLKSWAGEN_CLASS = 48; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_PASATE_3: _VSB_VOLKSWAGEN_CLASS = 49; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_PASATE_4: _VSB_VOLKSWAGEN_CLASS = 50; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_PASATE_5: _VSB_VOLKSWAGEN_CLASS = 51; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_JIEDA_1: _VSB_VOLKSWAGEN_CLASS = 52; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_JIEDA_2: _VSB_VOLKSWAGEN_CLASS = 53; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_JIEDA_3: _VSB_VOLKSWAGEN_CLASS = 54; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_JIEDA_4: _VSB_VOLKSWAGEN_CLASS = 55; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_LANGYI_1: _VSB_VOLKSWAGEN_CLASS = 56; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_LANGYI_2: _VSB_VOLKSWAGEN_CLASS = 57; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_SANGTANA_1: _VSB_VOLKSWAGEN_CLASS = 58; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_SANGTANA_2: _VSB_VOLKSWAGEN_CLASS = 59; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_SANGTANA_3: _VSB_VOLKSWAGEN_CLASS = 60; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_SANGTANA_4: _VSB_VOLKSWAGEN_CLASS = 61; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_SANGTANAZHIJUN_1: _VSB_VOLKSWAGEN_CLASS = 62; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_SANGTANAZHIJUN_2: _VSB_VOLKSWAGEN_CLASS = 63; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_JIAKECHONG_1: _VSB_VOLKSWAGEN_CLASS = 64; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_JIAKECHONG_2: _VSB_VOLKSWAGEN_CLASS = 65; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_HUITENG_2: _VSB_VOLKSWAGEN_CLASS = 66; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_MAITENG_1: _VSB_VOLKSWAGEN_CLASS = 67; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_MAITENG_2: _VSB_VOLKSWAGEN_CLASS = 68; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_TUAN_3: _VSB_VOLKSWAGEN_CLASS = 69; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_TUAN_1: _VSB_VOLKSWAGEN_CLASS = 70; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_TUAN_2: _VSB_VOLKSWAGEN_CLASS = 71; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_TUGUAN_1: _VSB_VOLKSWAGEN_CLASS = 72; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_TURUI_1: _VSB_VOLKSWAGEN_CLASS = 73; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_TURUI_2: _VSB_VOLKSWAGEN_CLASS = 74; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_SUTENG_1: _VSB_VOLKSWAGEN_CLASS = 75; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_SUTENG_2: _VSB_VOLKSWAGEN_CLASS = 76; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_SUTENG_3: _VSB_VOLKSWAGEN_CLASS = 77; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_GAOERFU_1: _VSB_VOLKSWAGEN_CLASS = 78; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_GAOERFU_2: _VSB_VOLKSWAGEN_CLASS = 79; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_GAOERFU_3: _VSB_VOLKSWAGEN_CLASS = 80; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_LANGYI_3: _VSB_VOLKSWAGEN_CLASS = 81; +pub const _VSB_VOLKSWAGEN_CLASS_VSR_VOLKSWAGEN_HUITENG_1: _VSB_VOLKSWAGEN_CLASS = 82; +#[doc = "����Ʒ��������Begin"] +pub type _VSB_VOLKSWAGEN_CLASS = ::std::os::raw::c_uint; +#[doc = "����Ʒ��������Begin"] +pub use self::_VSB_VOLKSWAGEN_CLASS as VSB_VOLKSWAGEN_CLASS; +pub const _VBR_BUICK_CLASS_VBR_BUICK_OTHER: _VBR_BUICK_CLASS = 0; +pub const _VBR_BUICK_CLASS_VBR_BUICK_ENCORE: _VBR_BUICK_CLASS = 1; +pub const _VBR_BUICK_CLASS_VBR_BUICK_GL8: _VBR_BUICK_CLASS = 2; +pub const _VBR_BUICK_CLASS_VBR_BUICK_LEGAL: _VBR_BUICK_CLASS = 3; +pub const _VBR_BUICK_CLASS_VBR_BUICK_LACROSS: _VBR_BUICK_CLASS = 4; +pub const _VBR_BUICK_CLASS_VBR_BUICK_EXCELLE: _VBR_BUICK_CLASS = 5; +pub const _VBR_BUICK_CLASS_VBR_BUICK_EXCELLEGT: _VBR_BUICK_CLASS = 6; +pub const _VBR_BUICK_CLASS_VBR_BUICK_WXCELLEXT: _VBR_BUICK_CLASS = 7; +pub const _VBR_BUICK_CLASS_VBR_BUICK_ENCLAVE: _VBR_BUICK_CLASS = 8; +pub const _VBR_BUICK_CLASS_VBR_BUICK_ROYAUM: _VBR_BUICK_CLASS = 9; +pub const _VBR_BUICK_CLASS_VBR_BUICK_SAIL: _VBR_BUICK_CLASS = 10; +pub const _VBR_BUICK_CLASS_VBR_BUICK_EXCELLEHRV: _VBR_BUICK_CLASS = 11; +pub const _VBR_BUICK_CLASS_VBR_BUICK_PARKAVENUE: _VBR_BUICK_CLASS = 12; +pub const _VBR_BUICK_CLASS_VBR_BUICK_CENTURY: _VBR_BUICK_CLASS = 13; +pub const _VBR_BUICK_CLASS_VBR_BUICK_GL8_1: _VBR_BUICK_CLASS = 14; +pub const _VBR_BUICK_CLASS_VBR_BUICK_GL8_2: _VBR_BUICK_CLASS = 15; +pub const _VBR_BUICK_CLASS_VBR_BUICK_GL8_3: _VBR_BUICK_CLASS = 16; +pub const _VBR_BUICK_CLASS_VBR_BUICK_GL8_4: _VBR_BUICK_CLASS = 17; +pub const _VBR_BUICK_CLASS_VBR_BUICK_GL8_5: _VBR_BUICK_CLASS = 18; +pub const _VBR_BUICK_CLASS_VBR_BUICK_ENCORE_1: _VBR_BUICK_CLASS = 19; +pub const _VBR_BUICK_CLASS_VBR_BUICK_ENCLAVE_1: _VBR_BUICK_CLASS = 20; +pub const _VBR_BUICK_CLASS_VBR_BUICK_LEGAL_1: _VBR_BUICK_CLASS = 21; +pub const _VBR_BUICK_CLASS_VBR_BUICK_LEGAL_2: _VBR_BUICK_CLASS = 22; +pub const _VBR_BUICK_CLASS_VBR_BUICK_LEGAL_3: _VBR_BUICK_CLASS = 23; +pub const _VBR_BUICK_CLASS_VBR_BUICK_LEGAL_4: _VBR_BUICK_CLASS = 24; +pub const _VBR_BUICK_CLASS_VBR_BUICK_LEGAL_5: _VBR_BUICK_CLASS = 25; +pub const _VBR_BUICK_CLASS_VBR_BUICK_LEGAL_6: _VBR_BUICK_CLASS = 26; +pub const _VBR_BUICK_CLASS_VBR_BUICK_LACROSS_1: _VBR_BUICK_CLASS = 27; +pub const _VBR_BUICK_CLASS_VBR_BUICK_LACROSS_2: _VBR_BUICK_CLASS = 28; +pub const _VBR_BUICK_CLASS_VBR_BUICK_LACROSS_3: _VBR_BUICK_CLASS = 29; +pub const _VBR_BUICK_CLASS_VBR_BUICK_EXCELLE_1: _VBR_BUICK_CLASS = 30; +pub const _VBR_BUICK_CLASS_VBR_BUICK_EXCELLE_2: _VBR_BUICK_CLASS = 31; +pub const _VBR_BUICK_CLASS_VBR_BUICK_EXCELLE_3: _VBR_BUICK_CLASS = 32; +pub const _VBR_BUICK_CLASS_VBR_BUICK_EXCELLE_4: _VBR_BUICK_CLASS = 33; +pub const _VBR_BUICK_CLASS_VBR_BUICK_PARKAVENUE_1: _VBR_BUICK_CLASS = 34; +pub const _VBR_BUICK_CLASS_VBR_BUICK_SAIL_1: _VBR_BUICK_CLASS = 35; +pub const _VBR_BUICK_CLASS_VBR_BUICK_EXCELLEGT_1: _VBR_BUICK_CLASS = 36; +pub const _VBR_BUICK_CLASS_VBR_BUICK_WXCELLEXT_1: _VBR_BUICK_CLASS = 37; +pub const _VBR_BUICK_CLASS_VBR_BUICK_CENTURY_1: _VBR_BUICK_CLASS = 38; +pub const _VBR_BUICK_CLASS_VBR_BUICK_RONGYU_1: _VBR_BUICK_CLASS = 39; +pub type _VBR_BUICK_CLASS = ::std::os::raw::c_uint; +pub use self::_VBR_BUICK_CLASS as VBR_BUICK_CLASS; +pub const _VSB_BMW_CLASS_VSB_BMW_OTHER: _VSB_BMW_CLASS = 0; +pub const _VSB_BMW_CLASS_VSB_BMW_3SERIES: _VSB_BMW_CLASS = 1; +pub const _VSB_BMW_CLASS_VSB_BMW_5SERIES: _VSB_BMW_CLASS = 2; +pub const _VSB_BMW_CLASS_VSB_BMW_X1: _VSB_BMW_CLASS = 3; +pub const _VSB_BMW_CLASS_VSB_BMW_1SERIES: _VSB_BMW_CLASS = 4; +pub const _VSB_BMW_CLASS_VSB_BMW_7SERIES: _VSB_BMW_CLASS = 5; +pub const _VSB_BMW_CLASS_VSB_BMW_X3: _VSB_BMW_CLASS = 6; +pub const _VSB_BMW_CLASS_VSB_BMW_X5: _VSB_BMW_CLASS = 7; +pub const _VSB_BMW_CLASS_VSB_BMW_X6: _VSB_BMW_CLASS = 8; +pub const _VSB_BMW_CLASS_VSB_BMW_Z4: _VSB_BMW_CLASS = 9; +pub const _VSB_BMW_CLASS_VSB_BMW_MINI: _VSB_BMW_CLASS = 10; +pub const _VSB_BMW_CLASS_VSB_BMW_6SERIES: _VSB_BMW_CLASS = 11; +pub const _VSB_BMW_CLASS_VSB_BMW_YIXI_1: _VSB_BMW_CLASS = 12; +pub const _VSB_BMW_CLASS_VSB_BMW_YIXI_2: _VSB_BMW_CLASS = 13; +pub const _VSB_BMW_CLASS_VSB_BMW_SANXI_1: _VSB_BMW_CLASS = 14; +pub const _VSB_BMW_CLASS_VSB_BMW_SANXI_2: _VSB_BMW_CLASS = 15; +pub const _VSB_BMW_CLASS_VSB_BMW_SANXI_3: _VSB_BMW_CLASS = 16; +pub const _VSB_BMW_CLASS_VSB_BMW_SANXI_4: _VSB_BMW_CLASS = 17; +pub const _VSB_BMW_CLASS_VSB_BMW_WUXI_1: _VSB_BMW_CLASS = 18; +pub const _VSB_BMW_CLASS_VSB_BMW_WUXI_2: _VSB_BMW_CLASS = 19; +pub const _VSB_BMW_CLASS_VSB_BMW_LIUXI_1: _VSB_BMW_CLASS = 20; +pub const _VSB_BMW_CLASS_VSB_BMW_QIXI_1: _VSB_BMW_CLASS = 21; +pub const _VSB_BMW_CLASS_VSB_BMW_QIXI_2: _VSB_BMW_CLASS = 22; +pub const _VSB_BMW_CLASS_VSB_BMW_X1_1: _VSB_BMW_CLASS = 23; +pub const _VSB_BMW_CLASS_VSB_BMW_X1_2: _VSB_BMW_CLASS = 24; +pub const _VSB_BMW_CLASS_VSB_BMW_X3_1: _VSB_BMW_CLASS = 25; +pub const _VSB_BMW_CLASS_VSB_BMW_X3_2: _VSB_BMW_CLASS = 26; +pub const _VSB_BMW_CLASS_VSB_BMW_X5_1: _VSB_BMW_CLASS = 27; +pub const _VSB_BMW_CLASS_VSB_BMW_X5_2: _VSB_BMW_CLASS = 28; +pub const _VSB_BMW_CLASS_VSB_BMW_X5_3: _VSB_BMW_CLASS = 29; +pub const _VSB_BMW_CLASS_VSB_BMW_X6_1: _VSB_BMW_CLASS = 30; +pub const _VSB_BMW_CLASS_VSB_BMW_Z4_1: _VSB_BMW_CLASS = 31; +pub type _VSB_BMW_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_BMW_CLASS as VSB_BMW_CLASS; +pub const _VSB_HONDA_CLASS_VSB_HONDA_OTHER: _VSB_HONDA_CLASS = 0; +pub const _VSB_HONDA_CLASS_VSB_HONDA_CRV: _VSB_HONDA_CLASS = 1; +pub const _VSB_HONDA_CLASS_VSB_HONDA_JADE: _VSB_HONDA_CLASS = 2; +pub const _VSB_HONDA_CLASS_VSB_HONDA_CIVIC: _VSB_HONDA_CLASS = 3; +pub const _VSB_HONDA_CLASS_VSB_HONDA_SPIRIOR: _VSB_HONDA_CLASS = 4; +pub const _VSB_HONDA_CLASS_VSB_HONDA_CIIMO: _VSB_HONDA_CLASS = 5; +pub const _VSB_HONDA_CLASS_VSB_HONDA_ELYSION: _VSB_HONDA_CLASS = 6; +pub const _VSB_HONDA_CLASS_VSB_HONDA_OBYSSEY: _VSB_HONDA_CLASS = 7; +pub const _VSB_HONDA_CLASS_VSB_HONDA_FIT: _VSB_HONDA_CLASS = 8; +pub const _VSB_HONDA_CLASS_VSB_HONDA_NEWCITY: _VSB_HONDA_CLASS = 9; +pub const _VSB_HONDA_CLASS_VSB_HONDA_CROSSTOUR: _VSB_HONDA_CLASS = 10; +pub const _VSB_HONDA_CLASS_VSB_HONDA_CRIDER: _VSB_HONDA_CLASS = 11; +pub const _VSB_HONDA_CLASS_VSB_HONDA_ACCORD: _VSB_HONDA_CLASS = 12; +pub const _VSB_HONDA_CLASS_VSB_HONDA_CITY: _VSB_HONDA_CLASS = 13; +pub const _VSB_HONDA_CLASS_VSB_HONDA_ANTILOCK: _VSB_HONDA_CLASS = 14; +pub const _VSB_HONDA_CLASS_VSB_HONDA_CRZ: _VSB_HONDA_CLASS = 15; +pub const _VSB_HONDA_CLASS_VSB_HONDA_CRV_1: _VSB_HONDA_CLASS = 16; +pub const _VSB_HONDA_CLASS_VSB_HONDA_CRV_2: _VSB_HONDA_CLASS = 17; +pub const _VSB_HONDA_CLASS_VSB_HONDA_CRV_3: _VSB_HONDA_CLASS = 18; +pub const _VSB_HONDA_CLASS_VSB_HONDA_CRV_4: _VSB_HONDA_CLASS = 19; +pub const _VSB_HONDA_CLASS_VSB_HONDA_CRV_5: _VSB_HONDA_CLASS = 20; +pub const _VSB_HONDA_CLASS_VSB_HONDA_CRIDER_1: _VSB_HONDA_CLASS = 21; +pub const _VSB_HONDA_CLASS_VSB_HONDA_OBYSSEY_1: _VSB_HONDA_CLASS = 22; +pub const _VSB_HONDA_CLASS_VSB_HONDA_OBYSSEY_2: _VSB_HONDA_CLASS = 23; +pub const _VSB_HONDA_CLASS_VSB_HONDA_OBYSSEY_3: _VSB_HONDA_CLASS = 24; +pub const _VSB_HONDA_CLASS_VSB_HONDA_OBYSSEY_4: _VSB_HONDA_CLASS = 25; +pub const _VSB_HONDA_CLASS_VSB_HONDA_CIVIC_1: _VSB_HONDA_CLASS = 26; +pub const _VSB_HONDA_CLASS_VSB_HONDA_CIVIC_5: _VSB_HONDA_CLASS = 27; +pub const _VSB_HONDA_CLASS_VSB_HONDA_CIVIC_2: _VSB_HONDA_CLASS = 28; +pub const _VSB_HONDA_CLASS_VSB_HONDA_CIVIC_3: _VSB_HONDA_CLASS = 29; +pub const _VSB_HONDA_CLASS_VSB_HONDA_CIVIC_4: _VSB_HONDA_CLASS = 30; +pub const _VSB_HONDA_CLASS_VSB_HONDA_CITY_1: _VSB_HONDA_CLASS = 31; +pub const _VSB_HONDA_CLASS_VSB_HONDA_SPIRIOR_1: _VSB_HONDA_CLASS = 32; +pub const _VSB_HONDA_CLASS_VSB_HONDA_SIMING_1: _VSB_HONDA_CLASS = 33; +pub const _VSB_HONDA_CLASS_VSB_HONDA_JIEDE_1: _VSB_HONDA_CLASS = 34; +pub const _VSB_HONDA_CLASS_VSB_HONDA_CROSSTOUR_1: _VSB_HONDA_CLASS = 35; +pub const _VSB_HONDA_CLASS_VSB_HONDA_AILISHEN_1: _VSB_HONDA_CLASS = 36; +pub const _VSB_HONDA_CLASS_VSB_HONDA_NEWCITY_1: _VSB_HONDA_CLASS = 37; +pub const _VSB_HONDA_CLASS_VSB_HONDA_NEWCITY_2: _VSB_HONDA_CLASS = 38; +pub const _VSB_HONDA_CLASS_VSB_HONDA_NEWCITY_3: _VSB_HONDA_CLASS = 39; +pub const _VSB_HONDA_CLASS_VSB_HONDA_ACCORD_1: _VSB_HONDA_CLASS = 40; +pub const _VSB_HONDA_CLASS_VSB_HONDA_ACCORD_2: _VSB_HONDA_CLASS = 41; +pub const _VSB_HONDA_CLASS_VSB_HONDA_ACCORD_3: _VSB_HONDA_CLASS = 42; +pub const _VSB_HONDA_CLASS_VSB_HONDA_ACCORD_4: _VSB_HONDA_CLASS = 43; +pub const _VSB_HONDA_CLASS_VSB_HONDA_ACCORD_5: _VSB_HONDA_CLASS = 44; +pub const _VSB_HONDA_CLASS_VSB_HONDA_ACCORD_6: _VSB_HONDA_CLASS = 45; +pub const _VSB_HONDA_CLASS_VSB_HONDA_ACCORD_7: _VSB_HONDA_CLASS = 46; +pub const _VSB_HONDA_CLASS_VSB_HONDA_ACCORD_8: _VSB_HONDA_CLASS = 47; +pub const _VSB_HONDA_CLASS_VSB_HONDA_ACCORD_9: _VSB_HONDA_CLASS = 48; +pub const _VSB_HONDA_CLASS_VSB_HONDA_ACCORD_10: _VSB_HONDA_CLASS = 49; +pub const _VSB_HONDA_CLASS_VSB_HONDA_FIT_1: _VSB_HONDA_CLASS = 50; +pub const _VSB_HONDA_CLASS_VSB_HONDA_FIT_2: _VSB_HONDA_CLASS = 51; +pub const _VSB_HONDA_CLASS_VSB_HONDA_FIT_3: _VSB_HONDA_CLASS = 52; +pub const _VSB_HONDA_CLASS_VSB_HONDA_FIT_4: _VSB_HONDA_CLASS = 53; +pub const _VSB_HONDA_CLASS_VSB_HONDA_FIT_5: _VSB_HONDA_CLASS = 54; +pub const _VSB_HONDA_CLASS_VSB_HONDA_FIT_6: _VSB_HONDA_CLASS = 55; +pub type _VSB_HONDA_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_HONDA_CLASS as VSB_HONDA_CLASS; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_OTHER: _VSB_PEUGEOT_CLASS = 0; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_2008: _VSB_PEUGEOT_CLASS = 1; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_207: _VSB_PEUGEOT_CLASS = 2; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_SENNA: _VSB_PEUGEOT_CLASS = 3; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_3008: _VSB_PEUGEOT_CLASS = 4; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_301: _VSB_PEUGEOT_CLASS = 5; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_307: _VSB_PEUGEOT_CLASS = 6; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_308: _VSB_PEUGEOT_CLASS = 7; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_408: _VSB_PEUGEOT_CLASS = 8; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_508: _VSB_PEUGEOT_CLASS = 9; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_206: _VSB_PEUGEOT_CLASS = 10; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_407: _VSB_PEUGEOT_CLASS = 11; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_206_1: _VSB_PEUGEOT_CLASS = 12; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_207_1: _VSB_PEUGEOT_CLASS = 13; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_207_2: _VSB_PEUGEOT_CLASS = 14; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_3008_1: _VSB_PEUGEOT_CLASS = 15; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_301_1: _VSB_PEUGEOT_CLASS = 16; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_307_1: _VSB_PEUGEOT_CLASS = 17; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_307_2: _VSB_PEUGEOT_CLASS = 18; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_307_3: _VSB_PEUGEOT_CLASS = 19; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_308_1: _VSB_PEUGEOT_CLASS = 20; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_407_1: _VSB_PEUGEOT_CLASS = 21; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_408_1: _VSB_PEUGEOT_CLASS = 22; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_408_2: _VSB_PEUGEOT_CLASS = 23; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_508_1: _VSB_PEUGEOT_CLASS = 24; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_207_3: _VSB_PEUGEOT_CLASS = 25; +pub const _VSB_PEUGEOT_CLASS_VSB_PEUGEOT_307_4: _VSB_PEUGEOT_CLASS = 26; +pub type _VSB_PEUGEOT_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_PEUGEOT_CLASS as VSB_PEUGEOT_CLASS; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_OTHER: _VSB_TOYOTA_CLASS = 0; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_HIGHLANDER: _VSB_TOYOTA_CLASS = 1; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_CAMRY: _VSB_TOYOTA_CLASS = 2; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_YARIS: _VSB_TOYOTA_CLASS = 3; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_YARISL: _VSB_TOYOTA_CLASS = 4; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_VERSO: _VSB_TOYOTA_CLASS = 5; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_HUAGUAN: _VSB_TOYOTA_CLASS = 6; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_CROWN: _VSB_TOYOTA_CLASS = 7; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_COROLLA: _VSB_TOYOTA_CLASS = 8; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_COSTER: _VSB_TOYOTA_CLASS = 9; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_PRADO: _VSB_TOYOTA_CLASS = 10; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_PRIUS: _VSB_TOYOTA_CLASS = 11; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_RAV4: _VSB_TOYOTA_CLASS = 12; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_REZI: _VSB_TOYOTA_CLASS = 13; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_VIOS: _VSB_TOYOTA_CLASS = 14; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_PREVIA: _VSB_TOYOTA_CLASS = 15; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_HIACE: _VSB_TOYOTA_CLASS = 16; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_86: _VSB_TOYOTA_CLASS = 17; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_SPEQUOIA: _VSB_TOYOTA_CLASS = 18; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_LANDCRUISER: _VSB_TOYOTA_CLASS = 19; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_SIENNA: _VSB_TOYOTA_CLASS = 20; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_CAMRYHYBRID: _VSB_TOYOTA_CLASS = 21; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_GRACE: _VSB_TOYOTA_CLASS = 22; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_ALPHARD: _VSB_TOYOTA_CLASS = 23; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_RAV4_1: _VSB_TOYOTA_CLASS = 24; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_RAV4_2: _VSB_TOYOTA_CLASS = 25; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_86_1: _VSB_TOYOTA_CLASS = 26; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_JIAMEI_2: _VSB_TOYOTA_CLASS = 27; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_JIAMEI_3: _VSB_TOYOTA_CLASS = 28; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_LANDEKLZ_1: _VSB_TOYOTA_CLASS = 29; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_KAIMEIRUI_1: _VSB_TOYOTA_CLASS = 30; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_KAIMEIRUI_2: _VSB_TOYOTA_CLASS = 31; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_KAIMEIRUI_3: _VSB_TOYOTA_CLASS = 32; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_KAIMEIRUI_4: _VSB_TOYOTA_CLASS = 33; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_KAIMEIRUI_5: _VSB_TOYOTA_CLASS = 34; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_KAIMEIRUI_6: _VSB_TOYOTA_CLASS = 35; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_KALUOLA_1: _VSB_TOYOTA_CLASS = 36; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_KALUOLA_2: _VSB_TOYOTA_CLASS = 37; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_AIERFA_1: _VSB_TOYOTA_CLASS = 38; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_AIERFA_2: _VSB_TOYOTA_CLASS = 39; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_WEICHI_1: _VSB_TOYOTA_CLASS = 40; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_WEICHI_2: _VSB_TOYOTA_CLASS = 41; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_WEICHI_3: _VSB_TOYOTA_CLASS = 42; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_WEICHI_4: _VSB_TOYOTA_CLASS = 43; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_WEICHI_5: _VSB_TOYOTA_CLASS = 44; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_PULADUO_1: _VSB_TOYOTA_CLASS = 45; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_PULADUO_2: _VSB_TOYOTA_CLASS = 46; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_PULADUO_3: _VSB_TOYOTA_CLASS = 47; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_PURUIWEIYA_1: _VSB_TOYOTA_CLASS = 48; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_PURUIWEIYA_4: _VSB_TOYOTA_CLASS = 49; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_PURUIWEIYA_2: _VSB_TOYOTA_CLASS = 50; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_PURUIWEIYA_3: _VSB_TOYOTA_CLASS = 51; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_KESIDA_1: _VSB_TOYOTA_CLASS = 52; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_KESIDA_2: _VSB_TOYOTA_CLASS = 53; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_HANLANDA_1: _VSB_TOYOTA_CLASS = 54; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_HANLANDA_2: _VSB_TOYOTA_CLASS = 55; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_HANLANDA_3: _VSB_TOYOTA_CLASS = 56; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_HAISHI_1: _VSB_TOYOTA_CLASS = 57; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_HUANGGUAN_1: _VSB_TOYOTA_CLASS = 58; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_HUANGGUAN_2: _VSB_TOYOTA_CLASS = 59; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_HUANGGUAN_3: _VSB_TOYOTA_CLASS = 60; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_HUANGGUAN_4: _VSB_TOYOTA_CLASS = 61; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_HONGSHAN_1: _VSB_TOYOTA_CLASS = 62; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_HUAGUAN_1: _VSB_TOYOTA_CLASS = 63; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_HUAGUAN_2: _VSB_TOYOTA_CLASS = 64; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_HUAGUAN_3: _VSB_TOYOTA_CLASS = 65; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_YIZHI_1: _VSB_TOYOTA_CLASS = 66; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_RUIZHI_1: _VSB_TOYOTA_CLASS = 67; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_RUIZHI_2: _VSB_TOYOTA_CLASS = 68; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_RUIZHI_3: _VSB_TOYOTA_CLASS = 69; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_RUIZHI_4: _VSB_TOYOTA_CLASS = 70; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_LUDIXUNYANG_1: _VSB_TOYOTA_CLASS = 71; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_YALISHI_1: _VSB_TOYOTA_CLASS = 72; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_YALISHI_2: _VSB_TOYOTA_CLASS = 73; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_RAV4_3: _VSB_TOYOTA_CLASS = 74; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_YARiSL_1: _VSB_TOYOTA_CLASS = 75; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_JIAMEI_1: _VSB_TOYOTA_CLASS = 76; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_PLATZ_1: _VSB_TOYOTA_CLASS = 77; +pub const _VSB_TOYOTA_CLASS_VSB_TOYOTA_LANDEKLZ_2: _VSB_TOYOTA_CLASS = 78; +pub type _VSB_TOYOTA_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_TOYOTA_CLASS as VSB_TOYOTA_CLASS; +pub const _VSB_FORD_CLASS_VSB_FORD_OTHER: _VSB_FORD_CLASS = 0; +pub const _VSB_FORD_CLASS_VSB_FORD_FOCUS: _VSB_FORD_CLASS = 1; +pub const _VSB_FORD_CLASS_VSB_FORD_FIESTA: _VSB_FORD_CLASS = 2; +pub const _VSB_FORD_CLASS_VSB_FORD_SMAX: _VSB_FORD_CLASS = 3; +pub const _VSB_FORD_CLASS_VSB_FORD_MONDEO: _VSB_FORD_CLASS = 4; +pub const _VSB_FORD_CLASS_VSB_FORD_ECOSPORT: _VSB_FORD_CLASS = 5; +pub const _VSB_FORD_CLASS_VSB_FORD_ESCAPE: _VSB_FORD_CLASS = 6; +pub const _VSB_FORD_CLASS_VSB_FORD_ZHISHENG: _VSB_FORD_CLASS = 7; +pub const _VSB_FORD_CLASS_VSB_FORD_ESCORT: _VSB_FORD_CLASS = 8; +pub const _VSB_FORD_CLASS_VSB_FORD_EXPLORER: _VSB_FORD_CLASS = 9; +pub const _VSB_FORD_CLASS_VSB_FORD_EDGE: _VSB_FORD_CLASS = 10; +pub const _VSB_FORD_CLASS_VSB_FORD_TRANSIT: _VSB_FORD_CLASS = 11; +pub const _VSB_FORD_CLASS_VSB_FORD_QUANSHUN_1: _VSB_FORD_CLASS = 12; +pub const _VSB_FORD_CLASS_VSB_FORD_JIANIANHUA_1: _VSB_FORD_CLASS = 13; +pub const _VSB_FORD_CLASS_VSB_FORD_JIANIANHUA_2: _VSB_FORD_CLASS = 14; +pub const _VSB_FORD_CLASS_VSB_FORD_JIANIANHUA_3: _VSB_FORD_CLASS = 15; +pub const _VSB_FORD_CLASS_VSB_FORD_JIANIANHUA_4: _VSB_FORD_CLASS = 16; +pub const _VSB_FORD_CLASS_VSB_FORD_TANXIANZHE_1: _VSB_FORD_CLASS = 17; +pub const _VSB_FORD_CLASS_VSB_FORD_FOCUS_1: _VSB_FORD_CLASS = 18; +pub const _VSB_FORD_CLASS_VSB_FORD_FOCUS_2: _VSB_FORD_CLASS = 19; +pub const _VSB_FORD_CLASS_VSB_FORD_FOCUS_3: _VSB_FORD_CLASS = 20; +pub const _VSB_FORD_CLASS_VSB_FORD_FOCUS_4: _VSB_FORD_CLASS = 21; +pub const _VSB_FORD_CLASS_VSB_FORD_FOCUS_5: _VSB_FORD_CLASS = 22; +pub const _VSB_FORD_CLASS_VSB_FORD_FOCUS_6: _VSB_FORD_CLASS = 23; +pub const _VSB_FORD_CLASS_VSB_FORD_YIBO_1: _VSB_FORD_CLASS = 24; +pub const _VSB_FORD_CLASS_VSB_FORD_YIHU_1: _VSB_FORD_CLASS = 25; +pub const _VSB_FORD_CLASS_VSB_FORD_MENGDIOU_1: _VSB_FORD_CLASS = 26; +pub const _VSB_FORD_CLASS_VSB_FORD_MENGDIOU_2: _VSB_FORD_CLASS = 27; +pub const _VSB_FORD_CLASS_VSB_FORD_MENGDIOU_3: _VSB_FORD_CLASS = 28; +pub const _VSB_FORD_CLASS_VSB_FORD_MENGDIOU_4: _VSB_FORD_CLASS = 29; +pub const _VSB_FORD_CLASS_VSB_FORD_MENGDIOU_5: _VSB_FORD_CLASS = 30; +pub const _VSB_FORD_CLASS_VSB_FORD_MENGDIOU_6: _VSB_FORD_CLASS = 31; +pub const _VSB_FORD_CLASS_VSB_FORD_RUIJIE_1: _VSB_FORD_CLASS = 32; +pub const _VSB_FORD_CLASS_VSB_FORD_MAIKESI_1: _VSB_FORD_CLASS = 33; +pub type _VSB_FORD_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_FORD_CLASS as VSB_FORD_CLASS; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_OTHER: _VSB_NISSAN_CLASS = 0; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_XTRAIL: _VSB_NISSAN_CLASS = 1; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_MURANO: _VSB_NISSAN_CLASS = 2; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_LIVINA: _VSB_NISSAN_CLASS = 3; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_MARCH: _VSB_NISSAN_CLASS = 4; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_TIIDA: _VSB_NISSAN_CLASS = 5; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_TEANA: _VSB_NISSAN_CLASS = 6; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_QASHQAI: _VSB_NISSAN_CLASS = 7; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_SYLPHY: _VSB_NISSAN_CLASS = 8; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_SUNNY: _VSB_NISSAN_CLASS = 9; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_D22PICKUP: _VSB_NISSAN_CLASS = 10; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_D22VAN: _VSB_NISSAN_CLASS = 11; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_CABSTAR: _VSB_NISSAN_CLASS = 12; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_HV200: _VSB_NISSAN_CLASS = 13; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_PALADIN: _VSB_NISSAN_CLASS = 14; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_YIDA: _VSB_NISSAN_CLASS = 15; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_DUCK: _VSB_NISSAN_CLASS = 16; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_CEFIRO: _VSB_NISSAN_CLASS = 17; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_FENGSHENBLUEBIRD: _VSB_NISSAN_CLASS = 18; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_FENGSHENSUNNY: _VSB_NISSAN_CLASS = 19; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_SUCCE: _VSB_NISSAN_CLASS = 20; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_FUGA: _VSB_NISSAN_CLASS = 21; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_BLUEBIRD4: _VSB_NISSAN_CLASS = 22; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_VENUCIA: _VSB_NISSAN_CLASS = 23; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_QUEST: _VSB_NISSAN_CLASS = 24; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_GENISS: _VSB_NISSAN_CLASS = 25; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_NV200_1: _VSB_NISSAN_CLASS = 26; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_TIANLAI_1: _VSB_NISSAN_CLASS = 27; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_TIANLAI_2: _VSB_NISSAN_CLASS = 28; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_TIANLAI_3: _VSB_NISSAN_CLASS = 29; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_TIANLAI_4: _VSB_NISSAN_CLASS = 30; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_TIANLAI_5: _VSB_NISSAN_CLASS = 31; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_TIANLAI_6: _VSB_NISSAN_CLASS = 32; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_QIJUN_1: _VSB_NISSAN_CLASS = 33; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_QIJUN_2: _VSB_NISSAN_CLASS = 34; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_PALADING_1: _VSB_NISSAN_CLASS = 35; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_LOULAN_1: _VSB_NISSAN_CLASS = 36; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_LOULAN_2: _VSB_NISSAN_CLASS = 37; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_LANNIAO_1: _VSB_NISSAN_CLASS = 38; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_LANNIAO_2: _VSB_NISSAN_CLASS = 39; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_LANNIAO_3: _VSB_NISSAN_CLASS = 40; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_GUISHI_1: _VSB_NISSAN_CLASS = 41; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_XUANYI_1: _VSB_NISSAN_CLASS = 42; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_XUANYI_2: _VSB_NISSAN_CLASS = 43; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_XUANYI_3: _VSB_NISSAN_CLASS = 44; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_XIAOKE_1: _VSB_NISSAN_CLASS = 45; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_XIAOKE_2: _VSB_NISSAN_CLASS = 46; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_SUNNY_3: _VSB_NISSAN_CLASS = 47; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_SUNNY_1: _VSB_NISSAN_CLASS = 48; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_SUNNY_2: _VSB_NISSAN_CLASS = 49; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_YIDA_1: _VSB_NISSAN_CLASS = 50; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_YIDA_2: _VSB_NISSAN_CLASS = 51; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_FENGDU_1: _VSB_NISSAN_CLASS = 52; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_FENGYA_1: _VSB_NISSAN_CLASS = 53; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_LIWEI_1: _VSB_NISSAN_CLASS = 54; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_LIWEI_2: _VSB_NISSAN_CLASS = 55; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_LIWEI_3: _VSB_NISSAN_CLASS = 56; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_LIWEI_4: _VSB_NISSAN_CLASS = 57; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_JUNYI_1: _VSB_NISSAN_CLASS = 58; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_QIDA_1: _VSB_NISSAN_CLASS = 59; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_QIDA_2: _VSB_NISSAN_CLASS = 60; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_QIDA_3: _VSB_NISSAN_CLASS = 61; +pub const _VSB_NISSAN_CLASS_VSB_NISSAN_RUIQI_1: _VSB_NISSAN_CLASS = 62; +pub type _VSB_NISSAN_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_NISSAN_CLASS as VSB_NISSAN_CLASS; +pub const _VSB_AUDI_CLASS_VSB_AUDI_OTHER: _VSB_AUDI_CLASS = 0; +pub const _VSB_AUDI_CLASS_VSB_AUDI_A3: _VSB_AUDI_CLASS = 1; +pub const _VSB_AUDI_CLASS_VSB_AUDI_A4L: _VSB_AUDI_CLASS = 2; +pub const _VSB_AUDI_CLASS_VSB_AUDI_A6L: _VSB_AUDI_CLASS = 3; +pub const _VSB_AUDI_CLASS_VSB_AUDI_Q3: _VSB_AUDI_CLASS = 4; +pub const _VSB_AUDI_CLASS_VSB_AUDI_Q5: _VSB_AUDI_CLASS = 5; +pub const _VSB_AUDI_CLASS_VSB_AUDI_A1: _VSB_AUDI_CLASS = 6; +pub const _VSB_AUDI_CLASS_VSB_AUDI_A4: _VSB_AUDI_CLASS = 7; +pub const _VSB_AUDI_CLASS_VSB_AUDI_A5: _VSB_AUDI_CLASS = 8; +pub const _VSB_AUDI_CLASS_VSB_AUDI_A6: _VSB_AUDI_CLASS = 9; +pub const _VSB_AUDI_CLASS_VSB_AUDI_A7: _VSB_AUDI_CLASS = 10; +pub const _VSB_AUDI_CLASS_VSB_AUDI_A8L: _VSB_AUDI_CLASS = 11; +pub const _VSB_AUDI_CLASS_VSB_AUDI_Q7: _VSB_AUDI_CLASS = 12; +pub const _VSB_AUDI_CLASS_VSB_AUDI_S5: _VSB_AUDI_CLASS = 13; +pub const _VSB_AUDI_CLASS_VSB_AUDI_TT: _VSB_AUDI_CLASS = 14; +pub const _VSB_AUDI_CLASS_VSB_AUDI_100: _VSB_AUDI_CLASS = 15; +pub const _VSB_AUDI_CLASS_VSB_AUDI_200: _VSB_AUDI_CLASS = 16; +pub const _VSB_AUDI_CLASS_VSB_AUDI_S7: _VSB_AUDI_CLASS = 17; +pub const _VSB_AUDI_CLASS_VSB_AUDI_S8: _VSB_AUDI_CLASS = 18; +pub const _VSB_AUDI_CLASS_VSB_AUDI_100_1: _VSB_AUDI_CLASS = 19; +pub const _VSB_AUDI_CLASS_VSB_AUDI_200_1: _VSB_AUDI_CLASS = 20; +pub const _VSB_AUDI_CLASS_VSB_AUDI_A1_1: _VSB_AUDI_CLASS = 21; +pub const _VSB_AUDI_CLASS_VSB_AUDI_A3_1: _VSB_AUDI_CLASS = 22; +pub const _VSB_AUDI_CLASS_VSB_AUDI_A3_2: _VSB_AUDI_CLASS = 23; +pub const _VSB_AUDI_CLASS_VSB_AUDI_A4_1: _VSB_AUDI_CLASS = 24; +pub const _VSB_AUDI_CLASS_VSB_AUDI_A4_2: _VSB_AUDI_CLASS = 25; +pub const _VSB_AUDI_CLASS_VSB_AUDI_A4L_1: _VSB_AUDI_CLASS = 26; +pub const _VSB_AUDI_CLASS_VSB_AUDI_A5_1: _VSB_AUDI_CLASS = 27; +pub const _VSB_AUDI_CLASS_VSB_AUDI_A6_1: _VSB_AUDI_CLASS = 28; +pub const _VSB_AUDI_CLASS_VSB_AUDI_A6L_1: _VSB_AUDI_CLASS = 29; +pub const _VSB_AUDI_CLASS_VSB_AUDI_A6L_2: _VSB_AUDI_CLASS = 30; +pub const _VSB_AUDI_CLASS_VSB_AUDI_A6L_3: _VSB_AUDI_CLASS = 31; +pub const _VSB_AUDI_CLASS_VSB_AUDI_A7_1: _VSB_AUDI_CLASS = 32; +pub const _VSB_AUDI_CLASS_VSB_AUDI_A8L_1: _VSB_AUDI_CLASS = 33; +pub const _VSB_AUDI_CLASS_VSB_AUDI_A8L_2: _VSB_AUDI_CLASS = 34; +pub const _VSB_AUDI_CLASS_VSB_AUDI_A8L_3: _VSB_AUDI_CLASS = 35; +pub const _VSB_AUDI_CLASS_VSB_AUDI_A8L_4: _VSB_AUDI_CLASS = 36; +pub const _VSB_AUDI_CLASS_VSB_AUDI_Q3_1: _VSB_AUDI_CLASS = 37; +pub const _VSB_AUDI_CLASS_VSB_AUDI_Q5_1: _VSB_AUDI_CLASS = 38; +pub const _VSB_AUDI_CLASS_VSB_AUDI_Q5_2: _VSB_AUDI_CLASS = 39; +pub const _VSB_AUDI_CLASS_VSB_AUDI_Q5_3: _VSB_AUDI_CLASS = 40; +pub const _VSB_AUDI_CLASS_VSB_AUDI_Q5_4: _VSB_AUDI_CLASS = 41; +pub const _VSB_AUDI_CLASS_VSB_AUDI_Q7_1: _VSB_AUDI_CLASS = 42; +pub const _VSB_AUDI_CLASS_VSB_AUDI_Q7_2: _VSB_AUDI_CLASS = 43; +pub const _VSB_AUDI_CLASS_VSB_AUDI_S7_1: _VSB_AUDI_CLASS = 44; +pub const _VSB_AUDI_CLASS_VSB_AUDI_S8_1: _VSB_AUDI_CLASS = 45; +pub const _VSB_AUDI_CLASS_VSB_AUDI_TT_2: _VSB_AUDI_CLASS = 46; +pub const _VSB_AUDI_CLASS_VSB_AUDI_TT_3: _VSB_AUDI_CLASS = 47; +pub const _VSB_AUDI_CLASS_VSB_AUDI_TT_4: _VSB_AUDI_CLASS = 48; +pub const _VSB_AUDI_CLASS_VSB_AUDI_TT_1: _VSB_AUDI_CLASS = 49; +pub type _VSB_AUDI_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_AUDI_CLASS as VSB_AUDI_CLASS; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_OTHER: _VSB_MAZDA_CLASS = 0; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_CX5: _VSB_MAZDA_CLASS = 1; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_2: _VSB_MAZDA_CLASS = 2; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_3: _VSB_MAZDA_CLASS = 3; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_6: _VSB_MAZDA_CLASS = 4; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_8: _VSB_MAZDA_CLASS = 5; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_COREWING: _VSB_MAZDA_CLASS = 6; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_CX7: _VSB_MAZDA_CLASS = 7; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_X5: _VSB_MAZDA_CLASS = 8; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_5: _VSB_MAZDA_CLASS = 9; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_PREMACY: _VSB_MAZDA_CLASS = 10; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_MPV: _VSB_MAZDA_CLASS = 11; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_CX5_1: _VSB_MAZDA_CLASS = 12; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_CX7_1: _VSB_MAZDA_CLASS = 13; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_2_1: _VSB_MAZDA_CLASS = 14; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_3_1: _VSB_MAZDA_CLASS = 15; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_3_2: _VSB_MAZDA_CLASS = 16; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_3_3: _VSB_MAZDA_CLASS = 17; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_3_4: _VSB_MAZDA_CLASS = 18; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_5_1: _VSB_MAZDA_CLASS = 19; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_5_2: _VSB_MAZDA_CLASS = 20; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_6_2: _VSB_MAZDA_CLASS = 21; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_6_3: _VSB_MAZDA_CLASS = 22; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_8_1: _VSB_MAZDA_CLASS = 23; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_PREMACY_1: _VSB_MAZDA_CLASS = 24; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_PREMACY_2: _VSB_MAZDA_CLASS = 25; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_COREWING_1: _VSB_MAZDA_CLASS = 26; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_COREWING_2: _VSB_MAZDA_CLASS = 27; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_COREWING_3: _VSB_MAZDA_CLASS = 28; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_2_2: _VSB_MAZDA_CLASS = 29; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_6_1: _VSB_MAZDA_CLASS = 30; +pub const _VSB_MAZDA_CLASS_VSB_MAZDA_6_4: _VSB_MAZDA_CLASS = 31; +pub type _VSB_MAZDA_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_MAZDA_CLASS as VSB_MAZDA_CLASS; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_OTHER: _VSB_CHEVROLET_CLASS = 0; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_NEWAVEO: _VSB_CHEVROLET_CLASS = 1; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_EPICA: _VSB_CHEVROLET_CLASS = 2; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_CRUZE: _VSB_CHEVROLET_CLASS = 3; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_CAPTIVA: _VSB_CHEVROLET_CLASS = 4; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_MALIBU: _VSB_CHEVROLET_CLASS = 5; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_SAIL: _VSB_CHEVROLET_CLASS = 6; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_CAMARO: _VSB_CHEVROLET_CLASS = 7; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_LECHENG: _VSB_CHEVROLET_CLASS = 8; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_LOVA: _VSB_CHEVROLET_CLASS = 9; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_OLDAVEO: _VSB_CHEVROLET_CLASS = 10; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_SPARK: _VSB_CHEVROLET_CLASS = 11; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_SAILSRV: _VSB_CHEVROLET_CLASS = 12; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_LOVA_1: _VSB_CHEVROLET_CLASS = 13; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_LOVA_2: _VSB_CHEVROLET_CLASS = 14; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_SPARK_1: _VSB_CHEVROLET_CLASS = 15; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_SPARK_2: _VSB_CHEVROLET_CLASS = 16; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_OLDAVEO_1: _VSB_CHEVROLET_CLASS = 17; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_OLDAVEO_2: _VSB_CHEVROLET_CLASS = 18; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_EPICA_1: _VSB_CHEVROLET_CLASS = 19; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_EPICA_3: _VSB_CHEVROLET_CLASS = 20; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_EPICA_4: _VSB_CHEVROLET_CLASS = 21; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_EPICA_5: _VSB_CHEVROLET_CLASS = 22; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_NEWAVEO_1: _VSB_CHEVROLET_CLASS = 23; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_CAPTIVA_1: _VSB_CHEVROLET_CLASS = 24; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_CAPTIVA_2: _VSB_CHEVROLET_CLASS = 25; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_KEMAILUO_1: _VSB_CHEVROLET_CLASS = 26; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_CRUZE_1: _VSB_CHEVROLET_CLASS = 27; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_SAIL_1: _VSB_CHEVROLET_CLASS = 28; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_SAIL_2: _VSB_CHEVROLET_CLASS = 29; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_MALIBU_1: _VSB_CHEVROLET_CLASS = 30; +pub const _VSB_CHEVROLET_CLASS_VSB_CHEVROLET_EPICA_2: _VSB_CHEVROLET_CLASS = 31; +pub type _VSB_CHEVROLET_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_CHEVROLET_CLASS as VSB_CHEVROLET_CLASS; +pub const _VSB_CITROEN_CLASS_VSB_CITROEN_OTHER: _VSB_CITROEN_CLASS = 0; +pub const _VSB_CITROEN_CLASS_VSB_CITROEN_C2: _VSB_CITROEN_CLASS = 1; +pub const _VSB_CITROEN_CLASS_VSB_CITROEN_C4L: _VSB_CITROEN_CLASS = 2; +pub const _VSB_CITROEN_CLASS_VSB_CITROEN_C5: _VSB_CITROEN_CLASS = 3; +pub const _VSB_CITROEN_CLASS_VSB_CITROEN_ELYSEE: _VSB_CITROEN_CLASS = 4; +pub const _VSB_CITROEN_CLASS_VSB_CITROEN_CQUATRELIANGXIANG: _VSB_CITROEN_CLASS = 5; +pub const _VSB_CITROEN_CLASS_VSB_CITROEN_CQUATRESANXIANG: _VSB_CITROEN_CLASS = 6; +pub const _VSB_CITROEN_CLASS_VSB_CITROEN_SAEAPICASSO: _VSB_CITROEN_CLASS = 7; +pub const _VSB_CITROEN_CLASS_VSB_CITROEN_PICASSO: _VSB_CITROEN_CLASS = 8; +pub const _VSB_CITROEN_CLASS_VSB_CITROEN_CTRIOMPHE: _VSB_CITROEN_CLASS = 9; +pub const _VSB_CITROEN_CLASS_VSB_CITROEN_XSARA: _VSB_CITROEN_CLASS = 10; +pub const _VSB_CITROEN_CLASS_VSB_CITROEN_SHENLONGFUKANG: _VSB_CITROEN_CLASS = 11; +pub const _VSB_CITROEN_CLASS_VSB_CITROEN_CHANGANDS: _VSB_CITROEN_CLASS = 12; +pub const _VSB_CITROEN_CLASS_VSB_CITROEN_C2_1: _VSB_CITROEN_CLASS = 13; +pub const _VSB_CITROEN_CLASS_VSB_CITROEN_C4L_1: _VSB_CITROEN_CLASS = 14; +pub const _VSB_CITROEN_CLASS_VSB_CITROEN_C4PICASSO_1: _VSB_CITROEN_CLASS = 15; +pub const _VSB_CITROEN_CLASS_VSB_CITROEN_C5_1: _VSB_CITROEN_CLASS = 16; +pub const _VSB_CITROEN_CLASS_VSB_CITROEN_CQUATRESANXIANG_1: _VSB_CITROEN_CLASS = 17; +pub const _VSB_CITROEN_CLASS_VSB_CITROEN_CQUATRELIANGXIANG_1: _VSB_CITROEN_CLASS = 18; +pub const _VSB_CITROEN_CLASS_VSB_CITROEN_CTRIOMPHE_1: _VSB_CITROEN_CLASS = 19; +pub const _VSB_CITROEN_CLASS_VSB_CITROEN_FUKANG_1: _VSB_CITROEN_CLASS = 20; +pub const _VSB_CITROEN_CLASS_VSB_CITROEN_ELYSEE_1: _VSB_CITROEN_CLASS = 21; +pub const _VSB_CITROEN_CLASS_VSB_CITROEN_ELYSEE_2: _VSB_CITROEN_CLASS = 22; +pub const _VSB_CITROEN_CLASS_VSB_CITROEN_SAEAPICASSO_1: _VSB_CITROEN_CLASS = 23; +pub type _VSB_CITROEN_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_CITROEN_CLASS as VSB_CITROEN_CLASS; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_OTHER: _VSB_HYUNDAI_CLASS = 0; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_IX35: _VSB_HYUNDAI_CLASS = 1; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_LANGDONG: _VSB_HYUNDAI_CLASS = 2; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_MOINCA: _VSB_HYUNDAI_CLASS = 3; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_SHENGDA: _VSB_HYUNDAI_CLASS = 4; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_VERNA: _VSB_HYUNDAI_CLASS = 5; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_RUIYI: _VSB_HYUNDAI_CLASS = 6; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_SONATAEIGHT: _VSB_HYUNDAI_CLASS = 7; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_TUCSON: _VSB_HYUNDAI_CLASS = 8; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_YUEDONG: _VSB_HYUNDAI_CLASS = 9; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_ELANTRA: _VSB_HYUNDAI_CLASS = 10; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_GRANDSANTAFE: _VSB_HYUNDAI_CLASS = 11; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_COUPE: _VSB_HYUNDAI_CLASS = 12; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_MATRIX: _VSB_HYUNDAI_CLASS = 13; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_ACCENT: _VSB_HYUNDAI_CLASS = 14; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_IX30: _VSB_HYUNDAI_CLASS = 15; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_SONATA: _VSB_HYUNDAI_CLASS = 16; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_REFINE: _VSB_HYUNDAI_CLASS = 17; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_MISTRA: _VSB_HYUNDAI_CLASS = 18; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_SONATAYUFENG: _VSB_HYUNDAI_CLASS = 19; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_SANTAFE: _VSB_HYUNDAI_CLASS = 20; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_HUIYI: _VSB_HYUNDAI_CLASS = 21; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_I30_1: _VSB_HYUNDAI_CLASS = 22; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_IX35_1: _VSB_HYUNDAI_CLASS = 23; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_YILANTE_1: _VSB_HYUNDAI_CLASS = 24; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_YILANTE_2: _VSB_HYUNDAI_CLASS = 25; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_YILANTE_3: _VSB_HYUNDAI_CLASS = 26; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_SHENGDA_1: _VSB_HYUNDAI_CLASS = 27; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_MINGTU_1: _VSB_HYUNDAI_CLASS = 28; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_MINGYU_1: _VSB_HYUNDAI_CLASS = 29; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_SHENGDAFEI_1: _VSB_HYUNDAI_CLASS = 30; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_YUXIANG_1: _VSB_HYUNDAI_CLASS = 31; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_YUXIANG_2: _VSB_HYUNDAI_CLASS = 32; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_YUEDONG_1: _VSB_HYUNDAI_CLASS = 33; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_YUEDONG_2: _VSB_HYUNDAI_CLASS = 34; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_SHENGDA_2: _VSB_HYUNDAI_CLASS = 35; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_SHENGDA_3: _VSB_HYUNDAI_CLASS = 36; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_LANGDONG_1: _VSB_HYUNDAI_CLASS = 37; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_GERUI_1: _VSB_HYUNDAI_CLASS = 38; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_RUIYI_1: _VSB_HYUNDAI_CLASS = 39; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_RUINA_1: _VSB_HYUNDAI_CLASS = 40; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_RUINA_2: _VSB_HYUNDAI_CLASS = 41; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_RUIFENG_1: _VSB_HYUNDAI_CLASS = 42; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_SUONATA_1: _VSB_HYUNDAI_CLASS = 43; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_SUONATA_2: _VSB_HYUNDAI_CLASS = 44; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_SOUNATA_3: _VSB_HYUNDAI_CLASS = 45; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_WEILAKESI_1: _VSB_HYUNDAI_CLASS = 46; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_MEIJIA_1: _VSB_HYUNDAI_CLASS = 47; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_JINKOUHUIYI_1: _VSB_HYUNDAI_CLASS = 48; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_TUSHENG_1: _VSB_HYUNDAI_CLASS = 49; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_TUSHENG_2: _VSB_HYUNDAI_CLASS = 50; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_TUSHENG_3: _VSB_HYUNDAI_CLASS = 51; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_KUPAI_1: _VSB_HYUNDAI_CLASS = 52; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_YASHENTE_1: _VSB_HYUNDAI_CLASS = 53; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_YASHENTE_2: _VSB_HYUNDAI_CLASS = 54; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_LINGXIANG_1: _VSB_HYUNDAI_CLASS = 55; +pub const _VSB_HYUNDAI_CLASS_VSB_HYUNDAI_FEISI_1: _VSB_HYUNDAI_CLASS = 56; +pub type _VSB_HYUNDAI_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_HYUNDAI_CLASS as VSB_HYUNDAI_CLASS; +pub const _VSB_CHERY_CLASS_VSB_CHERY_OTHER: _VSB_CHERY_CLASS = 0; +pub const _VSB_CHERY_CLASS_VSB_CHERY_A1: _VSB_CHERY_CLASS = 1; +pub const _VSB_CHERY_CLASS_VSB_CHERY_A3: _VSB_CHERY_CLASS = 2; +pub const _VSB_CHERY_CLASS_VSB_CHERY_EASTAR: _VSB_CHERY_CLASS = 3; +pub const _VSB_CHERY_CLASS_VSB_CHERY_FULWIN: _VSB_CHERY_CLASS = 4; +pub const _VSB_CHERY_CLASS_VSB_CHERY_QQ: _VSB_CHERY_CLASS = 5; +pub const _VSB_CHERY_CLASS_VSB_CHERY_E5: _VSB_CHERY_CLASS = 6; +pub const _VSB_CHERY_CLASS_VSB_CHERY_COWIN: _VSB_CHERY_CLASS = 7; +pub const _VSB_CHERY_CLASS_VSB_CHERY_TIGGO: _VSB_CHERY_CLASS = 8; +pub const _VSB_CHERY_CLASS_VSB_CHERY_A5: _VSB_CHERY_CLASS = 9; +pub const _VSB_CHERY_CLASS_VSB_CHERY_S16: _VSB_CHERY_CLASS = 10; +pub const _VSB_CHERY_CLASS_VSB_CHERY_YOUYA: _VSB_CHERY_CLASS = 11; +pub const _VSB_CHERY_CLASS_VSB_CHERY_V5: _VSB_CHERY_CLASS = 12; +pub const _VSB_CHERY_CLASS_VSB_CHERY_E3: _VSB_CHERY_CLASS = 13; +pub const _VSB_CHERY_CLASS_VSB_CHERY_A1_1: _VSB_CHERY_CLASS = 14; +pub const _VSB_CHERY_CLASS_VSB_CHERY_A3LIANGXIANG_1: _VSB_CHERY_CLASS = 15; +pub const _VSB_CHERY_CLASS_VSB_CHERY_A5_1: _VSB_CHERY_CLASS = 16; +pub const _VSB_CHERY_CLASS_VSB_CHERY_QQ_1: _VSB_CHERY_CLASS = 17; +pub const _VSB_CHERY_CLASS_VSB_CHERY_QQ_2: _VSB_CHERY_CLASS = 18; +pub const _VSB_CHERY_CLASS_VSB_CHERY_QQ_3: _VSB_CHERY_CLASS = 19; +pub const _VSB_CHERY_CLASS_VSB_CHERY_QQ_4: _VSB_CHERY_CLASS = 20; +pub const _VSB_CHERY_CLASS_VSB_CHERY_QQ_5: _VSB_CHERY_CLASS = 21; +pub const _VSB_CHERY_CLASS_VSB_CHERY_DONGFANGZHIZI_1: _VSB_CHERY_CLASS = 22; +pub const _VSB_CHERY_CLASS_VSB_CHERY_DONGFANGZHIZI_2: _VSB_CHERY_CLASS = 23; +pub const _VSB_CHERY_CLASS_VSB_CHERY_DONGFANGZHIZI_3: _VSB_CHERY_CLASS = 24; +pub const _VSB_CHERY_CLASS_VSB_CHERY_YOUYA_1: _VSB_CHERY_CLASS = 25; +pub const _VSB_CHERY_CLASS_VSB_CHERY_E3_1: _VSB_CHERY_CLASS = 26; +pub const _VSB_CHERY_CLASS_VSB_CHERY_E5_1: _VSB_CHERY_CLASS = 27; +pub const _VSB_CHERY_CLASS_VSB_CHERY_QIYUN1_1: _VSB_CHERY_CLASS = 28; +pub const _VSB_CHERY_CLASS_VSB_CHERY_QIYUN1_2: _VSB_CHERY_CLASS = 29; +pub const _VSB_CHERY_CLASS_VSB_CHERY_QIYUN_1: _VSB_CHERY_CLASS = 30; +pub const _VSB_CHERY_CLASS_VSB_CHERY_QIYUN_2: _VSB_CHERY_CLASS = 31; +pub const _VSB_CHERY_CLASS_VSB_CHERY_QIYUN2_1: _VSB_CHERY_CLASS = 32; +pub const _VSB_CHERY_CLASS_VSB_CHERY_QIYUN2_2: _VSB_CHERY_CLASS = 33; +pub const _VSB_CHERY_CLASS_VSB_CHERY_QIYUN3_1: _VSB_CHERY_CLASS = 34; +pub const _VSB_CHERY_CLASS_VSB_CHERY_RUIHU_1: _VSB_CHERY_CLASS = 35; +pub const _VSB_CHERY_CLASS_VSB_CHERY_RUIHU_2: _VSB_CHERY_CLASS = 36; +pub const _VSB_CHERY_CLASS_VSB_CHERY_RUIHU_3: _VSB_CHERY_CLASS = 37; +pub const _VSB_CHERY_CLASS_VSB_CHERY_RUIHU_4: _VSB_CHERY_CLASS = 38; +pub const _VSB_CHERY_CLASS_VSB_CHERY_RUIHU_5: _VSB_CHERY_CLASS = 39; +pub const _VSB_CHERY_CLASS_VSB_CHERY_FENGYUN2SANXIANG_1: _VSB_CHERY_CLASS = 40; +pub const _VSB_CHERY_CLASS_VSB_CHERY_AIRUIZE7_1: _VSB_CHERY_CLASS = 41; +pub type _VSB_CHERY_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_CHERY_CLASS as VSB_CHERY_CLASS; +pub const _VSB_KIA_CLASS_VSB_KIA_OTHER: _VSB_KIA_CLASS = 0; +pub const _VSB_KIA_CLASS_VSB_KIA_K2: _VSB_KIA_CLASS = 1; +pub const _VSB_KIA_CLASS_VSB_KIA_K3: _VSB_KIA_CLASS = 2; +pub const _VSB_KIA_CLASS_VSB_KIA_K5: _VSB_KIA_CLASS = 3; +pub const _VSB_KIA_CLASS_VSB_KIA_RIO: _VSB_KIA_CLASS = 4; +pub const _VSB_KIA_CLASS_VSB_KIA_CERATO: _VSB_KIA_CLASS = 5; +pub const _VSB_KIA_CLASS_VSB_KIA_SPORTAGER: _VSB_KIA_CLASS = 6; +pub const _VSB_KIA_CLASS_VSB_KIA_SOUL: _VSB_KIA_CLASS = 7; +pub const _VSB_KIA_CLASS_VSB_KIA_ZHIPAO: _VSB_KIA_CLASS = 8; +pub const _VSB_KIA_CLASS_VSB_KIA_CARENS: _VSB_KIA_CLASS = 9; +pub const _VSB_KIA_CLASS_VSB_KIA_CARNIVAL: _VSB_KIA_CLASS = 10; +pub const _VSB_KIA_CLASS_VSB_KIA_OPTIMA: _VSB_KIA_CLASS = 11; +pub const _VSB_KIA_CLASS_VSB_KIA_OPIRUS: _VSB_KIA_CLASS = 12; +pub const _VSB_KIA_CLASS_VSB_KIA_MAXIMA: _VSB_KIA_CLASS = 13; +pub const _VSB_KIA_CLASS_VSB_KIA_FORTE: _VSB_KIA_CLASS = 14; +pub const _VSB_KIA_CLASS_VSB_KIA_SORENTO: _VSB_KIA_CLASS = 15; +pub const _VSB_KIA_CLASS_VSB_KIA_K2_1: _VSB_KIA_CLASS = 16; +pub const _VSB_KIA_CLASS_VSB_KIA_K3_1: _VSB_KIA_CLASS = 17; +pub const _VSB_KIA_CLASS_VSB_KIA_K5_1: _VSB_KIA_CLASS = 18; +pub const _VSB_KIA_CLASS_VSB_KIA_RUIOU_1: _VSB_KIA_CLASS = 19; +pub const _VSB_KIA_CLASS_VSB_KIA_QIANLIMA_1: _VSB_KIA_CLASS = 20; +pub const _VSB_KIA_CLASS_VSB_KIA_QIANLIMA_2: _VSB_KIA_CLASS = 21; +pub const _VSB_KIA_CLASS_VSB_KIA_JIAHUA_1: _VSB_KIA_CLASS = 22; +pub const _VSB_KIA_CLASS_VSB_KIA_XINJIALE_1: _VSB_KIA_CLASS = 23; +pub const _VSB_KIA_CLASS_VSB_KIA_ZHIPAO_1: _VSB_KIA_CLASS = 24; +pub const _VSB_KIA_CLASS_VSB_KIA_SHIPAO_1: _VSB_KIA_CLASS = 25; +pub const _VSB_KIA_CLASS_VSB_KIA_SHIPAO_2: _VSB_KIA_CLASS = 26; +pub const _VSB_KIA_CLASS_VSB_KIA_SHIPAO_3: _VSB_KIA_CLASS = 27; +pub const _VSB_KIA_CLASS_VSB_KIA_SHIPAO_4: _VSB_KIA_CLASS = 28; +pub const _VSB_KIA_CLASS_VSB_KIA_FURUIDI_1: _VSB_KIA_CLASS = 29; +pub const _VSB_KIA_CLASS_VSB_KIA_FURUIDI_2: _VSB_KIA_CLASS = 30; +pub const _VSB_KIA_CLASS_VSB_KIA_XIUER_1: _VSB_KIA_CLASS = 31; +pub const _VSB_KIA_CLASS_VSB_KIA_SUOLANTUO_1: _VSB_KIA_CLASS = 32; +pub const _VSB_KIA_CLASS_VSB_KIA_SUOLANTUO_2: _VSB_KIA_CLASS = 33; +pub const _VSB_KIA_CLASS_VSB_KIA_SAILATU_1: _VSB_KIA_CLASS = 34; +pub const _VSB_KIA_CLASS_VSB_KIA_SAILATU_2: _VSB_KIA_CLASS = 35; +pub const _VSB_KIA_CLASS_VSB_KIA_SAILATU_3: _VSB_KIA_CLASS = 36; +pub const _VSB_KIA_CLASS_VSB_KIA_YUANJIAN_1: _VSB_KIA_CLASS = 37; +pub type _VSB_KIA_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_KIA_CLASS as VSB_KIA_CLASS; +pub const _VSB_BENZ_CLASS_VSB_BENZ_OTHER: _VSB_BENZ_CLASS = 0; +pub const _VSB_BENZ_CLASS_VSB_BENZ_C: _VSB_BENZ_CLASS = 1; +pub const _VSB_BENZ_CLASS_VSB_BENZ_E: _VSB_BENZ_CLASS = 2; +pub const _VSB_BENZ_CLASS_VSB_BENZ_GLK: _VSB_BENZ_CLASS = 3; +pub const _VSB_BENZ_CLASS_VSB_BENZ_WEITING: _VSB_BENZ_CLASS = 4; +pub const _VSB_BENZ_CLASS_VSB_BENZ_SPRINTER: _VSB_BENZ_CLASS = 5; +pub const _VSB_BENZ_CLASS_VSB_BENZ_VIANO: _VSB_BENZ_CLASS = 6; +pub const _VSB_BENZ_CLASS_VSB_BENZ_M: _VSB_BENZ_CLASS = 7; +pub const _VSB_BENZ_CLASS_VSB_BENZ_CLK: _VSB_BENZ_CLASS = 8; +pub const _VSB_BENZ_CLASS_VSB_BENZ_G: _VSB_BENZ_CLASS = 9; +pub const _VSB_BENZ_CLASS_VSB_BENZ_GL: _VSB_BENZ_CLASS = 10; +pub const _VSB_BENZ_CLASS_VSB_BENZ_R: _VSB_BENZ_CLASS = 11; +pub const _VSB_BENZ_CLASS_VSB_BENZ_S: _VSB_BENZ_CLASS = 12; +pub const _VSB_BENZ_CLASS_VSB_BENZ_A: _VSB_BENZ_CLASS = 13; +pub const _VSB_BENZ_CLASS_VSB_BENZ_SMART: _VSB_BENZ_CLASS = 14; +pub const _VSB_BENZ_CLASS_VSB_BENZ_B: _VSB_BENZ_CLASS = 15; +pub const _VSB_BENZ_CLASS_VSB_BENZ_SLK: _VSB_BENZ_CLASS = 16; +pub const _VSB_BENZ_CLASS_VSB_BENZ_MB100: _VSB_BENZ_CLASS = 17; +pub const _VSB_BENZ_CLASS_VSB_BENZ_VITO: _VSB_BENZ_CLASS = 18; +pub const _VSB_BENZ_CLASS_VSB_BENZ_CLS: _VSB_BENZ_CLASS = 19; +pub const _VSB_BENZ_CLASS_VSB_BENZ_SL: _VSB_BENZ_CLASS = 20; +pub const _VSB_BENZ_CLASS_VSB_BENZ_AJI_1: _VSB_BENZ_CLASS = 21; +pub const _VSB_BENZ_CLASS_VSB_BENZ_AJI_2: _VSB_BENZ_CLASS = 22; +pub const _VSB_BENZ_CLASS_VSB_BENZ_BJI_1: _VSB_BENZ_CLASS = 23; +pub const _VSB_BENZ_CLASS_VSB_BENZ_CJI_1: _VSB_BENZ_CLASS = 24; +pub const _VSB_BENZ_CLASS_VSB_BENZ_CJI_2: _VSB_BENZ_CLASS = 25; +pub const _VSB_BENZ_CLASS_VSB_BENZ_CJI_3: _VSB_BENZ_CLASS = 26; +pub const _VSB_BENZ_CLASS_VSB_BENZ_EJI_1: _VSB_BENZ_CLASS = 27; +pub const _VSB_BENZ_CLASS_VSB_BENZ_EJI_2: _VSB_BENZ_CLASS = 28; +pub const _VSB_BENZ_CLASS_VSB_BENZ_EJI_3: _VSB_BENZ_CLASS = 29; +pub const _VSB_BENZ_CLASS_VSB_BENZ_EJI_4: _VSB_BENZ_CLASS = 30; +pub const _VSB_BENZ_CLASS_VSB_BENZ_GLKJI_1: _VSB_BENZ_CLASS = 31; +pub const _VSB_BENZ_CLASS_VSB_BENZ_GLKJI_2: _VSB_BENZ_CLASS = 32; +pub const _VSB_BENZ_CLASS_VSB_BENZ_GLKJI_3: _VSB_BENZ_CLASS = 33; +pub const _VSB_BENZ_CLASS_VSB_BENZ_GLJI_1: _VSB_BENZ_CLASS = 34; +pub const _VSB_BENZ_CLASS_VSB_BENZ_GLJI_2: _VSB_BENZ_CLASS = 35; +pub const _VSB_BENZ_CLASS_VSB_BENZ_GLJI_3: _VSB_BENZ_CLASS = 36; +pub const _VSB_BENZ_CLASS_VSB_BENZ_GJI_1: _VSB_BENZ_CLASS = 37; +pub const _VSB_BENZ_CLASS_VSB_BENZ_MB100_1: _VSB_BENZ_CLASS = 38; +pub const _VSB_BENZ_CLASS_VSB_BENZ_MLJI_1: _VSB_BENZ_CLASS = 39; +pub const _VSB_BENZ_CLASS_VSB_BENZ_MLJI_2: _VSB_BENZ_CLASS = 40; +pub const _VSB_BENZ_CLASS_VSB_BENZ_MLJI_3: _VSB_BENZ_CLASS = 41; +pub const _VSB_BENZ_CLASS_VSB_BENZ_RJI_1: _VSB_BENZ_CLASS = 42; +pub const _VSB_BENZ_CLASS_VSB_BENZ_RJI_2: _VSB_BENZ_CLASS = 43; +pub const _VSB_BENZ_CLASS_VSB_BENZ_RJI_3: _VSB_BENZ_CLASS = 44; +pub const _VSB_BENZ_CLASS_VSB_BENZ_SLKJI_2: _VSB_BENZ_CLASS = 45; +pub const _VSB_BENZ_CLASS_VSB_BENZ_SLKJI_3: _VSB_BENZ_CLASS = 46; +pub const _VSB_BENZ_CLASS_VSB_BENZ_SLKJI_1: _VSB_BENZ_CLASS = 47; +pub const _VSB_BENZ_CLASS_VSB_BENZ_SJI_1: _VSB_BENZ_CLASS = 48; +pub const _VSB_BENZ_CLASS_VSB_BENZ_SJI_2: _VSB_BENZ_CLASS = 49; +pub const _VSB_BENZ_CLASS_VSB_BENZ_SJI_3: _VSB_BENZ_CLASS = 50; +pub const _VSB_BENZ_CLASS_VSB_BENZ_SJI_4: _VSB_BENZ_CLASS = 51; +pub const _VSB_BENZ_CLASS_VSB_BENZ_LINGTE_1: _VSB_BENZ_CLASS = 52; +pub const _VSB_BENZ_CLASS_VSB_BENZ_WEIYANUO_1: _VSB_BENZ_CLASS = 53; +pub const _VSB_BENZ_CLASS_VSB_BENZ_WEIYANUO_2: _VSB_BENZ_CLASS = 54; +pub const _VSB_BENZ_CLASS_VSB_BENZ_WEITING_1: _VSB_BENZ_CLASS = 55; +pub const _VSB_BENZ_CLASS_VSB_BENZ_KECHE_1: _VSB_BENZ_CLASS = 56; +pub type _VSB_BENZ_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_BENZ_CLASS as VSB_BENZ_CLASS; +pub const _VSB_SKODA_CLASS_VSB_SKODA_OTHER: _VSB_SKODA_CLASS = 0; +pub const _VSB_SKODA_CLASS_VSB_SKODA_HAORUI: _VSB_SKODA_CLASS = 1; +pub const _VSB_SKODA_CLASS_VSB_SKODA_FABIA: _VSB_SKODA_CLASS = 2; +pub const _VSB_SKODA_CLASS_VSB_SKODA_OCTAVIA: _VSB_SKODA_CLASS = 3; +pub const _VSB_SKODA_CLASS_VSB_SKODA_SUPERB: _VSB_SKODA_CLASS = 4; +pub const _VSB_SKODA_CLASS_VSB_SKODA_SPACEBACK: _VSB_SKODA_CLASS = 5; +pub const _VSB_SKODA_CLASS_VSB_SKODA_RAPID: _VSB_SKODA_CLASS = 6; +pub const _VSB_SKODA_CLASS_VSB_SKODA_YETI: _VSB_SKODA_CLASS = 7; +pub const _VSB_SKODA_CLASS_VSB_SKODA_HAORUI_1: _VSB_SKODA_CLASS = 8; +pub const _VSB_SKODA_CLASS_VSB_SKODA_MINGRUI_1: _VSB_SKODA_CLASS = 9; +pub const _VSB_SKODA_CLASS_VSB_SKODA_MINGRUI_2: _VSB_SKODA_CLASS = 10; +pub const _VSB_SKODA_CLASS_VSB_SKODA_MINGRUI_3: _VSB_SKODA_CLASS = 11; +pub const _VSB_SKODA_CLASS_VSB_SKODA_XINRUI_1: _VSB_SKODA_CLASS = 12; +pub const _VSB_SKODA_CLASS_VSB_SKODA_JINGRUI_1: _VSB_SKODA_CLASS = 13; +pub const _VSB_SKODA_CLASS_VSB_SKODA_JINGRUI_2: _VSB_SKODA_CLASS = 14; +pub const _VSB_SKODA_CLASS_VSB_SKODA_JINGRUI_3: _VSB_SKODA_CLASS = 15; +pub const _VSB_SKODA_CLASS_VSB_SKODA_SUPAI_1: _VSB_SKODA_CLASS = 16; +pub const _VSB_SKODA_CLASS_VSB_SKODA_YEDI_1: _VSB_SKODA_CLASS = 17; +pub type _VSB_SKODA_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_SKODA_CLASS as VSB_SKODA_CLASS; +pub const _VSB_DONGFENG_CLASS_VSB_DONGFENG_OTHER: _VSB_DONGFENG_CLASS = 0; +pub const _VSB_DONGFENG_CLASS_VSB_DONGFENG_JOYEARX5: _VSB_DONGFENG_CLASS = 1; +pub const _VSB_DONGFENG_CLASS_VSB_DONGFENG_LINGZHI: _VSB_DONGFENG_CLASS = 2; +pub const _VSB_DONGFENG_CLASS_VSB_DONGFENG_JOYEARX3: _VSB_DONGFENG_CLASS = 3; +pub const _VSB_DONGFENG_CLASS_VSB_DONGFENG_JOYEAR: _VSB_DONGFENG_CLASS = 4; +pub const _VSB_DONGFENG_CLASS_VSB_DONGFENG_FENGXINGCM7: _VSB_DONGFENG_CLASS = 5; +pub const _VSB_DONGFENG_CLASS_VSB_DONGFENG_YUFENG: _VSB_DONGFENG_CLASS = 6; +pub const _VSB_DONGFENG_CLASS_VSB_DONGFENG_FENGSHENA60: _VSB_DONGFENG_CLASS = 7; +pub const _VSB_DONGFENG_CLASS_VSB_DONGFENG_FENGSHENS30: _VSB_DONGFENG_CLASS = 8; +pub const _VSB_DONGFENG_CLASS_VSB_DONGFENG_FENGSHENH30CROSS: _VSB_DONGFENG_CLASS = 9; +pub const _VSB_DONGFENG_CLASS_VSB_DONGFENG_PICKUP: _VSB_DONGFENG_CLASS = 10; +pub const _VSB_DONGFENG_CLASS_VSB_DONGFENG_ZHONGXINGMIANBAOCHE: _VSB_DONGFENG_CLASS = 11; +pub const _VSB_DONGFENG_CLASS_VSB_DONGFENG_XIAOXINGMIANBAOCHE: _VSB_DONGFENG_CLASS = 12; +pub const _VSB_DONGFENG_CLASS_VSB_DONGFENG_ZHONGXINGVAN: _VSB_DONGFENG_CLASS = 13; +pub const _VSB_DONGFENG_CLASS_VSB_DONGFENG_QINGXINGXIANGSHIVAN: _VSB_DONGFENG_CLASS = 14; +pub const _VSB_DONGFENG_CLASS_VSB_DONGFENG_QINGZHONGXINGVAN: _VSB_DONGFENG_CLASS = 15; +pub const _VSB_DONGFENG_CLASS_VSB_DONGFENG_FENGSHENMERCURY: _VSB_DONGFENG_CLASS = 16; +pub const _VSB_DONGFENG_CLASS_VSB_DONGFENG_SUCCE: _VSB_DONGFENG_CLASS = 17; +pub const _VSB_DONGFENG_CLASS_VSB_DONGFENG_ODIN: _VSB_DONGFENG_CLASS = 18; +pub const _VSB_DONGFENG_CLASS_VSB_DONGFENG_YUMSUN: _VSB_DONGFENG_CLASS = 19; +pub const _VSB_DONGFENG_CLASS_VSB_DONGFENG_RUIQI: _VSB_DONGFENG_CLASS = 20; +pub const _VSB_DONGFENG_CLASS_VSB_DONGFENG_FENGGUANG: _VSB_DONGFENG_CLASS = 21; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_C35_1: _VSB_DONGFENG_CLASS = 22; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_K07_1: _VSB_DONGFENG_CLASS = 23; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_K07_2: _VSB_DONGFENG_CLASS = 24; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_V21_1: _VSB_DONGFENG_CLASS = 25; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_JIALONG_1: _VSB_DONGFENG_CLASS = 26; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_XKFG_1: _VSB_DONGFENG_CLASS = 27; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_CV03_1: _VSB_DONGFENG_CLASS = 28; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_KAIPUTE_1: _VSB_DONGFENG_CLASS = 29; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_DUOLIKA_1: _VSB_DONGFENG_CLASS = 30; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_DUOLIKA_2: _VSB_DONGFENG_CLASS = 31; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_DUOLIKA_3: _VSB_DONGFENG_CLASS = 32; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_TIANJIN_1: _VSB_DONGFENG_CLASS = 33; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_TIANJIN_2: _VSB_DONGFENG_CLASS = 34; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_XBW_1: _VSB_DONGFENG_CLASS = 35; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_XBW_2: _VSB_DONGFENG_CLASS = 36; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_MENGKA_1: _VSB_DONGFENG_CLASS = 37; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_FURUIKA_1: _VSB_DONGFENG_CLASS = 38; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_RUIQI_1: _VSB_DONGFENG_CLASS = 39; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_A60_1: _VSB_DONGFENG_CLASS = 40; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_H30_1: _VSB_DONGFENG_CLASS = 41; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_H30_2: _VSB_DONGFENG_CLASS = 42; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_H30_3: _VSB_DONGFENG_CLASS = 43; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_JINGYI_1: _VSB_DONGFENG_CLASS = 44; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_JINGYI_2: _VSB_DONGFENG_CLASS = 45; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_JINGYI_3: _VSB_DONGFENG_CLASS = 46; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_LINGZHI_1: _VSB_DONGFENG_CLASS = 47; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_LINGZHI_2: _VSB_DONGFENG_CLASS = 48; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_LINGZHI_3: _VSB_DONGFENG_CLASS = 49; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_LINGZHI_4: _VSB_DONGFENG_CLASS = 50; +pub const _VSB_DONGFENG_CLASS_VBR_DONGFENG_LINGZHI_5: _VSB_DONGFENG_CLASS = 51; +pub type _VSB_DONGFENG_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_DONGFENG_CLASS as VSB_DONGFENG_CLASS; +pub const _VSB_BYD_CLASS_VSB_BYD_OTHER: _VSB_BYD_CLASS = 0; +pub const _VSB_BYD_CLASS_VSB_BYD_F0: _VSB_BYD_CLASS = 1; +pub const _VSB_BYD_CLASS_VSB_BYD_F3: _VSB_BYD_CLASS = 2; +pub const _VSB_BYD_CLASS_VSB_BYD_F3R: _VSB_BYD_CLASS = 3; +pub const _VSB_BYD_CLASS_VSB_BYD_F6: _VSB_BYD_CLASS = 4; +pub const _VSB_BYD_CLASS_VSB_BYD_G3: _VSB_BYD_CLASS = 5; +pub const _VSB_BYD_CLASS_VSB_BYD_G3R: _VSB_BYD_CLASS = 6; +pub const _VSB_BYD_CLASS_VSB_BYD_G6: _VSB_BYD_CLASS = 7; +pub const _VSB_BYD_CLASS_VSB_BYD_L3: _VSB_BYD_CLASS = 8; +pub const _VSB_BYD_CLASS_VSB_BYD_M6: _VSB_BYD_CLASS = 9; +pub const _VSB_BYD_CLASS_VSB_BYD_S6: _VSB_BYD_CLASS = 10; +pub const _VSB_BYD_CLASS_VSB_BYD_SURUI: _VSB_BYD_CLASS = 11; +pub const _VSB_BYD_CLASS_VSB_BYD_FOLEL: _VSB_BYD_CLASS = 12; +pub const _VSB_BYD_CLASS_VSB_BYD_SIRUI: _VSB_BYD_CLASS = 13; +pub const _VSB_BYD_CLASS_VSB_BYD_MT5: _VSB_BYD_CLASS = 14; +pub const _VSB_BYD_CLASS_VSB_BYD_F0_1: _VSB_BYD_CLASS = 15; +pub const _VSB_BYD_CLASS_VSB_BYD_F3R_1: _VSB_BYD_CLASS = 16; +pub const _VSB_BYD_CLASS_VSB_BYD_F6_1: _VSB_BYD_CLASS = 17; +pub const _VSB_BYD_CLASS_VSB_BYD_G3R_1: _VSB_BYD_CLASS = 18; +pub const _VSB_BYD_CLASS_VSB_BYD_G6_1: _VSB_BYD_CLASS = 19; +pub const _VSB_BYD_CLASS_VSB_BYD_L3_1: _VSB_BYD_CLASS = 20; +pub const _VSB_BYD_CLASS_VSB_BYD_M6_1: _VSB_BYD_CLASS = 21; +pub const _VSB_BYD_CLASS_VSB_BYD_S6_1: _VSB_BYD_CLASS = 22; +pub const _VSB_BYD_CLASS_VSB_BYD_FULAIER_1: _VSB_BYD_CLASS = 23; +pub const _VSB_BYD_CLASS_VSB_BYD_SURUI_1: _VSB_BYD_CLASS = 24; +pub type _VSB_BYD_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_BYD_CLASS as VSB_BYD_CLASS; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_OTHER: _VSB_SUZUKI_CLASS = 0; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_ALTO: _VSB_SUZUKI_CLASS = 1; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_SCROSS: _VSB_SUZUKI_CLASS = 2; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_SWIFT: _VSB_SUZUKI_CLASS = 3; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_SX4: _VSB_SUZUKI_CLASS = 4; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_LINGYANG: _VSB_SUZUKI_CLASS = 5; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_BEIDOUXING: _VSB_SUZUKI_CLASS = 6; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_LIANAA6: _VSB_SUZUKI_CLASS = 7; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_LANDY: _VSB_SUZUKI_CLASS = 8; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_SPLASH: _VSB_SUZUKI_CLASS = 9; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_GRANDVITARA: _VSB_SUZUKI_CLASS = 10; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_JIMNY: _VSB_SUZUKI_CLASS = 11; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_KAZASHI: _VSB_SUZUKI_CLASS = 12; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_LIANA: _VSB_SUZUKI_CLASS = 13; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_LIANA_1: _VSB_SUZUKI_CLASS = 14; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_LIANA_2: _VSB_SUZUKI_CLASS = 15; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_BEIDOUXING_1: _VSB_SUZUKI_CLASS = 16; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_BEIDOUXING_2: _VSB_SUZUKI_CLASS = 17; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_BEIDOUXING_3: _VSB_SUZUKI_CLASS = 18; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_BEIDOUXING_4: _VSB_SUZUKI_CLASS = 19; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_JIMUNI_1: _VSB_SUZUKI_CLASS = 20; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_JIMUNI_2: _VSB_SUZUKI_CLASS = 21; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_SX4_1: _VSB_SUZUKI_CLASS = 22; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_SX4_2: _VSB_SUZUKI_CLASS = 23; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_SX4_3: _VSB_SUZUKI_CLASS = 24; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_SX4_4: _VSB_SUZUKI_CLASS = 25; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_SX4_5: _VSB_SUZUKI_CLASS = 26; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_ALTO_1: _VSB_SUZUKI_CLASS = 27; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_ALTO_2: _VSB_SUZUKI_CLASS = 28; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_ALTO_3: _VSB_SUZUKI_CLASS = 29; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_ALTO_4: _VSB_SUZUKI_CLASS = 30; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_SPLASH_1: _VSB_SUZUKI_CLASS = 31; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_LANDY_1: _VSB_SUZUKI_CLASS = 32; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_LINGYANG_2: _VSB_SUZUKI_CLASS = 33; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_LINGYANG_3: _VSB_SUZUKI_CLASS = 34; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_LINGYANG_4: _VSB_SUZUKI_CLASS = 35; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_LINGYANG_5: _VSB_SUZUKI_CLASS = 36; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_GRANDVITARA_1: _VSB_SUZUKI_CLASS = 37; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_FENGYU_1: _VSB_SUZUKI_CLASS = 38; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_SWIFT_1: _VSB_SUZUKI_CLASS = 39; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_SWIFT_2: _VSB_SUZUKI_CLASS = 40; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_KINGCHANG_1: _VSB_SUZUKI_CLASS = 41; +pub const _VSB_SUZUKI_CLASS_VSB_SUZUKI_LINGYANG_1: _VSB_SUZUKI_CLASS = 42; +pub type _VSB_SUZUKI_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_SUZUKI_CLASS as VSB_SUZUKI_CLASS; +pub const _VSB_SGMW_CLASS_VSB_SGMW_OTHER: _VSB_SGMW_CLASS = 0; +pub const _VSB_SGMW_CLASS_VSB_SGMW_HONGGUANG: _VSB_SGMW_CLASS = 1; +pub const _VSB_SGMW_CLASS_VSB_SGMW_HONGGUANGS: _VSB_SGMW_CLASS = 2; +pub const _VSB_SGMW_CLASS_VSB_SGMW_ZHIGUANG: _VSB_SGMW_CLASS = 3; +pub const _VSB_SGMW_CLASS_VSB_SGMW_RONGGUANGS: _VSB_SGMW_CLASS = 4; +pub const _VSB_SGMW_CLASS_VSB_SGMW_RONGGUANG: _VSB_SGMW_CLASS = 5; +pub const _VSB_SGMW_CLASS_VSB_SGMW_HONGTU: _VSB_SGMW_CLASS = 6; +pub const _VSB_SGMW_CLASS_VSB_SGMW_XINGWANG: _VSB_SGMW_CLASS = 7; +pub const _VSB_SGMW_CLASS_VSB_SGMW_YANGGUANG: _VSB_SGMW_CLASS = 8; +pub const _VSB_SGMW_CLASS_VSB_SGMW_XIAOXUANFENG: _VSB_SGMW_CLASS = 9; +pub const _VSB_SGMW_CLASS_VSB_SGMW_WULINGZHIGUANG_1: _VSB_SGMW_CLASS = 10; +pub const _VSB_SGMW_CLASS_VSB_SGMW_WULINGZHIGUANG_2: _VSB_SGMW_CLASS = 11; +pub const _VSB_SGMW_CLASS_VSB_SGMW_WULINGZHIGUANG_3: _VSB_SGMW_CLASS = 12; +pub const _VSB_SGMW_CLASS_VSB_SGMW_XINGWANG_1: _VSB_SGMW_CLASS = 13; +pub const _VSB_SGMW_CLASS_VSB_SGMW_XINGWANG_2: _VSB_SGMW_CLASS = 14; +pub const _VSB_SGMW_CLASS_VSB_SGMW_XINGWANG_3: _VSB_SGMW_CLASS = 15; +pub const _VSB_SGMW_CLASS_VSB_SGMW_HONNGUANG_1: _VSB_SGMW_CLASS = 16; +pub const _VSB_SGMW_CLASS_VSB_SGMW_HONNGUANG_2: _VSB_SGMW_CLASS = 17; +pub const _VSB_SGMW_CLASS_VSB_SGMW_XIAOXUANFENG_1: _VSB_SGMW_CLASS = 18; +pub const _VSB_SGMW_CLASS_VSB_SGMW_YANGGUANG_1: _VSB_SGMW_CLASS = 19; +pub const _VSB_SGMW_CLASS_VSB_SGMW_YANGGUANG_2: _VSB_SGMW_CLASS = 20; +pub const _VSB_SGMW_CLASS_VSB_SGMW_YANGGUANG_3: _VSB_SGMW_CLASS = 21; +pub const _VSB_SGMW_CLASS_VSB_SGMW_RONGGUANG_1: _VSB_SGMW_CLASS = 22; +pub const _VSB_SGMW_CLASS_VSB_SGMW_RONGGUANG_2: _VSB_SGMW_CLASS = 23; +pub const _VSB_SGMW_CLASS_VSB_SGMW_HONGTU_1: _VSB_SGMW_CLASS = 24; +pub type _VSB_SGMW_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_SGMW_CLASS as VSB_SGMW_CLASS; +pub const _VSB_CHANA_CLASS_VSB_CHANA_OTHER: _VSB_CHANA_CLASS = 0; +pub const _VSB_CHANA_CLASS_VSB_CHANA_HONOR: _VSB_CHANA_CLASS = 1; +pub const _VSB_CHANA_CLASS_VSB_CHANA_XINGKA: _VSB_CHANA_CLASS = 2; +pub const _VSB_CHANA_CLASS_VSB_CHANA_ZHIXING: _VSB_CHANA_CLASS = 3; +pub const _VSB_CHANA_CLASS_VSB_CHANA_PICKUP: _VSB_CHANA_CLASS = 4; +pub const _VSB_CHANA_CLASS_VSB_CHANA_ZHIXING2: _VSB_CHANA_CLASS = 5; +pub const _VSB_CHANA_CLASS_VSB_CHANA_TAURUS: _VSB_CHANA_CLASS = 6; +pub const _VSB_CHANA_CLASS_VSB_CHANA_XINGGUANG: _VSB_CHANA_CLASS = 7; +pub const _VSB_CHANA_CLASS_VSB_CHANA_BENNI: _VSB_CHANA_CLASS = 8; +pub const _VSB_CHANA_CLASS_VSB_CHANA_ALSVIN: _VSB_CHANA_CLASS = 9; +pub const _VSB_CHANA_CLASS_VSB_CHANA_CX20: _VSB_CHANA_CLASS = 10; +pub const _VSB_CHANA_CLASS_VSB_CHANA_CX30: _VSB_CHANA_CLASS = 11; +pub const _VSB_CHANA_CLASS_VSB_CHANA_EADO: _VSB_CHANA_CLASS = 12; +pub const _VSB_CHANA_CLASS_VSB_CHANA_ZHIXINGS460: _VSB_CHANA_CLASS = 13; +pub const _VSB_CHANA_CLASS_VSB_CHANA_CM8: _VSB_CHANA_CLASS = 14; +pub const _VSB_CHANA_CLASS_VSB_CHANA_XINBAO: _VSB_CHANA_CLASS = 15; +pub const _VSB_CHANA_CLASS_VSB_CHANA_XUNLONG: _VSB_CHANA_CLASS = 16; +pub const _VSB_CHANA_CLASS_VSB_CHANA_YUNTONG: _VSB_CHANA_CLASS = 17; +pub const _VSB_CHANA_CLASS_VSB_CHANA_LEIMENG: _VSB_CHANA_CLASS = 18; +pub const _VSB_CHANA_CLASS_VSB_CHANA_XINGYUN: _VSB_CHANA_CLASS = 19; +pub const _VSB_CHANA_CLASS_VSB_CHANA_OULIWEI: _VSB_CHANA_CLASS = 20; +pub const _VSB_CHANA_CLASS_VSB_CHANA_EADOXT: _VSB_CHANA_CLASS = 21; +pub const _VSB_CHANA_CLASS_VSB_CHANA_XINGYUN_1: _VSB_CHANA_CLASS = 22; +pub const _VSB_CHANA_CLASS_VSB_CHANA_OULIWEI_1: _VSB_CHANA_CLASS = 23; +pub const _VSB_CHANA_CLASS_VSB_CHANA_YUNTONG_1: _VSB_CHANA_CLASS = 24; +pub const _VSB_CHANA_CLASS_VSB_CHANA_TAURUS_1: _VSB_CHANA_CLASS = 25; +pub const _VSB_CHANA_CLASS_VSB_CHANA_LEIMENG_1: _VSB_CHANA_CLASS = 26; +pub const _VSB_CHANA_CLASS_VSB_CHANA_ZHIXING_1: _VSB_CHANA_CLASS = 27; +pub const _VSB_CHANA_CLASS_VSB_CHANA_ZHIXING_2: _VSB_CHANA_CLASS = 28; +pub const _VSB_CHANA_CLASS_VSB_CHANA_ZHIXING_3: _VSB_CHANA_CLASS = 29; +pub const _VSB_CHANA_CLASS_VSB_CHANA_ZHIXING_4: _VSB_CHANA_CLASS = 30; +pub const _VSB_CHANA_CLASS_VSB_CHANA_ZHIXING_5: _VSB_CHANA_CLASS = 31; +pub const _VSB_CHANA_CLASS_VSB_CHANA_ZHIXING_6: _VSB_CHANA_CLASS = 32; +pub const _VSB_CHANA_CLASS_VSB_CHANA_PICKUP_1: _VSB_CHANA_CLASS = 33; +pub const _VSB_CHANA_CLASS_VSB_CHANA_XINGGUANG_1: _VSB_CHANA_CLASS = 34; +pub const _VSB_CHANA_CLASS_VSB_CHANA_XINGGUANG_2: _VSB_CHANA_CLASS = 35; +pub const _VSB_CHANA_CLASS_VSB_CHANA_HONOR_1: _VSB_CHANA_CLASS = 36; +pub type _VSB_CHANA_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_CHANA_CLASS as VSB_CHANA_CLASS; +pub const _VSB_EADO_CLASS_VSB_EADO_OTHER: _VSB_EADO_CLASS = 0; +pub const _VSB_EADO_CLASS_VSB_EADO_CS_1: _VSB_EADO_CLASS = 1; +pub const _VSB_EADO_CLASS_VSB_EADO_CX_1: _VSB_EADO_CLASS = 2; +pub const _VSB_EADO_CLASS_VSB_EADO_CX_2: _VSB_EADO_CLASS = 3; +pub const _VSB_EADO_CLASS_VSB_EADO_BENBEN_1: _VSB_EADO_CLASS = 4; +pub const _VSB_EADO_CLASS_VSB_EADO_BENBEN_2: _VSB_EADO_CLASS = 5; +pub const _VSB_EADO_CLASS_VSB_EADO_BENBEN_3: _VSB_EADO_CLASS = 6; +pub const _VSB_EADO_CLASS_VSB_EADO_BENBEN_4: _VSB_EADO_CLASS = 7; +pub const _VSB_EADO_CLASS_VSB_EADO_BENBEN_5: _VSB_EADO_CLASS = 8; +pub const _VSB_EADO_CLASS_VSB_EADO_YUEXIANG_1: _VSB_EADO_CLASS = 9; +pub const _VSB_EADO_CLASS_VSB_EADO_YUEXIANG_2: _VSB_EADO_CLASS = 10; +pub const _VSB_EADO_CLASS_VSB_EADO_YUEXIANG_3: _VSB_EADO_CLASS = 11; +pub const _VSB_EADO_CLASS_VSB_EADO_YUEXIANG_4: _VSB_EADO_CLASS = 12; +pub const _VSB_EADO_CLASS_VSB_EADO_YIDONG_1: _VSB_EADO_CLASS = 13; +pub type _VSB_EADO_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_EADO_CLASS as VSB_EADO_CLASS; +pub const _VSB_JINBEI_CLASS_VSB_JINBEI_OTHER: _VSB_JINBEI_CLASS = 0; +pub const _VSB_JINBEI_CLASS_VSB_JINBEI_GRACE: _VSB_JINBEI_CLASS = 1; +pub const _VSB_JINBEI_CLASS_VSB_JINBEI_HIACE: _VSB_JINBEI_CLASS = 2; +pub const _VSB_JINBEI_CLASS_VSB_JINBEI_HAIXING: _VSB_JINBEI_CLASS = 3; +pub const _VSB_JINBEI_CLASS_VSB_JINBEI_BADAO: _VSB_JINBEI_CLASS = 4; +pub const _VSB_JINBEI_CLASS_VSB_JINBEI_LINGQI: _VSB_JINBEI_CLASS = 5; +pub const _VSB_JINBEI_CLASS_VSB_JINBEI_JINQI: _VSB_JINBEI_CLASS = 6; +pub const _VSB_JINBEI_CLASS_VSB_JINBEI_LINGCHI: _VSB_JINBEI_CLASS = 7; +pub const _VSB_JINBEI_CLASS_VSB_JINBEI_QIYUN: _VSB_JINBEI_CLASS = 8; +pub const _VSB_JINBEI_CLASS_VSB_JINBEI_ZHISHANG_1: _VSB_JINBEI_CLASS = 9; +pub const _VSB_JINBEI_CLASS_VSB_JINBEI_HAIXING_1: _VSB_JINBEI_CLASS = 10; +pub const _VSB_JINBEI_CLASS_VSB_JINBEI_HAIXING_2: _VSB_JINBEI_CLASS = 11; +pub const _VSB_JINBEI_CLASS_VSB_JINBEI_HIACE_1: _VSB_JINBEI_CLASS = 12; +pub const _VSB_JINBEI_CLASS_VSB_JINBEI_HIACE_2: _VSB_JINBEI_CLASS = 13; +pub const _VSB_JINBEI_CLASS_VSB_JINBEI_HIACE_3: _VSB_JINBEI_CLASS = 14; +pub const _VSB_JINBEI_CLASS_VSB_JINBEI_JINDIAN_1: _VSB_JINBEI_CLASS = 15; +pub const _VSB_JINBEI_CLASS_VSB_JINBEI_GRACE_1: _VSB_JINBEI_CLASS = 16; +pub const _VSB_JINBEI_CLASS_VSB_JINBEI_GRACE_2: _VSB_JINBEI_CLASS = 17; +pub const _VSB_JINBEI_CLASS_VSB_JINBEI_BADAO_1: _VSB_JINBEI_CLASS = 18; +pub type _VSB_JINBEI_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_JINBEI_CLASS as VSB_JINBEI_CLASS; +pub const _VSB_GEELY_CLASS_VSB_GEELY_OTHER: _VSB_GEELY_CLASS = 0; +pub const _VSB_GEELY_CLASS_VSB_GEELY_EC7: _VSB_GEELY_CLASS = 1; +pub const _VSB_GEELY_CLASS_VSB_GEELY_EC8: _VSB_GEELY_CLASS = 2; +pub const _VSB_GEELY_CLASS_VSB_GEELY_SC3: _VSB_GEELY_CLASS = 3; +pub const _VSB_GEELY_CLASS_VSB_GEELY_SC5RV: _VSB_GEELY_CLASS = 4; +pub const _VSB_GEELY_CLASS_VSB_GEELY_SC6: _VSB_GEELY_CLASS = 5; +pub const _VSB_GEELY_CLASS_VSB_GEELY_JINGYING: _VSB_GEELY_CLASS = 6; +pub const _VSB_GEELY_CLASS_VSB_GEELY_JINGGANG: _VSB_GEELY_CLASS = 7; +pub const _VSB_GEELY_CLASS_VSB_GEELY_SX7: _VSB_GEELY_CLASS = 8; +pub const _VSB_GEELY_CLASS_VSB_GEELY_HAOQING: _VSB_GEELY_CLASS = 9; +pub const _VSB_GEELY_CLASS_VSB_GEELY_MEIRI: _VSB_GEELY_CLASS = 10; +pub const _VSB_GEELY_CLASS_VSB_GEELY_YINGLUNSC7: _VSB_GEELY_CLASS = 11; +pub const _VSB_GEELY_CLASS_VSB_GEELY_PANDA: _VSB_GEELY_CLASS = 12; +pub const _VSB_GEELY_CLASS_VSB_GEELY_YUANJING: _VSB_GEELY_CLASS = 13; +pub const _VSB_GEELY_CLASS_VSB_GEELY_ZIYOUJIAN: _VSB_GEELY_CLASS = 14; +pub type _VSB_GEELY_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_GEELY_CLASS as VSB_GEELY_CLASS; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_OTHER: _VSB_MITSUBISHI_CLASS = 0; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_GALANT: _VSB_MITSUBISHI_CLASS = 1; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_ZINGER: _VSB_MITSUBISHI_CLASS = 2; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_LANCER: _VSB_MITSUBISHI_CLASS = 3; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_LANCEREX: _VSB_MITSUBISHI_CLASS = 4; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_PAJERO: _VSB_MITSUBISHI_CLASS = 5; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_PAJEROSPORT: _VSB_MITSUBISHI_CLASS = 6; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_JINGXUANASX: _VSB_MITSUBISHI_CLASS = 7; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_GRANDIS: _VSB_MITSUBISHI_CLASS = 8; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_OUTLANDER: _VSB_MITSUBISHI_CLASS = 9; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_QINXINGYUEYE: _VSB_MITSUBISHI_CLASS = 10; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_GTO: _VSB_MITSUBISHI_CLASS = 11; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_SOVERAN: _VSB_MITSUBISHI_CLASS = 12; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_LIONVEL: _VSB_MITSUBISHI_CLASS = 13; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_HAFEISIMBO: _VSB_MITSUBISHI_CLASS = 14; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_LANCEREX_1: _VSB_MITSUBISHI_CLASS = 15; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_JINGXUAN_1: _VSB_MITSUBISHI_CLASS = 16; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_ZINGER_1: _VSB_MITSUBISHI_CLASS = 17; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_PAJERO_1: _VSB_MITSUBISHI_CLASS = 18; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_PAJERO_2: _VSB_MITSUBISHI_CLASS = 19; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_PAJERO_3: _VSB_MITSUBISHI_CLASS = 20; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_PAJEROSPORT_1: _VSB_MITSUBISHI_CLASS = 21; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_GALANT_1: _VSB_MITSUBISHI_CLASS = 22; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_GALANDI_1: _VSB_MITSUBISHI_CLASS = 23; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_GALANDI_2: _VSB_MITSUBISHI_CLASS = 24; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_OUTLANDER_1: _VSB_MITSUBISHI_CLASS = 25; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_OUTLANDER_2: _VSB_MITSUBISHI_CLASS = 26; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_LINGYUE_1: _VSB_MITSUBISHI_CLASS = 27; +pub const _VSB_MITSUBISHI_CLASS_VSB_MITSUBISHI_LANCER_1: _VSB_MITSUBISHI_CLASS = 28; +pub type _VSB_MITSUBISHI_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_MITSUBISHI_CLASS as VSB_MITSUBISHI_CLASS; +pub const _VSB_LEXUS_CLASS_VSB_LEXUS_OTHER: _VSB_LEXUS_CLASS = 0; +pub const _VSB_LEXUS_CLASS_VSB_LEXUS_ES: _VSB_LEXUS_CLASS = 1; +pub const _VSB_LEXUS_CLASS_VSB_LEXUS_CT: _VSB_LEXUS_CLASS = 2; +pub const _VSB_LEXUS_CLASS_VSB_LEXUS_RX: _VSB_LEXUS_CLASS = 3; +pub const _VSB_LEXUS_CLASS_VSB_LEXUS_IS: _VSB_LEXUS_CLASS = 4; +pub const _VSB_LEXUS_CLASS_VSB_LEXUS_LX: _VSB_LEXUS_CLASS = 5; +pub const _VSB_LEXUS_CLASS_VSB_LEXUS_GS: _VSB_LEXUS_CLASS = 6; +pub const _VSB_LEXUS_CLASS_VSB_LEXUS_GX: _VSB_LEXUS_CLASS = 7; +pub const _VSB_LEXUS_CLASS_VSB_LEXUS_LS: _VSB_LEXUS_CLASS = 8; +pub const _VSB_LEXUS_CLASS_VSB_LEXUS_CT_1: _VSB_LEXUS_CLASS = 9; +pub const _VSB_LEXUS_CLASS_VSB_LEXUS_ES_1: _VSB_LEXUS_CLASS = 10; +pub const _VSB_LEXUS_CLASS_VSB_LEXUS_ES_2: _VSB_LEXUS_CLASS = 11; +pub const _VSB_LEXUS_CLASS_VSB_LEXUS_ES_3: _VSB_LEXUS_CLASS = 12; +pub const _VSB_LEXUS_CLASS_VSB_LEXUS_GS_1: _VSB_LEXUS_CLASS = 13; +pub const _VSB_LEXUS_CLASS_VSB_LEXUS_GX_1: _VSB_LEXUS_CLASS = 14; +pub const _VSB_LEXUS_CLASS_VSB_LEXUS_IS_1: _VSB_LEXUS_CLASS = 15; +pub const _VSB_LEXUS_CLASS_VSB_LEXUS_LS_1: _VSB_LEXUS_CLASS = 16; +pub const _VSB_LEXUS_CLASS_VSB_LEXUS_LS_2: _VSB_LEXUS_CLASS = 17; +pub const _VSB_LEXUS_CLASS_VSB_LEXUS_LS_3: _VSB_LEXUS_CLASS = 18; +pub const _VSB_LEXUS_CLASS_VSB_LEXUS_LX_1: _VSB_LEXUS_CLASS = 19; +pub const _VSB_LEXUS_CLASS_VSB_LEXUS_RX_1: _VSB_LEXUS_CLASS = 20; +pub const _VSB_LEXUS_CLASS_VSB_LEXUS_RX_2: _VSB_LEXUS_CLASS = 21; +pub const _VSB_LEXUS_CLASS_VSB_LEXUS_RX_3: _VSB_LEXUS_CLASS = 22; +pub type _VSB_LEXUS_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_LEXUS_CLASS as VSB_LEXUS_CLASS; +pub const _VSB_ROEWE_CLASS_VSB_ROEWE_OTHER: _VSB_ROEWE_CLASS = 0; +pub const _VSB_ROEWE_CLASS_VSB_ROEWE_350: _VSB_ROEWE_CLASS = 1; +pub const _VSB_ROEWE_CLASS_VSB_ROEWE_550: _VSB_ROEWE_CLASS = 2; +pub const _VSB_ROEWE_CLASS_VSB_ROEWE_W5: _VSB_ROEWE_CLASS = 3; +pub const _VSB_ROEWE_CLASS_VSB_ROEWE_950: _VSB_ROEWE_CLASS = 4; +pub const _VSB_ROEWE_CLASS_VSB_ROEWE_750: _VSB_ROEWE_CLASS = 5; +pub const _VSB_ROEWE_CLASS_VSB_ROEWE_350_1: _VSB_ROEWE_CLASS = 6; +pub const _VSB_ROEWE_CLASS_VSB_ROEWE_350_2: _VSB_ROEWE_CLASS = 7; +pub const _VSB_ROEWE_CLASS_VSB_ROEWE_550_1: _VSB_ROEWE_CLASS = 8; +pub const _VSB_ROEWE_CLASS_VSB_ROEWE_750_1: _VSB_ROEWE_CLASS = 9; +pub const _VSB_ROEWE_CLASS_VSB_ROEWE_750_2: _VSB_ROEWE_CLASS = 10; +pub const _VSB_ROEWE_CLASS_VSB_ROEWE_950_1: _VSB_ROEWE_CLASS = 11; +pub type _VSB_ROEWE_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_ROEWE_CLASS as VSB_ROEWE_CLASS; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_OTHER: _VSB_HAIMA_CLASS = 0; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_PREMARIN: _VSB_HAIMA_CLASS = 1; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_S7: _VSB_HAIMA_CLASS = 2; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_PRINCE: _VSB_HAIMA_CLASS = 3; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_CUPID: _VSB_HAIMA_CLASS = 4; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_HATCHBACK: _VSB_HAIMA_CLASS = 5; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_KNIGHT: _VSB_HAIMA_CLASS = 6; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_HAPPIN: _VSB_HAIMA_CLASS = 7; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_FAMILY: _VSB_HAIMA_CLASS = 8; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_M3: _VSB_HAIMA_CLASS = 9; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_CUPID_1: _VSB_HAIMA_CLASS = 10; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_PREMARIN_1: _VSB_HAIMA_CLASS = 11; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_PREMARIN_2: _VSB_HAIMA_CLASS = 12; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_HATCHBACK_1: _VSB_HAIMA_CLASS = 13; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_HAPPIN_1: _VSB_HAIMA_CLASS = 14; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_HAPPIN_2: _VSB_HAIMA_CLASS = 15; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_M3_1: _VSB_HAIMA_CLASS = 16; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_FAMILY_1: _VSB_HAIMA_CLASS = 17; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_FAMILY_2: _VSB_HAIMA_CLASS = 18; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_FAMILY_3: _VSB_HAIMA_CLASS = 19; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_FAMILY_4: _VSB_HAIMA_CLASS = 20; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_KNIGHT_1: _VSB_HAIMA_CLASS = 21; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_KNIGHT_2: _VSB_HAIMA_CLASS = 22; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_NEWHONGDA_1: _VSB_HAIMA_CLASS = 23; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_NEWHONDGA_2: _VSB_HAIMA_CLASS = 24; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_PRINCE_1: _VSB_HAIMA_CLASS = 25; +pub const _VSB_HAIMA_CLASS_VSB_HAIMA_RONGDA_1: _VSB_HAIMA_CLASS = 26; +pub type _VSB_HAIMA_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_HAIMA_CLASS as VSB_HAIMA_CLASS; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_OTHER: _VSB_GREATWALL_CLASS = 0; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_SING: _VSB_GREATWALL_CLASS = 1; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_SAIJUN: _VSB_GREATWALL_CLASS = 2; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_HAVAL: _VSB_GREATWALL_CLASS = 3; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_SAFE: _VSB_GREATWALL_CLASS = 4; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_SAIKU: _VSB_GREATWALL_CLASS = 5; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_SAILING: _VSB_GREATWALL_CLASS = 6; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_KINGDEER: _VSB_GREATWALL_CLASS = 7; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_DEER: _VSB_GREATWALL_CLASS = 8; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_WINGLE: _VSB_GREATWALL_CLASS = 9; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_COOLBEAR: _VSB_GREATWALL_CLASS = 10; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_LINGAO: _VSB_GREATWALL_CLASS = 11; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_CROSS: _VSB_GREATWALL_CLASS = 12; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_GWPERI: _VSB_GREATWALL_CLASS = 13; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_COWRY: _VSB_GREATWALL_CLASS = 14; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_M4: _VSB_GREATWALL_CLASS = 15; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_LINGAO_1: _VSB_GREATWALL_CLASS = 16; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_HAVAL_1: _VSB_GREATWALL_CLASS = 17; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_HAVAL_2: _VSB_GREATWALL_CLASS = 18; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_HAVAL_3: _VSB_GREATWALL_CLASS = 19; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_HAVAL_4: _VSB_GREATWALL_CLASS = 20; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_HAVAL_5: _VSB_GREATWALL_CLASS = 21; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_HAVAL_6: _VSB_GREATWALL_CLASS = 22; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_HAVAL_8: _VSB_GREATWALL_CLASS = 23; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_HAVAL_9: _VSB_GREATWALL_CLASS = 24; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_HAVAL_10: _VSB_GREATWALL_CLASS = 25; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_HAVAL_11: _VSB_GREATWALL_CLASS = 26; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_HAVAL_12: _VSB_GREATWALL_CLASS = 27; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_CROSS_1: _VSB_GREATWALL_CLASS = 28; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_CROSS_2: _VSB_GREATWALL_CLASS = 29; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_JINGLING_1: _VSB_GREATWALL_CLASS = 30; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_SING_1: _VSB_GREATWALL_CLASS = 31; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_SAIKU_1: _VSB_GREATWALL_CLASS = 32; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_SAILING_1: _VSB_GREATWALL_CLASS = 33; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_DIER_1: _VSB_GREATWALL_CLASS = 34; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_COOLBEAR_1: _VSB_GREATWALL_CLASS = 35; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_KINGDEER_1: _VSB_GREATWALL_CLASS = 36; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_GREATWALL_1: _VSB_GREATWALL_CLASS = 37; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_GREATWALL_2: _VSB_GREATWALL_CLASS = 38; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_GREATWALL_3: _VSB_GREATWALL_CLASS = 39; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_GREATWALL_4: _VSB_GREATWALL_CLASS = 40; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_GREATWALL_5: _VSB_GREATWALL_CLASS = 41; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_GREATWALL_6: _VSB_GREATWALL_CLASS = 42; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_WINGLE_1: _VSB_GREATWALL_CLASS = 43; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_WINGLE_2: _VSB_GREATWALL_CLASS = 44; +pub const _VSB_GREATWALL_CLASS_VSB_GREATWALL_HAVAL_7: _VSB_GREATWALL_CLASS = 45; +pub type _VSB_GREATWALL_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_GREATWALL_CLASS as VSB_GREATWALL_CLASS; +pub const _VSB_DS_CLASS_VSB_DS_OTHER: _VSB_DS_CLASS = 0; +pub const _VSB_DS_CLASS_VSB_DS_KUBO_1: _VSB_DS_CLASS = 1; +pub const _VSB_DS_CLASS_VSB_DS_KUWEI_1: _VSB_DS_CLASS = 2; +pub const _VSB_DS_CLASS_VSB_DS_KUWEI_2: _VSB_DS_CLASS = 3; +pub type _VSB_DS_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_DS_CLASS as VSB_DS_CLASS; +pub const _VSB_LANDROVER_CLASS_VSB_LANDROVER_OTHER: _VSB_LANDROVER_CLASS = 0; +pub const _VSB_LANDROVER_CLASS_VSB_LANDROVER_FAXIAN_1: _VSB_LANDROVER_CLASS = 1; +pub const _VSB_LANDROVER_CLASS_VSB_LANDROVER_FAXIAN_2: _VSB_LANDROVER_CLASS = 2; +pub const _VSB_LANDROVER_CLASS_VSB_LANDROVER_LANSHENG_1: _VSB_LANDROVER_CLASS = 3; +pub const _VSB_LANDROVER_CLASS_VSB_LANDROVER_LANSHENG_2: _VSB_LANDROVER_CLASS = 4; +pub const _VSB_LANDROVER_CLASS_VSB_LANDROVER_LANSHENG_3: _VSB_LANDROVER_CLASS = 5; +pub const _VSB_LANDROVER_CLASS_VSB_LANDROVER_LANSHENG_4: _VSB_LANDROVER_CLASS = 6; +pub const _VSB_LANDROVER_CLASS_VSB_LANDROVER_SXZ_1: _VSB_LANDROVER_CLASS = 7; +pub type _VSB_LANDROVER_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_LANDROVER_CLASS as VSB_LANDROVER_CLASS; +pub const _VSB_MG_CLASS_VSB_MG_OTHER: _VSB_MG_CLASS = 0; +pub const _VSB_MG_CLASS_VSB_MG_3SW_1: _VSB_MG_CLASS = 1; +pub const _VSB_MG_CLASS_VSB_MG_MG3_1: _VSB_MG_CLASS = 2; +pub const _VSB_MG_CLASS_VSB_MG_MG5_1: _VSB_MG_CLASS = 3; +pub const _VSB_MG_CLASS_VSB_MG_MG6_1: _VSB_MG_CLASS = 4; +pub const _VSB_MG_CLASS_VSB_MG_MG7_1: _VSB_MG_CLASS = 5; +pub type _VSB_MG_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_MG_CLASS as VSB_MG_CLASS; +pub const _VSB_FAW_CLASS_VSB_FAW_OTHER: _VSB_FAW_CLASS = 0; +pub const _VSB_FAW_CLASS_VSB_FAW_501_1: _VSB_FAW_CLASS = 1; +pub const _VSB_FAW_CLASS_VSB_FAW_N3_1: _VSB_FAW_CLASS = 2; +pub const _VSB_FAW_CLASS_VSB_FAW_N3_2: _VSB_FAW_CLASS = 3; +pub const _VSB_FAW_CLASS_VSB_FAW_JIABAO_1: _VSB_FAW_CLASS = 4; +pub const _VSB_FAW_CLASS_VSB_FAW_JIABAO_2: _VSB_FAW_CLASS = 5; +pub const _VSB_FAW_CLASS_VSB_FAW_JIABAO_3: _VSB_FAW_CLASS = 6; +pub const _VSB_FAW_CLASS_VSB_FAW_JIABAO_4: _VSB_FAW_CLASS = 7; +pub const _VSB_FAW_CLASS_VSB_FAW_JIABAO_5: _VSB_FAW_CLASS = 8; +pub const _VSB_FAW_CLASS_VSB_FAW_JIABAO_6: _VSB_FAW_CLASS = 9; +pub const _VSB_FAW_CLASS_VSB_FAW_JIABAO_7: _VSB_FAW_CLASS = 10; +pub const _VSB_FAW_CLASS_VSB_FAW_XIALI_1: _VSB_FAW_CLASS = 11; +pub const _VSB_FAW_CLASS_VSB_FAW_XIALI_2: _VSB_FAW_CLASS = 12; +pub const _VSB_FAW_CLASS_VSB_FAW_XIALI_3: _VSB_FAW_CLASS = 13; +pub const _VSB_FAW_CLASS_VSB_FAW_XIALI_4: _VSB_FAW_CLASS = 14; +pub const _VSB_FAW_CLASS_VSB_FAW_XIALI_5: _VSB_FAW_CLASS = 15; +pub const _VSB_FAW_CLASS_VSB_FAW_XIALI_6: _VSB_FAW_CLASS = 16; +pub const _VSB_FAW_CLASS_VSB_FAW_AOWEI_1: _VSB_FAW_CLASS = 17; +pub const _VSB_FAW_CLASS_VSB_FAW_AOWEI_2: _VSB_FAW_CLASS = 18; +pub const _VSB_FAW_CLASS_VSB_FAW_AOWEI_3: _VSB_FAW_CLASS = 19; +pub const _VSB_FAW_CLASS_VSB_FAW_AOWEI_4: _VSB_FAW_CLASS = 20; +pub const _VSB_FAW_CLASS_VSB_FAW_AOXING_1: _VSB_FAW_CLASS = 21; +pub const _VSB_FAW_CLASS_VSB_FAW_WEILE_1: _VSB_FAW_CLASS = 22; +pub const _VSB_FAW_CLASS_VSB_FAW_WEILE_2: _VSB_FAW_CLASS = 23; +pub const _VSB_FAW_CLASS_VSB_FAW_WEIZI_1: _VSB_FAW_CLASS = 24; +pub const _VSB_FAW_CLASS_VSB_FAW_WEIZHI_1: _VSB_FAW_CLASS = 25; +pub const _VSB_FAW_CLASS_VSB_FAW_WEIZHI_2: _VSB_FAW_CLASS = 26; +pub const _VSB_FAW_CLASS_VSB_FAW_WEIZHI_3: _VSB_FAW_CLASS = 27; +pub const _VSB_FAW_CLASS_VSB_FAW_WEIZHI_4: _VSB_FAW_CLASS = 28; +pub const _VSB_FAW_CLASS_VSB_FAW_WEIZHI_5: _VSB_FAW_CLASS = 29; +pub const _VSB_FAW_CLASS_VSB_FAW_XIAOJIEFANG_1: _VSB_FAW_CLASS = 30; +pub const _VSB_FAW_CLASS_VSB_FAW_HANWEI_1: _VSB_FAW_CLASS = 31; +pub const _VSB_FAW_CLASS_VSB_FAW_HANWEI_2: _VSB_FAW_CLASS = 32; +pub const _VSB_FAW_CLASS_VSB_FAW_HANWEI_3: _VSB_FAW_CLASS = 33; +pub const _VSB_FAW_CLASS_VSB_FAW_XINDAWEI_1: _VSB_FAW_CLASS = 34; +pub const _VSB_FAW_CLASS_VSB_FAW_XINHANWEI_1: _VSB_FAW_CLASS = 35; +pub const _VSB_FAW_CLASS_VSB_FAW_SENYA_1: _VSB_FAW_CLASS = 36; +pub const _VSB_FAW_CLASS_VSB_FAW_TENGWEI_1: _VSB_FAW_CLASS = 37; +pub const _VSB_FAW_CLASS_VSB_FAW_JIEFANG_1: _VSB_FAW_CLASS = 38; +pub const _VSB_FAW_CLASS_VSB_FAW_JIEFANG_2: _VSB_FAW_CLASS = 39; +pub const _VSB_FAW_CLASS_VSB_FAW_JIEFANG_3: _VSB_FAW_CLASS = 40; +pub const _VSB_FAW_CLASS_VSB_FAW_JIEFANG_4: _VSB_FAW_CLASS = 41; +pub const _VSB_FAW_CLASS_VSB_FAW_JIEFANG_5: _VSB_FAW_CLASS = 42; +pub const _VSB_FAW_CLASS_VSB_FAW_JIEFANG_6: _VSB_FAW_CLASS = 43; +pub const _VSB_FAW_CLASS_VSB_FAW_SAILONG_1: _VSB_FAW_CLASS = 44; +pub const _VSB_FAW_CLASS_VSB_FAW_JUNWEI_1: _VSB_FAW_CLASS = 45; +pub const _VSB_FAW_CLASS_VSB_FAW_B50_1: _VSB_FAW_CLASS = 46; +pub const _VSB_FAW_CLASS_VSB_FAW_B50_2: _VSB_FAW_CLASS = 47; +pub type _VSB_FAW_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_FAW_CLASS as VSB_FAW_CLASS; +pub const _VSB_SAICMOTOR_CLASS_VSB_SAICMOTOR_OTHER: _VSB_SAICMOTOR_CLASS = 0; +pub const _VSB_SAICMOTOR_CLASS_VSB_HONGYAN_JIESHI_1: _VSB_SAICMOTOR_CLASS = 1; +pub const _VSB_SAICMOTOR_CLASS_VSB_DATONG_V80_1: _VSB_SAICMOTOR_CLASS = 2; +pub type _VSB_SAICMOTOR_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_SAICMOTOR_CLASS as VSB_SAICMOTOR_CLASS; +pub const _VSB_SOUEAST_CLASS_VSB_SOUEAST_OTHER: _VSB_SOUEAST_CLASS = 0; +pub const _VSB_SOUEAST_CLASS_VSB_SOUEAST_V3_1: _VSB_SOUEAST_CLASS = 1; +pub const _VSB_SOUEAST_CLASS_VSB_SOUEAST_V3_2: _VSB_SOUEAST_CLASS = 2; +pub const _VSB_SOUEAST_CLASS_VSB_SOUEAST_V3_3: _VSB_SOUEAST_CLASS = 3; +pub const _VSB_SOUEAST_CLASS_VSB_SOUEAST_V3_4: _VSB_SOUEAST_CLASS = 4; +pub const _VSB_SOUEAST_CLASS_VSB_SOUEAST_V5_1: _VSB_SOUEAST_CLASS = 5; +pub const _VSB_SOUEAST_CLASS_VSB_SOUEAST_XIWANG_1: _VSB_SOUEAST_CLASS = 6; +pub const _VSB_SOUEAST_CLASS_VSB_SOUEAST_DELIKA_1: _VSB_SOUEAST_CLASS = 7; +pub const _VSB_SOUEAST_CLASS_VSB_SOUEAST_DELIKA_2: _VSB_SOUEAST_CLASS = 8; +pub const _VSB_SOUEAST_CLASS_VSB_SOUEAST_DELIKA_3: _VSB_SOUEAST_CLASS = 9; +pub const _VSB_SOUEAST_CLASS_VSB_SOUEAST_DELIKA_4: _VSB_SOUEAST_CLASS = 10; +pub const _VSB_SOUEAST_CLASS_VSB_SOUEAST_LINGSHUAI_1: _VSB_SOUEAST_CLASS = 11; +pub const _VSB_SOUEAST_CLASS_VSB_SOUEAST_FULIKA_1: _VSB_SOUEAST_CLASS = 12; +pub const _VSB_SOUEAST_CLASS_VSB_SOUEAST_FULIKA_2: _VSB_SOUEAST_CLASS = 13; +pub type _VSB_SOUEAST_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_SOUEAST_CLASS as VSB_SOUEAST_CLASS; +pub const _VSB_ZTE_CLASS_VSB_ZTE_OTHER: _VSB_ZTE_CLASS = 0; +pub const _VSB_ZTE_CLASS_VSB_ZTE_WEIHU_1: _VSB_ZTE_CLASS = 1; +pub const _VSB_ZTE_CLASS_VSB_ZTE_WEIHU_2: _VSB_ZTE_CLASS = 2; +pub const _VSB_ZTE_CLASS_VSB_ZTE_WUXIAN_1: _VSB_ZTE_CLASS = 3; +pub const _VSB_ZTE_CLASS_VSB_ZTE_WUXIAN_2: _VSB_ZTE_CLASS = 4; +pub type _VSB_ZTE_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_ZTE_CLASS as VSB_ZTE_CLASS; +pub const _VSB_ZHONGHUA_CLASS_VSB_ZHONGHUA_OTHER: _VSB_ZHONGHUA_CLASS = 0; +pub const _VSB_ZHONGHUA_CLASS_VSB_ZHONGHUA_H230_1: _VSB_ZHONGHUA_CLASS = 1; +pub const _VSB_ZHONGHUA_CLASS_VSB_ZHONGHUA_H320_1: _VSB_ZHONGHUA_CLASS = 2; +pub const _VSB_ZHONGHUA_CLASS_VSB_ZHONGHUA_H330_1: _VSB_ZHONGHUA_CLASS = 3; +pub const _VSB_ZHONGHUA_CLASS_VSB_ZHONGHUA_H530_1: _VSB_ZHONGHUA_CLASS = 4; +pub const _VSB_ZHONGHUA_CLASS_VSB_ZHONGHUA_V5_1: _VSB_ZHONGHUA_CLASS = 5; +pub const _VSB_ZHONGHUA_CLASS_VSB_ZHONGHUA_ZUNCHI_1: _VSB_ZHONGHUA_CLASS = 6; +pub const _VSB_ZHONGHUA_CLASS_VSB_ZHONGHUA_ZUNCHI_2: _VSB_ZHONGHUA_CLASS = 7; +pub const _VSB_ZHONGHUA_CLASS_VSB_ZHONGHUA_KUBAO_1: _VSB_ZHONGHUA_CLASS = 8; +pub const _VSB_ZHONGHUA_CLASS_VSB_ZHONGHUA_JUNJIE_1: _VSB_ZHONGHUA_CLASS = 9; +pub const _VSB_ZHONGHUA_CLASS_VSB_ZHONGHUA_JUNJIE_2: _VSB_ZHONGHUA_CLASS = 10; +pub const _VSB_ZHONGHUA_CLASS_VSB_ZHONGHUA_JUNJIECROSS_1: _VSB_ZHONGHUA_CLASS = 11; +pub const _VSB_ZHONGHUA_CLASS_VSB_ZHONGHUA_JUNJIEFRV_1: _VSB_ZHONGHUA_CLASS = 12; +pub const _VSB_ZHONGHUA_CLASS_VSB_ZHONGHUA_JUNJIEFRV_2: _VSB_ZHONGHUA_CLASS = 13; +pub const _VSB_ZHONGHUA_CLASS_VSB_ZHONGHUA_JUNJIEFSV_1: _VSB_ZHONGHUA_CLASS = 14; +pub const _VSB_ZHONGHUA_CLASS_VSB_ZHONGHUA_JUNJIEFSV_2: _VSB_ZHONGHUA_CLASS = 15; +pub const _VSB_ZHONGHUA_CLASS_VSB_ZHONGHUA_JUNJIEFSV_3: _VSB_ZHONGHUA_CLASS = 16; +pub type _VSB_ZHONGHUA_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_ZHONGHUA_CLASS as VSB_ZHONGHUA_CLASS; +pub const _VSB_CNHTC_CLASS_VSB_CNHTC_OTHER: _VSB_CNHTC_CLASS = 0; +pub const _VSB_CNHTC_CLASS_VSB_CNHTC_HOKA_2: _VSB_CNHTC_CLASS = 1; +pub const _VSB_CNHTC_CLASS_VSB_CNHTC_HOWO_1: _VSB_CNHTC_CLASS = 2; +pub const _VSB_CNHTC_CLASS_VSB_CNHTC_HOWO_2: _VSB_CNHTC_CLASS = 3; +pub const _VSB_CNHTC_CLASS_VSB_CNHTC_HOWO_3: _VSB_CNHTC_CLASS = 4; +pub const _VSB_CNHTC_CLASS_VSB_CNHTC_HOWO_4: _VSB_CNHTC_CLASS = 5; +pub const _VSB_CNHTC_CLASS_VSB_CNHTC_HOWO_5: _VSB_CNHTC_CLASS = 6; +pub const _VSB_CNHTC_CLASS_VSB_CNHTC_HOWO_6: _VSB_CNHTC_CLASS = 7; +pub const _VSB_CNHTC_CLASS_VSB_CNHTC_HOWO_7: _VSB_CNHTC_CLASS = 8; +pub const _VSB_CNHTC_CLASS_VSB_CNHTC_HOWO_8: _VSB_CNHTC_CLASS = 9; +pub const _VSB_CNHTC_CLASS_VSB_CNHTC_SITAIERWANG_1: _VSB_CNHTC_CLASS = 10; +pub const _VSB_CNHTC_CLASS_VSB_CNHTC_HAOHAN_1: _VSB_CNHTC_CLASS = 11; +pub const _VSB_CNHTC_CLASS_VSB_CNHTC_HAOYUN_1: _VSB_CNHTC_CLASS = 12; +pub const _VSB_CNHTC_CLASS_VSB_CNHTC_JINWANGZI_1: _VSB_CNHTC_CLASS = 13; +pub const _VSB_CNHTC_CLASS_VSB_CNHTC_HOKA_1: _VSB_CNHTC_CLASS = 14; +pub type _VSB_CNHTC_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_CNHTC_CLASS as VSB_CNHTC_CLASS; +pub const _VSB_ZHONGTONG_CLASS_VSB_ZHONGTONG_OTHER: _VSB_ZHONGTONG_CLASS = 0; +pub const _VSB_ZHONGTONG_CLASS_VSB_ZHONGTONG_KAICHI_1: _VSB_ZHONGTONG_CLASS = 1; +pub const _VSB_ZHONGTONG_CLASS_VSB_ZHONGTONG_LINGYU_1: _VSB_ZHONGTONG_CLASS = 2; +pub const _VSB_ZHONGTONG_CLASS_VSB_ZHONGTONG_LINGXIU_1: _VSB_ZHONGTONG_CLASS = 3; +pub const _VSB_ZHONGTONG_CLASS_VSB_ZHONGTONG_LINGHANG_1: _VSB_ZHONGTONG_CLASS = 4; +pub const _VSB_ZHONGTONG_CLASS_VSB_ZHONGTONG_SHIJI_1: _VSB_ZHONGTONG_CLASS = 5; +pub const _VSB_ZHONGTONG_CLASS_VSB_ZHONGTONG_KAIXUAN_1: _VSB_ZHONGTONG_CLASS = 6; +pub const _VSB_ZHONGTONG_CLASS_VSB_ZHONGTONG_LINGYUN_1: _VSB_ZHONGTONG_CLASS = 7; +pub const _VSB_ZHONGTONG_CLASS_VSB_ZHONGTONG_YANGGUANG_1: _VSB_ZHONGTONG_CLASS = 8; +pub type _VSB_ZHONGTONG_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_ZHONGTONG_CLASS as VSB_ZHONGTONG_CLASS; +pub const _VSB_JIULONG_CLASS_VSB_JIULONG_OTHER: _VSB_JIULONG_CLASS = 0; +pub const _VSB_JIULONG_CLASS_VSB_JIULONG_JIULONGA5_1: _VSB_JIULONG_CLASS = 1; +pub type _VSB_JIULONG_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_JIULONG_CLASS as VSB_JIULONG_CLASS; +pub const _VSB_ZOTYE_CLASS_VSB_ZOTYE_OTHER: _VSB_ZOTYE_CLASS = 0; +pub const _VSB_ZOTYE_CLASS_VSB_ZOTYE_2008_2: _VSB_ZOTYE_CLASS = 1; +pub const _VSB_ZOTYE_CLASS_VSB_ZOTYE_5008_1: _VSB_ZOTYE_CLASS = 2; +pub const _VSB_ZOTYE_CLASS_VSB_ZOTYE_Z300_1: _VSB_ZOTYE_CLASS = 3; +pub const _VSB_ZOTYE_CLASS_VSB_ZOTYE_2008_1: _VSB_ZOTYE_CLASS = 4; +pub type _VSB_ZOTYE_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_ZOTYE_CLASS as VSB_ZOTYE_CLASS; +pub const _VSB_NAVECO_CLASS_VSB_NAVECO_OTHER: _VSB_NAVECO_CLASS = 0; +pub const _VSB_NAVECO_CLASS_VSB_NAVECO_Daily_1: _VSB_NAVECO_CLASS = 1; +pub const _VSB_NAVECO_CLASS_VSB_NAVECO_Power_1: _VSB_NAVECO_CLASS = 2; +pub const _VSB_NAVECO_CLASS_VSB_NAVECO_Turbo_1: _VSB_NAVECO_CLASS = 3; +pub const _VSB_NAVECO_CLASS_VSB_NAVECO_Venice_1: _VSB_NAVECO_CLASS = 4; +pub const _VSB_NAVECO_CLASS_VSB_NAVECO_BAODI_1: _VSB_NAVECO_CLASS = 5; +pub const _VSB_NAVECO_CLASS_VSB_NAVECO_DEYIHUOCHE_1: _VSB_NAVECO_CLASS = 6; +pub const _VSB_NAVECO_CLASS_VSB_NAVECO_DULING_1: _VSB_NAVECO_CLASS = 7; +pub type _VSB_NAVECO_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_NAVECO_CLASS as VSB_NAVECO_CLASS; +pub const _VSB_PORSCHE_CLASS_VSB_PORSCHE_OTHER: _VSB_PORSCHE_CLASS = 0; +pub const _VSB_PORSCHE_CLASS_VBR_PORSCHE_PANAMERA_1: _VSB_PORSCHE_CLASS = 1; +pub const _VSB_PORSCHE_CLASS_VBR_PORSCHE_CAYENNE_1: _VSB_PORSCHE_CLASS = 2; +pub type _VSB_PORSCHE_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_PORSCHE_CLASS as VSB_PORSCHE_CLASS; +pub const _VSB_CHRYSLER_CLASS_VSB_CHRYSLER_OTHER: _VSB_CHRYSLER_CLASS = 0; +pub const _VSB_CHRYSLER_CLASS_VSB_CHRYSLER_300C_1: _VSB_CHRYSLER_CLASS = 1; +pub const _VSB_CHRYSLER_CLASS_VSB_CHRYSLER_PTMANBUZHE_1: _VSB_CHRYSLER_CLASS = 2; +pub type _VSB_CHRYSLER_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_CHRYSLER_CLASS as VSB_CHRYSLER_CLASS; +pub const _VSB_CADILLAC_CLASS_VSB_CADILLAC_OTHER: _VSB_CADILLAC_CLASS = 0; +pub const _VSB_CADILLAC_CLASS_VSB_CADILLAC_ATS_1: _VSB_CADILLAC_CLASS = 1; +pub const _VSB_CADILLAC_CLASS_VSB_CADILLAC_CTS_1: _VSB_CADILLAC_CLASS = 2; +pub const _VSB_CADILLAC_CLASS_VSB_CADILLAC_CTS_3: _VSB_CADILLAC_CLASS = 3; +pub const _VSB_CADILLAC_CLASS_VSB_CADILLAC_SLS_1: _VSB_CADILLAC_CLASS = 4; +pub const _VSB_CADILLAC_CLASS_VSB_CADILLAC_SLS_2: _VSB_CADILLAC_CLASS = 5; +pub const _VSB_CADILLAC_CLASS_VSB_CADILLAC_SRX_1: _VSB_CADILLAC_CLASS = 6; +pub const _VSB_CADILLAC_CLASS_VSB_CADILLAC_CTS_2: _VSB_CADILLAC_CLASS = 7; +pub const _VSB_CADILLAC_CLASS_VSB_CADILLAC_KAILEIDE_1: _VSB_CADILLAC_CLASS = 8; +pub type _VSB_CADILLAC_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_CADILLAC_CLASS as VSB_CADILLAC_CLASS; +pub const _VSB_KAMA_CLASS_VSB_KAMA_OTHER: _VSB_KAMA_CLASS = 0; +pub const _VSB_KAMA_CLASS_VSB_KAMA_QINGKA_2: _VSB_KAMA_CLASS = 1; +pub const _VSB_KAMA_CLASS_VSB_KAMA_FULAIKA_1: _VSB_KAMA_CLASS = 2; +pub const _VSB_KAMA_CLASS_VSB_KAMA_JINYUNKA_1: _VSB_KAMA_CLASS = 3; +pub const _VSB_KAMA_CLASS_VSB_KAMA_JUNWEIKA_1: _VSB_KAMA_CLASS = 4; +pub const _VSB_KAMA_CLASS_VSB_KAMA_QINGKA_1: _VSB_KAMA_CLASS = 5; +pub type _VSB_KAMA_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_KAMA_CLASS as VSB_KAMA_CLASS; +pub const _VSB_LIFAN_CLASS_VSB_LIFAN_OTHER: _VSB_LIFAN_CLASS = 0; +pub const _VSB_LIFAN_CLASS_VSB_LIFAN_320_1: _VSB_LIFAN_CLASS = 1; +pub const _VSB_LIFAN_CLASS_VSB_LIFAN_520_1: _VSB_LIFAN_CLASS = 2; +pub const _VSB_LIFAN_CLASS_VSB_LIFAN_520_2: _VSB_LIFAN_CLASS = 3; +pub const _VSB_LIFAN_CLASS_VSB_LIFAN_620_1: _VSB_LIFAN_CLASS = 4; +pub const _VSB_LIFAN_CLASS_VSB_LIFAN_X60_1: _VSB_LIFAN_CLASS = 5; +pub const _VSB_LIFAN_CLASS_VSB_LIFAN_FENGSHUN_1: _VSB_LIFAN_CLASS = 6; +pub type _VSB_LIFAN_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_LIFAN_CLASS as VSB_LIFAN_CLASS; +pub const _VSB_BEIJING_CLASS_VSB_BEIJING_OTHER: _VSB_BEIJING_CLASS = 0; +pub const _VSB_BEIJING_CLASS_VSB_BEIJING_E_1: _VSB_BEIJING_CLASS = 1; +pub type _VSB_BEIJING_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_BEIJING_CLASS as VSB_BEIJING_CLASS; +pub const _VSB_BEIBEN_CLASS_VSB_BEIBEN_OTHER: _VSB_BEIBEN_CLASS = 0; +pub const _VSB_BEIBEN_CLASS_VSB_BEIBEN_NG80_1: _VSB_BEIBEN_CLASS = 1; +pub const _VSB_BEIBEN_CLASS_VSB_BEIBEN_NG80_2: _VSB_BEIBEN_CLASS = 2; +pub const _VSB_BEIBEN_CLASS_VSB_BEIBEN_NG80_3: _VSB_BEIBEN_CLASS = 3; +pub const _VSB_BEIBEN_CLASS_VSB_BEIBEN_V3_1: _VSB_BEIBEN_CLASS = 4; +pub const _VSB_BEIBEN_CLASS_VSB_BEIBEN_V3_2: _VSB_BEIBEN_CLASS = 5; +pub type _VSB_BEIBEN_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_BEIBEN_CLASS as VSB_BEIBEN_CLASS; +pub const _VSB_BEIFANG_CLASS_VSB_BEIFANG_OTHER: _VSB_BEIFANG_CLASS = 0; +pub const _VSB_BEIFANG_CLASS_VSB_BEIFANG_A_1: _VSB_BEIFANG_CLASS = 1; +pub type _VSB_BEIFANG_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_BEIFANG_CLASS as VSB_BEIFANG_CLASS; +pub const _VSB_BAW_CLASS_VSB_BAW_OTHER: _VSB_BAW_CLASS = 0; +pub const _VSB_BAW_CLASS_VSB_BAW_YUSHENG007_1: _VSB_BAW_CLASS = 1; +pub const _VSB_BAW_CLASS_VSB_BAW_QILING_1: _VSB_BAW_CLASS = 2; +pub const _VSB_BAW_CLASS_VSB_BAW_LUBA_1: _VSB_BAW_CLASS = 3; +pub const _VSB_BAW_CLASS_VSB_BAW_QISHI_1: _VSB_BAW_CLASS = 4; +pub type _VSB_BAW_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_BAW_CLASS as VSB_BAW_CLASS; +pub const _VSB_BQWEIWANG_CLASS_VSB_BQWEIWANG_OTHER: _VSB_BQWEIWANG_CLASS = 0; +pub const _VSB_BQWEIWANG_CLASS_VSB_BQWEIWANG_205_1: _VSB_BQWEIWANG_CLASS = 1; +pub const _VSB_BQWEIWANG_CLASS_VSB_BQWEIWANG_306_1: _VSB_BQWEIWANG_CLASS = 2; +pub type _VSB_BQWEIWANG_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_BQWEIWANG_CLASS as VSB_BQWEIWANG_CLASS; +pub const _VSB_SMA_CLASS_VSB_SMA_OTHER: _VSB_SMA_CLASS = 0; +pub const _VSB_SMA_CLASS_VSB_SMA_HAIYU_1: _VSB_SMA_CLASS = 1; +pub const _VSB_SMA_CLASS_VSB_SMA_HAIYU_2: _VSB_SMA_CLASS = 2; +pub const _VSB_SMA_CLASS_VSB_SMA_HAISHANG_1: _VSB_SMA_CLASS = 3; +pub const _VSB_SMA_CLASS_VSB_SMA_HAIJING_1: _VSB_SMA_CLASS = 5; +pub const _VSB_SMA_CLASS_VSB_SMA_HAIXUN_1: _VSB_SMA_CLASS = 4; +pub const _VSB_SMA_CLASS_VSB_SMA_HAIXUN_2: _VSB_SMA_CLASS = 6; +pub type _VSB_SMA_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_SMA_CLASS as VSB_SMA_CLASS; +pub const _VSB_XINGMA_CLASS_VSB_XINGMA_OTHER: _VSB_XINGMA_CLASS = 0; +pub const _VSB_XINGMA_CLASS_VSB_XINGMA_XINGKAIMA_1: _VSB_XINGMA_CLASS = 1; +pub type _VSB_XINGMA_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_XINGMA_CLASS as VSB_XINGMA_CLASS; +pub const _VSB_SHUANGHUAN_CLASS_VSB_SHUANGHUAN_OTHER: _VSB_SHUANGHUAN_CLASS = 0; +pub const _VSB_SHUANGHUAN_CLASS_VSB_SHUANGHUAN_SCEO_1: _VSB_SHUANGHUAN_CLASS = 1; +pub type _VSB_SHUANGHUAN_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_SHUANGHUAN_CLASS as VSB_SHUANGHUAN_CLASS; +pub const _VSB_JEEP_CLASS_VSB_JEEP_OTHER: _VSB_JEEP_CLASS = 0; +pub const _VSB_JEEP_CLASS_VSB_JEEP_DAQIENUOJI_1: _VSB_JEEP_CLASS = 1; +pub const _VSB_JEEP_CLASS_VSB_JEEP_DAQIENUOJI_2: _VSB_JEEP_CLASS = 2; +pub const _VSB_JEEP_CLASS_VSB_JEEP_ZHINANZHE_1: _VSB_JEEP_CLASS = 3; +pub const _VSB_JEEP_CLASS_VSB_JEEP_ZHINANZHE_2: _VSB_JEEP_CLASS = 4; +pub const _VSB_JEEP_CLASS_VSB_JEEP_MUMAREN_1: _VSB_JEEP_CLASS = 5; +pub const _VSB_JEEP_CLASS_VSB_JEEP_MUMAREN_2: _VSB_JEEP_CLASS = 6; +pub const _VSB_JEEP_CLASS_VSB_JEEP_ZIYOUKE: _VSB_JEEP_CLASS = 7; +pub type _VSB_JEEP_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_JEEP_CLASS as VSB_JEEP_CLASS; +pub const _VSB_VENUCIA_CLASS_VSB_VENUCIA_OTHER: _VSB_VENUCIA_CLASS = 0; +pub const _VSB_VENUCIA_CLASS_VSB_VENUCIA_D50_1: _VSB_VENUCIA_CLASS = 1; +pub type _VSB_VENUCIA_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_VENUCIA_CLASS as VSB_VENUCIA_CLASS; +pub const _VSB_HAFEI_CLASS_VSB_HAFEI_OTHER: _VSB_HAFEI_CLASS = 0; +pub const _VSB_HAFEI_CLASS_VSB_HAFEI_XINMINYI_1: _VSB_HAFEI_CLASS = 1; +pub const _VSB_HAFEI_CLASS_VSB_HAFEI_XINMINYI_2: _VSB_HAFEI_CLASS = 2; +pub const _VSB_HAFEI_CLASS_VSB_HAFEI_MINYI_1: _VSB_HAFEI_CLASS = 3; +pub const _VSB_HAFEI_CLASS_VSB_HAFEI_MINYI_2: _VSB_HAFEI_CLASS = 4; +pub const _VSB_HAFEI_CLASS_VSB_HAFEI_SAIBAO_1: _VSB_HAFEI_CLASS = 5; +pub const _VSB_HAFEI_CLASS_VSB_HAFEI_SAIMA_1: _VSB_HAFEI_CLASS = 6; +pub const _VSB_HAFEI_CLASS_VSB_HAFEI_SAIMA_2: _VSB_HAFEI_CLASS = 7; +pub const _VSB_HAFEI_CLASS_VSB_HAFEI_SAIMA_3: _VSB_HAFEI_CLASS = 8; +pub const _VSB_HAFEI_CLASS_VSB_HAFEI_LUBAO_1: _VSB_HAFEI_CLASS = 9; +pub const _VSB_HAFEI_CLASS_VSB_HAFEI_LUBAO_2: _VSB_HAFEI_CLASS = 10; +pub const _VSB_HAFEI_CLASS_VSB_HAFEI_LUBAO_3: _VSB_HAFEI_CLASS = 11; +pub const _VSB_HAFEI_CLASS_VSB_HAFEI_LUZUNXIAOBAWANG_1: _VSB_HAFEI_CLASS = 12; +pub const _VSB_HAFEI_CLASS_VSB_HAFEI_RUIYI_1: _VSB_HAFEI_CLASS = 13; +pub const _VSB_HAFEI_CLASS_VSB_HAFEI_JUNYI_1: _VSB_HAFEI_CLASS = 14; +pub type _VSB_HAFEI_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_HAFEI_CLASS as VSB_HAFEI_CLASS; +pub const _VSB_TKING_CLASS_VSB_TKING_OTHER: _VSB_TKING_CLASS = 0; +pub const _VSB_TKING_CLASS_VSB_TKING_OUGUAN_1: _VSB_TKING_CLASS = 1; +pub const _VSB_TKING_CLASS_VSB_TKING_OUGUAN_2: _VSB_TKING_CLASS = 2; +pub const _VSB_TKING_CLASS_VSB_TKING_OUTENG_1: _VSB_TKING_CLASS = 3; +pub const _VSB_TKING_CLASS_VSB_TKING_FUXING_1: _VSB_TKING_CLASS = 4; +pub const _VSB_TKING_CLASS_VSB_TKING_QINGKAWANG_1: _VSB_TKING_CLASS = 5; +pub const _VSB_TKING_CLASS_VSB_TKING_AFANDA_1: _VSB_TKING_CLASS = 6; +pub const _VSB_TKING_CLASS_VSB_TKING_JUNQI_1: _VSB_TKING_CLASS = 7; +pub type _VSB_TKING_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_TKING_CLASS as VSB_TKING_CLASS; +pub const _VSB_DAEWOO_CLASS_VSB_DAEWOO_OTHER: _VSB_DAEWOO_CLASS = 0; +pub const _VSB_DAEWOO_CLASS_VBR_DAEWOO_6960H3_1: _VSB_DAEWOO_CLASS = 1; +pub type _VSB_DAEWOO_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_DAEWOO_CLASS as VSB_DAEWOO_CLASS; +pub const _VSB_DAYUN_CLASS_VSB_DAYUN_OTHER: _VSB_DAYUN_CLASS = 0; +pub const _VSB_DAYUN_CLASS_VBR_DAYUN_ZHONGKA_1: _VSB_DAYUN_CLASS = 1; +pub type _VSB_DAYUN_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_DAYUN_CLASS as VSB_DAYUN_CLASS; +pub const _VSB_BESTURN_CLASS_VSB_BESTURN_OTHER: _VSB_BESTURN_CLASS = 0; +pub const _VSB_BESTURN_CLASS_VSB_BESTURN_B70_1: _VSB_BESTURN_CLASS = 1; +pub const _VSB_BESTURN_CLASS_VSB_BESTURN_B70_2: _VSB_BESTURN_CLASS = 2; +pub const _VSB_BESTURN_CLASS_VSB_BESTURN_B70_3: _VSB_BESTURN_CLASS = 3; +pub const _VSB_BESTURN_CLASS_VSB_BESTURN_B70_4: _VSB_BESTURN_CLASS = 4; +pub const _VSB_BESTURN_CLASS_VSB_BESTURN_B90_1: _VSB_BESTURN_CLASS = 5; +pub const _VSB_BESTURN_CLASS_VSB_BESTURN_AOXING_1: _VSB_BESTURN_CLASS = 6; +pub type _VSB_BESTURN_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_BESTURN_CLASS as VSB_BESTURN_CLASS; +pub const _VSB_WEILIN_CLASS_VSB_WEILIN_OTHER: _VSB_WEILIN_CLASS = 0; +pub const _VSB_WEILIN_CLASS_VSB_WEILIN_H3_1: _VSB_WEILIN_CLASS = 1; +pub const _VSB_WEILIN_CLASS_VSB_WEILIN_V5_1: _VSB_WEILIN_CLASS = 2; +pub const _VSB_WEILIN_CLASS_VSB_WEILIN_X5_1: _VSB_WEILIN_CLASS = 3; +pub type _VSB_WEILIN_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_WEILIN_CLASS as VSB_WEILIN_CLASS; +pub const _VSB_YUTONG_CLASS_VSB_YUTONG_OTHER: _VSB_YUTONG_CLASS = 0; +pub const _VSB_YUTONG_CLASS_VSB_YUTONG_8XI_1: _VSB_YUTONG_CLASS = 1; +pub const _VSB_YUTONG_CLASS_VSB_YUTONG_KECHE_1: _VSB_YUTONG_CLASS = 2; +pub const _VSB_YUTONG_CLASS_VSB_YUTONG_KECHE_3: _VSB_YUTONG_CLASS = 3; +pub const _VSB_YUTONG_CLASS_VSB_YUTONG_KECHE_4: _VSB_YUTONG_CLASS = 4; +pub const _VSB_YUTONG_CLASS_VSB_YUTONG_KECHE_5: _VSB_YUTONG_CLASS = 5; +pub const _VSB_YUTONG_CLASS_VSB_YUTONG_KECHE_2: _VSB_YUTONG_CLASS = 6; +pub type _VSB_YUTONG_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_YUTONG_CLASS as VSB_YUTONG_CLASS; +pub const _VSB_ANKAI_CLASS_VSB_ANKAI_OTHER: _VSB_ANKAI_CLASS = 0; +pub const _VSB_ANKAI_CLASS_VSB_ANKAI_KECHE_1: _VSB_ANKAI_CLASS = 1; +pub const _VSB_ANKAI_CLASS_VSB_ANKAI_KECHE_2: _VSB_ANKAI_CLASS = 2; +pub type _VSB_ANKAI_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_ANKAI_CLASS as VSB_ANKAI_CLASS; +pub const _VSB_BAOJUN_CLASS_VSB_BAOJUN_OTHER: _VSB_BAOJUN_CLASS = 0; +pub const _VSB_BAOJUN_CLASS_VSB_BAOJUN_630_1: _VSB_BAOJUN_CLASS = 1; +pub type _VSB_BAOJUN_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_BAOJUN_CLASS as VSB_BAOJUN_CLASS; +pub const _VSB_BINLI_CLASS_VSB_BINLI_OTHER: _VSB_BINLI_CLASS = 0; +pub const _VSB_BINLI_CLASS_VSB_BINLI_OULU_1: _VSB_BINLI_CLASS = 1; +pub type _VSB_BINLI_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_BINLI_CLASS as VSB_BINLI_CLASS; +pub const _VSB_TRUMPCHE_CLASS_VSB_TRUMPCHE_OTHER: _VSB_TRUMPCHE_CLASS = 0; +pub const _VSB_TRUMPCHE_CLASS_VSB_TRUMPCHE_GA5_1: _VSB_TRUMPCHE_CLASS = 1; +pub const _VSB_TRUMPCHE_CLASS_VSB_TRUMPCHE_GA5_2: _VSB_TRUMPCHE_CLASS = 3; +pub const _VSB_TRUMPCHE_CLASS_VSB_TRUMPCHE_GS5_1: _VSB_TRUMPCHE_CLASS = 2; +pub type _VSB_TRUMPCHE_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_TRUMPCHE_CLASS as VSB_TRUMPCHE_CLASS; +pub const _VSB_GONOW_CLASS_VSB_GONOW_OTHER: _VSB_GONOW_CLASS = 0; +pub const _VSB_GONOW_CLASS_VSB_GONOW_G3_1: _VSB_GONOW_CLASS = 1; +pub const _VSB_GONOW_CLASS_VSB_GONOW_G5_1: _VSB_GONOW_CLASS = 2; +pub const _VSB_GONOW_CLASS_VSB_GONOW_SHUAIJIAN_1: _VSB_GONOW_CLASS = 4; +pub const _VSB_GONOW_CLASS_VSB_GONOW_XINGWANGM1_1: _VSB_GONOW_CLASS = 3; +pub const _VSB_GONOW_CLASS_VSB_GONOW_CAIYUN500_1: _VSB_GONOW_CLASS = 5; +pub type _VSB_GONOW_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_GONOW_CLASS as VSB_GONOW_CLASS; +pub const _VSB_ISUZU_CLASS_VSB_ISUZU_OTHER: _VSB_ISUZU_CLASS = 0; +pub const _VSB_ISUZU_CLASS_VSB_ISUZU_ZHONGXINGSHANGYONG_1: _VSB_ISUZU_CLASS = 1; +pub const _VSB_ISUZU_CLASS_VSB_ISUZU_WUSHILINGPIKA_1: _VSB_ISUZU_CLASS = 2; +pub const _VSB_ISUZU_CLASS_VSB_ISUZU_WUSHILINGPIKA_2: _VSB_ISUZU_CLASS = 3; +pub const _VSB_ISUZU_CLASS_VSB_ISUZU_JINGJIZHE_1: _VSB_ISUZU_CLASS = 4; +pub type _VSB_ISUZU_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_ISUZU_CLASS as VSB_ISUZU_CLASS; +pub const _VSB_KARRY_CLASS_VSB_KARRY_OTHER: _VSB_KARRY_CLASS = 0; +pub const _VSB_KARRY_CLASS_VSB_KARRY_YOU_2: _VSB_KARRY_CLASS = 1; +pub const _VSB_KARRY_CLASS_VSB_KARRY_YOUJIN_1: _VSB_KARRY_CLASS = 2; +pub const _VSB_KARRY_CLASS_VSB_KARRY_YOUSHENG_1: _VSB_KARRY_CLASS = 3; +pub const _VSB_KARRY_CLASS_VSB_KARRY_YOUSHENG_2: _VSB_KARRY_CLASS = 4; +pub const _VSB_KARRY_CLASS_VSB_KARRY_YOUYA: _VSB_KARRY_CLASS = 5; +pub const _VSB_KARRY_CLASS_VSB_KARRY_YOU_1: _VSB_KARRY_CLASS = 6; +pub type _VSB_KARRY_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_KARRY_CLASS as VSB_KARRY_CLASS; +pub const _VSB_GAGUAR_CLASS_VSB_GAGUAR_OTHER: _VSB_GAGUAR_CLASS = 0; +pub const _VSB_GAGUAR_CLASS_VSB_GAGUAR_XF_1: _VSB_GAGUAR_CLASS = 1; +pub const _VSB_GAGUAR_CLASS_VSB_GAGUAR_XJ_1: _VSB_GAGUAR_CLASS = 2; +pub type _VSB_GAGUAR_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_GAGUAR_CLASS as VSB_GAGUAR_CLASS; +pub const _VSB_SUBARU_CLASS_VSB_SUBARU_OTHER: _VSB_SUBARU_CLASS = 0; +pub const _VSB_SUBARU_CLASS_VSB_SUBARU_AOHU_1: _VSB_SUBARU_CLASS = 1; +pub const _VSB_SUBARU_CLASS_VSB_SUBARU_LISHI_1: _VSB_SUBARU_CLASS = 2; +pub const _VSB_SUBARU_CLASS_VSB_SUBARU_LISHI_2: _VSB_SUBARU_CLASS = 3; +pub const _VSB_SUBARU_CLASS_VSB_SUBARU_XV_1: _VSB_SUBARU_CLASS = 4; +pub const _VSB_SUBARU_CLASS_VSB_SUBARU_SENLINREN_1: _VSB_SUBARU_CLASS = 5; +pub const _VSB_SUBARU_CLASS_VSB_SUBARU_SENLINREN_2: _VSB_SUBARU_CLASS = 6; +pub type _VSB_SUBARU_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_SUBARU_CLASS as VSB_SUBARU_CLASS; +pub const _VSB_ERA_CLASS_VSB_ERA_OTHER: _VSB_ERA_CLASS = 0; +pub const _VSB_ERA_CLASS_VSB_ERA_XIAOKA_1: _VSB_ERA_CLASS = 1; +pub const _VSB_ERA_CLASS_VSB_ERA_XIAOKA_3: _VSB_ERA_CLASS = 2; +pub const _VSB_ERA_CLASS_VSB_ERA_XIAOKA_4: _VSB_ERA_CLASS = 3; +pub const _VSB_ERA_CLASS_VSB_ERA_KANGRUI_1: _VSB_ERA_CLASS = 4; +pub const _VSB_ERA_CLASS_VSB_ERA_KANGRUI_2: _VSB_ERA_CLASS = 5; +pub const _VSB_ERA_CLASS_VSB_ERA_KANGRUI_3: _VSB_ERA_CLASS = 6; +pub const _VSB_ERA_CLASS_VSB_ERA_RUIWO_1: _VSB_ERA_CLASS = 7; +pub const _VSB_ERA_CLASS_VSB_ERA_RUIWO_2: _VSB_ERA_CLASS = 8; +pub const _VSB_ERA_CLASS_VSB_ERA_RUIWO_3: _VSB_ERA_CLASS = 9; +pub const _VSB_ERA_CLASS_VSB_ERA_JINGANG: _VSB_ERA_CLASS = 10; +pub const _VSB_ERA_CLASS_VSB_ERA_LINGHANG_1: _VSB_ERA_CLASS = 11; +pub const _VSB_ERA_CLASS_VSB_ERA_LINGHANG_2: _VSB_ERA_CLASS = 12; +pub const _VSB_ERA_CLASS_VSB_ERA_YULING_1: _VSB_ERA_CLASS = 13; +pub const _VSB_ERA_CLASS_VSB_ERA_YULING_2: _VSB_ERA_CLASS = 14; +pub const _VSB_ERA_CLASS_VSB_ERA_YULING_3: _VSB_ERA_CLASS = 15; +pub const _VSB_ERA_CLASS_VSB_ERA_YULING_4: _VSB_ERA_CLASS = 17; +pub const _VSB_ERA_CLASS_VSB_ERA_XIAOKA_2: _VSB_ERA_CLASS = 17; +pub type _VSB_ERA_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_ERA_CLASS as VSB_ERA_CLASS; +pub const _VSB_CHANGHE_CLASS_VSB_CHANGHE_OTHER: _VSB_CHANGHE_CLASS = 0; +pub const _VSB_CHANGHE_CLASS_VSB_CHANGHE_CH6321_1: _VSB_CHANGHE_CLASS = 1; +pub const _VSB_CHANGHE_CLASS_VSB_CHANGHE_DANSHUANGPAI_1: _VSB_CHANGHE_CLASS = 2; +pub const _VSB_CHANGHE_CLASS_VSB_CHANGHE_AIDIER_1: _VSB_CHANGHE_CLASS = 3; +pub const _VSB_CHANGHE_CLASS_VSB_CHANGHE_AIDIER_2: _VSB_CHANGHE_CLASS = 4; +pub const _VSB_CHANGHE_CLASS_VSB_CHANGHE_FURUIDA_1: _VSB_CHANGHE_CLASS = 5; +pub type _VSB_CHANGHE_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_CHANGHE_CLASS as VSB_CHANGHE_CLASS; +pub const _VSB_OPEL_CLASS_VSB_OPEL_OTHER: _VSB_OPEL_CLASS = 0; +pub const _VSB_OPEL_CLASS_VSB_OPEL_YATE_1: _VSB_OPEL_CLASS = 1; +pub type _VSB_OPEL_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_OPEL_CLASS as VSB_OPEL_CLASS; +pub const _VSB_JONWAY_CLASS_VSB_JONWAY_OTHER: _VSB_JONWAY_CLASS = 0; +pub const _VSB_JONWAY_CLASS_VSB_JONWAY_A380_1: _VSB_JONWAY_CLASS = 1; +pub type _VSB_JONWAY_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_JONWAY_CLASS as VSB_JONWAY_CLASS; +pub const _VSB_JIANGNAN_CLASS_VSB_JIANGNAN_OTHER: _VSB_JIANGNAN_CLASS = 0; +pub const _VSB_JIANGNAN_CLASS_VSB_JIANGNAN_TT_1: _VSB_JIANGNAN_CLASS = 1; +pub type _VSB_JIANGNAN_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_JIANGNAN_CLASS as VSB_JIANGNAN_CLASS; +pub const _VSB_GLEAGLE_CLASS_VSB_GLEAGLE_OTHER: _VSB_GLEAGLE_CLASS = 0; +pub const _VSB_GLEAGLE_CLASS_VSB_GLEAGLE_EAGLE_GC7_1: _VSB_GLEAGLE_CLASS = 1; +pub const _VSB_GLEAGLE_CLASS_VSB_GLEAGLE_EAGLE_GX2_1: _VSB_GLEAGLE_CLASS = 2; +pub const _VSB_GLEAGLE_CLASS_VSB_GLEAGLE_EAGLE_GX7_1: _VSB_GLEAGLE_CLASS = 3; +pub const _VSB_GLEAGLE_CLASS_VSB_GLEAGLE_EAGLE_PANDA_1: _VSB_GLEAGLE_CLASS = 4; +pub const _VSB_GLEAGLE_CLASS_VSB_GLEAGLE_EAGLE_ZIYOUJIAN_1: _VSB_GLEAGLE_CLASS = 5; +pub const _VSB_GLEAGLE_CLASS_VSB_GLEAGLE_EAGLE_ZIYOUJIAN_2: _VSB_GLEAGLE_CLASS = 6; +pub const _VSB_GLEAGLE_CLASS_VSB_GLEAGLE_EAGLE_ZIYOUJIAN_3: _VSB_GLEAGLE_CLASS = 7; +pub const _VSB_GLEAGLE_CLASS_VSB_GLEAGLE_EAGLE_YUANJING_1: _VSB_GLEAGLE_CLASS = 8; +pub const _VSB_GLEAGLE_CLASS_VSB_GLEAGLE_EAGLE_YUANJING_2: _VSB_GLEAGLE_CLASS = 9; +pub type _VSB_GLEAGLE_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_GLEAGLE_CLASS as VSB_GLEAGLE_CLASS; +pub const _VSB_EMGRAND_CLASS_VSB_EMGRAND_OTHER: _VSB_EMGRAND_CLASS = 0; +pub const _VSB_EMGRAND_CLASS_VSB_EMGRAND_EC7_2: _VSB_EMGRAND_CLASS = 1; +pub const _VSB_EMGRAND_CLASS_VSB_EMGRAND_EC7_3: _VSB_EMGRAND_CLASS = 2; +pub const _VSB_EMGRAND_CLASS_VSB_EMGRAND_EC8_1: _VSB_EMGRAND_CLASS = 3; +pub const _VSB_EMGRAND_CLASS_VSB_EMGRAND_EC7_1: _VSB_EMGRAND_CLASS = 4; +pub type _VSB_EMGRAND_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_EMGRAND_CLASS as VSB_EMGRAND_CLASS; +pub const _VSB_ENGLON_CLASS_VSB_ENGLON_OTHER: _VSB_ENGLON_CLASS = 0; +pub const _VSB_ENGLON_CLASS_VSB_ENGLON_SC3_1: _VSB_ENGLON_CLASS = 1; +pub const _VSB_ENGLON_CLASS_VSB_ENGLON_SC5_1: _VSB_ENGLON_CLASS = 2; +pub const _VSB_ENGLON_CLASS_VSB_ENGLON_SC6_1: _VSB_ENGLON_CLASS = 3; +pub const _VSB_ENGLON_CLASS_VSB_ENGLON_SC7_1: _VSB_ENGLON_CLASS = 4; +pub const _VSB_ENGLON_CLASS_VSB_ENGLON_SX7_1: _VSB_ENGLON_CLASS = 5; +pub const _VSB_ENGLON_CLASS_VSB_ENGLON_JINGANG_1: _VSB_ENGLON_CLASS = 6; +pub const _VSB_ENGLON_CLASS_VSB_ENGLON_JINYING_1: _VSB_ENGLON_CLASS = 7; +pub type _VSB_ENGLON_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_ENGLON_CLASS as VSB_ENGLON_CLASS; +pub const _VSB_JAC_CLASS_VSB_JAC_OTHER: _VSB_JAC_CLASS = 0; +pub const _VSB_JAC_CLASS_VSB_JAC_TONGYUE_1: _VSB_JAC_CLASS = 1; +pub const _VSB_JAC_CLASS_VSB_JAC_HEYUE_1: _VSB_JAC_CLASS = 2; +pub const _VSB_JAC_CLASS_VSB_JAC_HEYUEA30_2: _VSB_JAC_CLASS = 3; +pub const _VSB_JAC_CLASS_VSB_JAC_HEYUERS_3: _VSB_JAC_CLASS = 4; +pub const _VSB_JAC_CLASS_VSB_JAC_HAOYUN_1: _VSB_JAC_CLASS = 5; +pub const _VSB_JAC_CLASS_VSB_JAC_WEILING_2: _VSB_JAC_CLASS = 6; +pub const _VSB_JAC_CLASS_VSB_JAC_WEILING_3: _VSB_JAC_CLASS = 7; +pub const _VSB_JAC_CLASS_VSB_JAC_WEILING_4: _VSB_JAC_CLASS = 8; +pub const _VSB_JAC_CLASS_VSB_JAC_KECHE_1: _VSB_JAC_CLASS = 9; +pub const _VSB_JAC_CLASS_VSB_JAC_BINYUE_1: _VSB_JAC_CLASS = 10; +pub const _VSB_JAC_CLASS_VSB_JAC_SHUAILING_2: _VSB_JAC_CLASS = 11; +pub const _VSB_JAC_CLASS_VSB_JAC_KANGLING_1: _VSB_JAC_CLASS = 12; +pub const _VSB_JAC_CLASS_VSB_JAC_KANGLING_2: _VSB_JAC_CLASS = 13; +pub const _VSB_JAC_CLASS_VSB_JAC_YUEYUE_1: _VSB_JAC_CLASS = 14; +pub const _VSB_JAC_CLASS_VSB_JAC_XINGRUI_1: _VSB_JAC_CLASS = 15; +pub const _VSB_JAC_CLASS_VSB_JAC_GEERFA_H_1: _VSB_JAC_CLASS = 16; +pub const _VSB_JAC_CLASS_VSB_JAC_GEERFA_K_2: _VSB_JAC_CLASS = 17; +pub const _VSB_JAC_CLASS_VSB_JAC_GEERFA_K_3: _VSB_JAC_CLASS = 18; +pub const _VSB_JAC_CLASS_VSB_JAC_GEERFA_M_4: _VSB_JAC_CLASS = 19; +pub const _VSB_JAC_CLASS_VSB_JAC_RUIFENG_1: _VSB_JAC_CLASS = 20; +pub const _VSB_JAC_CLASS_VSB_JAC_RUIFENG_2: _VSB_JAC_CLASS = 21; +pub const _VSB_JAC_CLASS_VSB_JAC_RUIFENG_3: _VSB_JAC_CLASS = 22; +pub const _VSB_JAC_CLASS_VSB_JAC_RUIFENG_4: _VSB_JAC_CLASS = 23; +pub const _VSB_JAC_CLASS_VSB_JAC_RUIYING_1: _VSB_JAC_CLASS = 24; +pub const _VSB_JAC_CLASS_VSB_JAC_RUIYING_2: _VSB_JAC_CLASS = 25; +pub const _VSB_JAC_CLASS_VSB_JAC_JUNLING_2: _VSB_JAC_CLASS = 26; +pub const _VSB_JAC_CLASS_VSB_JAC_WEILING_1: _VSB_JAC_CLASS = 27; +pub const _VSB_JAC_CLASS_VSB_JAC_SHUAILING_1: _VSB_JAC_CLASS = 28; +pub const _VSB_JAC_CLASS_VSB_JAC_RUILING_1: _VSB_JAC_CLASS = 29; +pub const _VSB_JAC_CLASS_VSB_JAC_JUNLING_1: _VSB_JAC_CLASS = 30; +pub type _VSB_JAC_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_JAC_CLASS as VSB_JAC_CLASS; +pub const _VSB_JMC_CLASS_VSB_JMC_OTHER: _VSB_JMC_CLASS = 0; +pub const _VSB_JMC_CLASS_VSB_JMC_KAIYUN_1: _VSB_JMC_CLASS = 1; +pub const _VSB_JMC_CLASS_VSB_JMC_KAIYUN_2: _VSB_JMC_CLASS = 2; +pub const _VSB_JMC_CLASS_VSB_JMC_YUHU_1: _VSB_JMC_CLASS = 3; +pub const _VSB_JMC_CLASS_VSB_JMC_BAODIAN_1: _VSB_JMC_CLASS = 4; +pub const _VSB_JMC_CLASS_VSB_JMC_BAODIAN_2: _VSB_JMC_CLASS = 5; +pub const _VSB_JMC_CLASS_VSB_JMC_BAODIAN_3: _VSB_JMC_CLASS = 6; +pub const _VSB_JMC_CLASS_VSB_JMC_BAOWEI_1: _VSB_JMC_CLASS = 7; +pub const _VSB_JMC_CLASS_VSB_JMC_BAOWEI_2: _VSB_JMC_CLASS = 8; +pub const _VSB_JMC_CLASS_VSB_JMC_QUANSHUN_1: _VSB_JMC_CLASS = 9; +pub const _VSB_JMC_CLASS_VSB_JMC_QUANSHUN_2: _VSB_JMC_CLASS = 10; +pub const _VSB_JMC_CLASS_VSB_JMC_QUANSHUN_3: _VSB_JMC_CLASS = 11; +pub const _VSB_JMC_CLASS_VSB_JMC_SHUNDA_1: _VSB_JMC_CLASS = 12; +pub const _VSB_JMC_CLASS_VSB_JMC_SHUNDA_2: _VSB_JMC_CLASS = 13; +pub const _VSB_JMC_CLASS_VSB_JMC_YUSHENG_1: _VSB_JMC_CLASS = 14; +pub const _VSB_JMC_CLASS_VSB_JMC_YUSHENG_2: _VSB_JMC_CLASS = 15; +pub type _VSB_JMC_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_JMC_CLASS as VSB_JMC_CLASS; +pub const _VSB_VOLVO_CLASS_VSB_VOLVO_OTHER: _VSB_VOLVO_CLASS = 0; +pub const _VSB_VOLVO_CLASS_VSB_VOLVO_C30_1: _VSB_VOLVO_CLASS = 1; +pub const _VSB_VOLVO_CLASS_VSB_VOLVO_S40_1: _VSB_VOLVO_CLASS = 2; +pub const _VSB_VOLVO_CLASS_VSB_VOLVO_S60_1: _VSB_VOLVO_CLASS = 3; +pub const _VSB_VOLVO_CLASS_VSB_VOLVO_S60_2: _VSB_VOLVO_CLASS = 4; +pub const _VSB_VOLVO_CLASS_VSB_VOLVO_S80L_1: _VSB_VOLVO_CLASS = 5; +pub const _VSB_VOLVO_CLASS_VSB_VOLVO_XC60_1: _VSB_VOLVO_CLASS = 6; +pub const _VSB_VOLVO_CLASS_VSB_VOLVO_XC90_1: _VSB_VOLVO_CLASS = 7; +pub type _VSB_VOLVO_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_VOLVO_CLASS as VSB_VOLVO_CLASS; +pub const _VSB_HIGER_CLASS_VSB_HIGER_OTHER: _VSB_HIGER_CLASS = 0; +pub const _VSB_HIGER_CLASS_VSB_HIGER_H8_1: _VSB_HIGER_CLASS = 1; +pub const _VSB_HIGER_CLASS_VSB_HIGER_H92_1: _VSB_HIGER_CLASS = 2; +pub const _VSB_HIGER_CLASS_VSB_HIGER_V7_1: _VSB_HIGER_CLASS = 3; +pub const _VSB_HIGER_CLASS_VSB_HIGER_KECHE_1: _VSB_HIGER_CLASS = 4; +pub const _VSB_HIGER_CLASS_VSB_HIGER_LONGWEI_1: _VSB_HIGER_CLASS = 5; +pub const _VSB_HIGER_CLASS_VSB_HIGER_H7V_1: _VSB_HIGER_CLASS = 6; +pub type _VSB_HIGER_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_HIGER_CLASS as VSB_HIGER_CLASS; +pub const _VSB_RUILIN_CLASS_VSB_RUILIN_OTHER: _VSB_RUILIN_CLASS = 0; +pub const _VSB_RUILIN_CLASS_VSB_RUILIN_G3_1: _VSB_RUILIN_CLASS = 1; +pub const _VSB_RUILIN_CLASS_VSB_RUILIN_G5_1: _VSB_RUILIN_CLASS = 2; +pub const _VSB_RUILIN_CLASS_VSB_RUILIN_M1_1: _VSB_RUILIN_CLASS = 3; +pub const _VSB_RUILIN_CLASS_VSB_RUILIN_X1_1: _VSB_RUILIN_CLASS = 4; +pub const _VSB_RUILIN_CLASS_VSB_RUILIN_X1_2: _VSB_RUILIN_CLASS = 5; +pub type _VSB_RUILIN_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_RUILIN_CLASS as VSB_RUILIN_CLASS; +pub const _VSB_SHENLONG_CLASS_VSB_SHENLON_OTHER: _VSB_SHENLONG_CLASS = 0; +pub const _VSB_SHENLONG_CLASS_VSB_SHENLONG_KECHE_1: _VSB_SHENLONG_CLASS = 1; +pub type _VSB_SHENLONG_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_SHENLONG_CLASS as VSB_SHENLONG_CLASS; +pub const _VSB_FOTON_CLASS_VSB_FOTON_OTHER: _VSB_FOTON_CLASS = 0; +pub const _VSB_FOTON_CLASS_VSB_FOTON_AOLING_1: _VSB_FOTON_CLASS = 1; +pub const _VSB_FOTON_CLASS_VSB_FOTON_AOLING_2: _VSB_FOTON_CLASS = 2; +pub const _VSB_FOTON_CLASS_VSB_FOTON_AOLING_3: _VSB_FOTON_CLASS = 3; +pub const _VSB_FOTON_CLASS_VSB_FOTON_OUMAN_1: _VSB_FOTON_CLASS = 4; +pub const _VSB_FOTON_CLASS_VSB_FOTON_OUMAN_2: _VSB_FOTON_CLASS = 5; +pub const _VSB_FOTON_CLASS_VSB_FOTON_OUMAN_3: _VSB_FOTON_CLASS = 6; +pub const _VSB_FOTON_CLASS_VSB_FOTON_OUMAN_4: _VSB_FOTON_CLASS = 7; +pub const _VSB_FOTON_CLASS_VSB_FOTON_OUHUI_1: _VSB_FOTON_CLASS = 8; +pub const _VSB_FOTON_CLASS_VSB_FOTON_OUMAKE_1: _VSB_FOTON_CLASS = 9; +pub const _VSB_FOTON_CLASS_VSB_FOTON_OUMAKE_2: _VSB_FOTON_CLASS = 10; +pub const _VSB_FOTON_CLASS_VSB_FOTON_SAPU_1: _VSB_FOTON_CLASS = 11; +pub const _VSB_FOTON_CLASS_VSB_FOTON_SAPU_3: _VSB_FOTON_CLASS = 12; +pub const _VSB_FOTON_CLASS_VSB_FOTON_MENGPAIKE_1: _VSB_FOTON_CLASS = 13; +pub const _VSB_FOTON_CLASS_VSB_FOTON_MIDI_1: _VSB_FOTON_CLASS = 14; +pub const _VSB_FOTON_CLASS_VSB_FOTON_FENGJING_1: _VSB_FOTON_CLASS = 15; +pub const _VSB_FOTON_CLASS_VSB_FOTON_SAPU_2: _VSB_FOTON_CLASS = 16; +pub type _VSB_FOTON_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_FOTON_CLASS as VSB_FOTON_CLASS; +pub const _VSB_FODAY_CLASS_VSB_FODAY_OTHER: _VSB_FODAY_CLASS = 0; +pub const _VSB_FODAY_CLASS_VSB_FODAY_CHAOREN_1: _VSB_FODAY_CLASS = 1; +pub const _VSB_FODAY_CLASS_VSB_FODAY_CHAOREN_2: _VSB_FODAY_CLASS = 2; +pub const _VSB_FODAY_CLASS_VSB_FODAY_TANSUOZHE_1: _VSB_FODAY_CLASS = 3; +pub const _VSB_FODAY_CLASS_VSB_FODAY_TANSUOZHE_2: _VSB_FODAY_CLASS = 4; +pub const _VSB_FODAY_CLASS_VSB_FODAY_TANSUOZHE_3: _VSB_FODAY_CLASS = 5; +pub const _VSB_FODAY_CLASS_VSB_FODAY_XIONGSHI_1: _VSB_FODAY_CLASS = 6; +pub type _VSB_FODAY_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_FODAY_CLASS as VSB_FODAY_CLASS; +pub const _VSB_HONGQI_CLASS_VSB_HONGQI_OTHER: _VSB_HONGQI_CLASS = 0; +pub const _VSB_HONGQI_CLASS_VSB_HONGQI_MINGSHI_1: _VSB_HONGQI_CLASS = 1; +pub type _VSB_HONGQI_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_HONGQI_CLASS as VSB_HONGQI_CLASS; +pub const _VSB_LUXGEN_CLASS_VSB_LUXGEN_OTHER: _VSB_LUXGEN_CLASS = 0; +pub const _VSB_LUXGEN_CLASS_VSB_LUXGEN_DASEVEN_1: _VSB_LUXGEN_CLASS = 1; +pub type _VSB_LUXGEN_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_LUXGEN_CLASS as VSB_LUXGEN_CLASS; +pub const _VSB_XIALI_CLASS_VSB_XIALI_OTHER: _VSB_XIALI_CLASS = 0; +pub const _VSB_XIALI_CLASS_VSB_XIALI_QIBING_1: _VSB_XIALI_CLASS = 1; +pub type _VSB_XIALI_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_XIALI_CLASS as VSB_XIALI_CLASS; +pub const _VSB_SHUCHI_CLASS_VSB_SHUCHI_OTHER: _VSB_SHUCHI_CLASS = 0; +pub const _VSB_SHUCHI_CLASS_VSB_SHUCHI_A_1: _VSB_SHUCHI_CLASS = 1; +pub type _VSB_SHUCHI_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_SHUCHI_CLASS as VSB_SHUCHI_CLASS; +pub const _VSB_INFINITI_CLASS_VSB_INFINITI_OTHER: _VSB_INFINITI_CLASS = 0; +pub const _VSB_INFINITI_CLASS_VSB_INFINITI_EX_1: _VSB_INFINITI_CLASS = 1; +pub const _VSB_INFINITI_CLASS_VSB_INFINITI_FX_1: _VSB_INFINITI_CLASS = 2; +pub const _VSB_INFINITI_CLASS_VSB_INFINITI_FX_2: _VSB_INFINITI_CLASS = 3; +pub const _VSB_INFINITI_CLASS_VSB_INFINITI_FX_3: _VSB_INFINITI_CLASS = 4; +pub const _VSB_INFINITI_CLASS_VSB_INFINITI_G_1: _VSB_INFINITI_CLASS = 5; +pub const _VSB_INFINITI_CLASS_VSB_INFINITI_JX_1: _VSB_INFINITI_CLASS = 6; +pub type _VSB_INFINITI_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_INFINITI_CLASS as VSB_INFINITI_CLASS; +pub const _VSB_LOTUS_CLASS_VSB_LOTUS_OTHER: _VSB_LOTUS_CLASS = 0; +pub const _VSB_LOTUS_CLASS_VSB_LOTUS_L3_1: _VSB_LOTUS_CLASS = 1; +pub const _VSB_LOTUS_CLASS_VSB_LOTUS_L3_2: _VSB_LOTUS_CLASS = 2; +pub type _VSB_LOTUS_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_LOTUS_CLASS as VSB_LOTUS_CLASS; +pub const _VSB_FIAT_CLASS_VSB_FIAT_OTHER: _VSB_FIAT_CLASS = 0; +pub const _VSB_FIAT_CLASS_VSB_FIAT_FEIYUE_1: _VSB_FIAT_CLASS = 1; +pub type _VSB_FIAT_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_FIAT_CLASS as VSB_FIAT_CLASS; +pub const _VSB_OGA_CLASS_VSB_OGA_OTHER: _VSB_OGA_CLASS = 0; +pub const _VSB_OGA_CLASS_VSB_OGA_MDX_1: _VSB_OGA_CLASS = 1; +pub const _VSB_OGA_CLASS_VSB_OGA_MDX_2: _VSB_OGA_CLASS = 2; +pub type _VSB_OGA_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_OGA_CLASS as VSB_OGA_CLASS; +pub const _VSB_YUEJIN_CLASS_VSB_YUEJIN_OTHER: _VSB_YUEJIN_CLASS = 0; +pub const _VSB_YUEJIN_CLASS_VSB_YUEJIN_SHUAIHU_1: _VSB_YUEJIN_CLASS = 1; +pub const _VSB_YUEJIN_CLASS_VSB_YUEJIN_CAISHEN_1: _VSB_YUEJIN_CLASS = 2; +pub const _VSB_YUEJIN_CLASS_VSB_YUEJIN_CAISHEN_2: _VSB_YUEJIN_CLASS = 3; +pub const _VSB_YUEJIN_CLASS_VSB_YUEJIN_CAISHEN_3: _VSB_YUEJIN_CLASS = 4; +pub type _VSB_YUEJIN_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_YUEJIN_CLASS as VSB_YUEJIN_CLASS; +pub const _VSB_YEMA_CLASS_VSB_YEMA_OTHER: _VSB_YEMA_CLASS = 0; +pub const _VSB_YEMA_CLASS_VSB_YEMA_F99_1: _VSB_YEMA_CLASS = 1; +pub type _VSB_YEMA_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_YEMA_CLASS as VSB_YEMA_CLASS; +pub const _VSB_SZKINGLONG_CLASS_VSB_SZKINGLONG_OTHER: _VSB_SZKINGLONG_CLASS = 0; +pub const _VSB_SZKINGLONG_CLASS_VSB_SZKINGLONG_BUS11_1: _VSB_SZKINGLONG_CLASS = 1; +pub const _VSB_SZKINGLONG_CLASS_VSB_SZKINGLONG_BUS12_1: _VSB_SZKINGLONG_CLASS = 2; +pub const _VSB_SZKINGLONG_CLASS_VSB_SZKINGLONG_BUS13_1: _VSB_SZKINGLONG_CLASS = 3; +pub const _VSB_SZKINGLONG_CLASS_VSB_SZKINGLONG_BUS14_1: _VSB_SZKINGLONG_CLASS = 4; +pub const _VSB_SZKINGLONG_CLASS_VSB_SZKINGLONG_BUS16_1: _VSB_SZKINGLONG_CLASS = 5; +pub const _VSB_SZKINGLONG_CLASS_VSB_SZKINGLONG_BUS18_1: _VSB_SZKINGLONG_CLASS = 6; +pub const _VSB_SZKINGLONG_CLASS_VSB_SZKINGLONG_BUS1_1: _VSB_SZKINGLONG_CLASS = 7; +pub const _VSB_SZKINGLONG_CLASS_VSB_SZKINGLONG_BUS20_1: _VSB_SZKINGLONG_CLASS = 8; +pub const _VSB_SZKINGLONG_CLASS_VSB_SZKINGLONG_BUS2_1: _VSB_SZKINGLONG_CLASS = 9; +pub const _VSB_SZKINGLONG_CLASS_VSB_SZKINGLONG_BUS5_1: _VSB_SZKINGLONG_CLASS = 10; +pub const _VSB_SZKINGLONG_CLASS_VSB_SZKINGLONG_BUS6_1: _VSB_SZKINGLONG_CLASS = 11; +pub const _VSB_SZKINGLONG_CLASS_VSB_SZKINGLONG_BUS9_1: _VSB_SZKINGLONG_CLASS = 12; +pub const _VSB_SZKINGLONG_CLASS_VSB_SZKINGLONG_BUS10_1: _VSB_SZKINGLONG_CLASS = 13; +pub const _VSB_SZKINGLONG_CLASS_VSB_SZKINGLONG_BUS15_1: _VSB_SZKINGLONG_CLASS = 14; +pub type _VSB_SZKINGLONG_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_SZKINGLONG_CLASS as VSB_SZKINGLONG_CLASS; +pub const _VSB_CHANGFENG_CLASS_VSB_CHANGFENG_OTHER: _VSB_CHANGFENG_CLASS = 0; +pub const _VSB_CHANGFENG_CLASS_VSB_CHANGFENG_CS7_1: _VSB_CHANGFENG_CLASS = 1; +pub const _VSB_CHANGFENG_CLASS_VSB_CHANGFENG_QIBING_1: _VSB_CHANGFENG_CLASS = 2; +pub const _VSB_CHANGFENG_CLASS_VSB_CHANGFENG_LIEBAO_1: _VSB_CHANGFENG_CLASS = 3; +pub const _VSB_CHANGFENG_CLASS_VSB_CHANGFENG_FULING_1: _VSB_CHANGFENG_CLASS = 4; +pub const _VSB_CHANGFENG_CLASS_VSB_CHANGFENG_FEIYANG_1: _VSB_CHANGFENG_CLASS = 5; +pub const _VSB_CHANGFENG_CLASS_VSB_CHANGFENG_FEITENG_1: _VSB_CHANGFENG_CLASS = 6; +pub const _VSB_CHANGFENG_CLASS_VSB_CHANGFENG_BLACKJINGANG_1: _VSB_CHANGFENG_CLASS = 7; +pub type _VSB_CHANGFENG_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_CHANGFENG_CLASS as VSB_CHANGFENG_CLASS; +pub const _VSB_LUFENG_CLASS_VSB_LUFENG_OTHER: _VSB_LUFENG_CLASS = 0; +pub const _VSB_LUFENG_CLASS_VSB_LUFENG_X6_1: _VSB_LUFENG_CLASS = 1; +pub const _VSB_LUFENG_CLASS_VSB_LUFENG_X6_2: _VSB_LUFENG_CLASS = 2; +pub const _VSB_LUFENG_CLASS_VSB_LUFENG_X6_3: _VSB_LUFENG_CLASS = 3; +pub const _VSB_LUFENG_CLASS_VSB_LUFENG_LUFENGX5_1: _VSB_LUFENG_CLASS = 4; +pub const _VSB_LUFENG_CLASS_VSB_LUFENG_LUFENGX8_1: _VSB_LUFENG_CLASS = 5; +pub const _VSB_LUFENG_CLASS_VSB_LUFENG_LUFENGX8_2: _VSB_LUFENG_CLASS = 6; +pub const _VSB_LUFENG_CLASS_VSB_LUFENG_FENGHUA_1: _VSB_LUFENG_CLASS = 7; +pub const _VSB_LUFENG_CLASS_VSB_LUFENG_X6_4: _VSB_LUFENG_CLASS = 8; +pub const _VSB_LUFENG_CLASS_VSB_LUFENG_FENGSHANG_1: _VSB_LUFENG_CLASS = 9; +pub type _VSB_LUFENG_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_LUFENG_CLASS as VSB_LUFENG_CLASS; +pub const _VSB_SHANQI_CLASS_VSB_SHANQI_OTHER: _VSB_SHANQI_CLASS = 0; +pub const _VSB_SHANQI_CLASS_VSB_SHANQI_AOLONG_1: _VSB_SHANQI_CLASS = 1; +pub const _VSB_SHANQI_CLASS_VSB_SHANQI_AOLONG_2: _VSB_SHANQI_CLASS = 2; +pub const _VSB_SHANQI_CLASS_VSB_SHANQI_DELONG_1: _VSB_SHANQI_CLASS = 3; +pub const _VSB_SHANQI_CLASS_VSB_SHANQI_DELONG_2: _VSB_SHANQI_CLASS = 4; +pub const _VSB_SHANQI_CLASS_VSB_SHANQI_DELONG_3: _VSB_SHANQI_CLASS = 5; +pub type _VSB_SHANQI_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_SHANQI_CLASS as VSB_SHANQI_CLASS; +pub const _VSB_RENAULT_CLASS_VSB_RENAULT_OTHER: _VSB_RENAULT_CLASS = 0; +pub const _VSB_RENAULT_CLASS_VSB_RENAULT_MEIGANNA_1: _VSB_RENAULT_CLASS = 1; +pub const _VSB_RENAULT_CLASS_VSB_RENAULT_KELEIAO_1: _VSB_RENAULT_CLASS = 2; +pub const _VSB_RENAULT_CLASS_VSB_RENAULT_KELEIAO_2: _VSB_RENAULT_CLASS = 3; +pub const _VSB_RENAULT_CLASS_VSB_RENAULT_SCENE_1: _VSB_RENAULT_CLASS = 4; +pub const _VSB_RENAULT_CLASS_VSB_RENAULT_FENGLANG_1: _VSB_RENAULT_CLASS = 5; +pub const _VSB_RENAULT_CLASS_VSB_RENAULT_TAFEIKE_1: _VSB_RENAULT_CLASS = 6; +pub type _VSB_RENAULT_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_RENAULT_CLASS as VSB_RENAULT_CLASS; +pub const _VSB_HUANGHAI_CLASS_VSB_HUANGHAI_OTHER: _VSB_HUANGHAI_CLASS = 0; +pub const _VSB_HUANGHAI_CLASS_VSB_HUANGHAI_DACAISHEN_1: _VSB_HUANGHAI_CLASS = 1; +pub const _VSB_HUANGHAI_CLASS_VSB_HUANGHAI_DACAISHEN_2: _VSB_HUANGHAI_CLASS = 2; +pub const _VSB_HUANGHAI_CLASS_VSB_HUANGHAI_BUS4_1: _VSB_HUANGHAI_CLASS = 3; +pub const _VSB_HUANGHAI_CLASS_VSB_HUANGHAI_CHALLENGER_1: _VSB_HUANGHAI_CLASS = 4; +pub const _VSB_HUANGHAI_CLASS_VSB_HUANGHAI_AOLONGCUV_1: _VSB_HUANGHAI_CLASS = 5; +pub const _VSB_HUANGHAI_CLASS_VSB_HUANGHAI_AOJUN_1: _VSB_HUANGHAI_CLASS = 6; +pub const _VSB_HUANGHAI_CLASS_VSB_HUANGHAI_AOJUN_2: _VSB_HUANGHAI_CLASS = 7; +pub const _VSB_HUANGHAI_CLASS_VSB_HUANGHAI_QISHENGV3_1: _VSB_HUANGHAI_CLASS = 8; +pub const _VSB_HUANGHAI_CLASS_VSB_HUANGHAI_LINGHANGZHE_1: _VSB_HUANGHAI_CLASS = 9; +pub const _VSB_HUANGHAI_CLASS_VSB_HUANGHAI_FENGCHI_1: _VSB_HUANGHAI_CLASS = 10; +pub type _VSB_HUANGHAI_CLASS = ::std::os::raw::c_uint; +pub use self::_VSB_HUANGHAI_CLASS as VSB_HUANGHAI_CLASS; +#[doc = "����Ʒ��������End"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VEHICLE_INFO_ { + pub dwIndex: DWORD, + pub byVehicleType: BYTE, + pub byColorDepth: BYTE, + pub byColor: BYTE, + pub byRadarState: BYTE, + pub wSpeed: WORD, + pub wLength: WORD, + pub byIllegalType: BYTE, + pub byVehicleLogoRecog: BYTE, + pub byVehicleSubLogoRecog: BYTE, + pub byVehicleModel: BYTE, + pub byCustomInfo: [BYTE; 16usize], + pub wVehicleLogoRecog: WORD, + pub byIsParking: BYTE, + pub byRes: BYTE, + pub dwParkingTime: DWORD, + pub byBelieve: BYTE, + pub byCurrentWorkerNumber: BYTE, + pub byCurrentGoodsLoadingRate: BYTE, + pub byDoorsStatus: BYTE, + pub byRes3: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VEHICLE_INFO_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_DVR_VEHICLE_INFO_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VEHICLE_INFO_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIndex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_INFO_), + "::", + stringify!(dwIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_INFO_), + "::", + stringify!(byVehicleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byColorDepth) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_INFO_), + "::", + stringify!(byColorDepth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byColor) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_INFO_), + "::", + stringify!(byColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRadarState) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_INFO_), + "::", + stringify!(byRadarState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSpeed) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_INFO_), + "::", + stringify!(wSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLength) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_INFO_), + "::", + stringify!(wLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIllegalType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_INFO_), + "::", + stringify!(byIllegalType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleLogoRecog) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_INFO_), + "::", + stringify!(byVehicleLogoRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleSubLogoRecog) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_INFO_), + "::", + stringify!(byVehicleSubLogoRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleModel) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_INFO_), + "::", + stringify!(byVehicleModel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCustomInfo) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_INFO_), + "::", + stringify!(byCustomInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wVehicleLogoRecog) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_INFO_), + "::", + stringify!(wVehicleLogoRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsParking) as usize - ptr as usize }, + 34usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_INFO_), + "::", + stringify!(byIsParking) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 35usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_INFO_), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwParkingTime) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_INFO_), + "::", + stringify!(dwParkingTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBelieve) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_INFO_), + "::", + stringify!(byBelieve) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCurrentWorkerNumber) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_INFO_), + "::", + stringify!(byCurrentWorkerNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCurrentGoodsLoadingRate) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_INFO_), + "::", + stringify!(byCurrentGoodsLoadingRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDoorsStatus) as usize - ptr as usize }, + 43usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_INFO_), + "::", + stringify!(byDoorsStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_INFO_), + "::", + stringify!(byRes3) + ) + ); +} +#[doc = "����Ʒ��������End"] +pub type NET_DVR_VEHICLE_INFO = tagNET_DVR_VEHICLE_INFO_; +#[doc = "����Ʒ��������End"] +pub type LPNET_DVR_VEHICLE_INFO = *mut tagNET_DVR_VEHICLE_INFO_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLATE_RESULT { + pub dwSize: DWORD, + pub byResultType: BYTE, + pub byChanIndex: BYTE, + pub wAlarmRecordID: WORD, + pub dwRelativeTime: DWORD, + pub byAbsTime: [BYTE; 32usize], + pub dwPicLen: DWORD, + pub dwPicPlateLen: DWORD, + pub dwVideoLen: DWORD, + pub byTrafficLight: BYTE, + pub byPicNum: BYTE, + pub byDriveChan: BYTE, + pub byVehicleType: BYTE, + pub dwBinPicLen: DWORD, + pub dwCarPicLen: DWORD, + pub dwFarCarPicLen: DWORD, + pub pBuffer3: *mut BYTE, + pub pBuffer4: *mut BYTE, + pub pBuffer5: *mut BYTE, + pub byRelaLaneDirectionType: BYTE, + pub byCarDirectionType: BYTE, + pub byRes3: [BYTE; 6usize], + pub struPlateInfo: NET_DVR_PLATE_INFO, + pub struVehicleInfo: NET_DVR_VEHICLE_INFO, + pub pBuffer1: *mut BYTE, + pub pBuffer2: *mut BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLATE_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLATE_RESULT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PLATE_RESULT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byResultType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT), + "::", + stringify!(byResultType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanIndex) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT), + "::", + stringify!(byChanIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAlarmRecordID) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT), + "::", + stringify!(wAlarmRecordID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAbsTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT), + "::", + stringify!(byAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicLen) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT), + "::", + stringify!(dwPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicPlateLen) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT), + "::", + stringify!(dwPicPlateLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoLen) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT), + "::", + stringify!(dwVideoLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrafficLight) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT), + "::", + stringify!(byTrafficLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicNum) as usize - ptr as usize }, + 57usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT), + "::", + stringify!(byPicNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDriveChan) as usize - ptr as usize }, + 58usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT), + "::", + stringify!(byDriveChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleType) as usize - ptr as usize }, + 59usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT), + "::", + stringify!(byVehicleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBinPicLen) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT), + "::", + stringify!(dwBinPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCarPicLen) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT), + "::", + stringify!(dwCarPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFarCarPicLen) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT), + "::", + stringify!(dwFarCarPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer3) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT), + "::", + stringify!(pBuffer3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer4) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT), + "::", + stringify!(pBuffer4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer5) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT), + "::", + stringify!(pBuffer5) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelaLaneDirectionType) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT), + "::", + stringify!(byRelaLaneDirectionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCarDirectionType) as usize - ptr as usize }, + 97usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT), + "::", + stringify!(byCarDirectionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 98usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateInfo) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT), + "::", + stringify!(struPlateInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVehicleInfo) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT), + "::", + stringify!(struVehicleInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer1) as usize - ptr as usize }, + 248usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT), + "::", + stringify!(pBuffer1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer2) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT), + "::", + stringify!(pBuffer2) + ) + ); +} +pub type NET_DVR_PLATE_RESULT = tagNET_DVR_PLATE_RESULT; +pub type LPNET_DVR_PLATE_RESULT = *mut tagNET_DVR_PLATE_RESULT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VPD_SHUTTER { + pub dwCommmand: DWORD, + pub dwCode: DWORD, + pub byRes: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_VPD_SHUTTER() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_VPD_SHUTTER)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VPD_SHUTTER)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCommmand) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VPD_SHUTTER), + "::", + stringify!(dwCommmand) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VPD_SHUTTER), + "::", + stringify!(dwCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VPD_SHUTTER), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VPD_SHUTTER = tagNET_VPD_SHUTTER; +pub type LPNET_VPD_SHUTTER = *mut tagNET_VPD_SHUTTER; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IMAGEOVERLAYCFG { + pub dwSize: DWORD, + pub byOverlayInfo: BYTE, + pub byOverlayMonitorInfo: BYTE, + pub byOverlayTime: BYTE, + pub byOverlaySpeed: BYTE, + pub byOverlaySpeeding: BYTE, + pub byOverlayLimitFlag: BYTE, + pub byOverlayPlate: BYTE, + pub byOverlayColor: BYTE, + pub byOverlayLength: BYTE, + pub byOverlayType: BYTE, + pub byOverlayColorDepth: BYTE, + pub byOverlayDriveChan: BYTE, + pub byOverlayMilliSec: BYTE, + pub byOverlayIllegalInfo: BYTE, + pub byOverlayRedOnTime: BYTE, + pub byFarAddPlateJpeg: BYTE, + pub byNearAddPlateJpeg: BYTE, + pub byRes1: [BYTE; 3usize], + pub byMonitorInfo1: [BYTE; 32usize], + pub byMonitorInfo2: [BYTE; 44usize], + pub byRes2: [BYTE; 52usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IMAGEOVERLAYCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 152usize, + concat!("Size of: ", stringify!(tagNET_DVR_IMAGEOVERLAYCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IMAGEOVERLAYCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGEOVERLAYCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverlayInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGEOVERLAYCFG), + "::", + stringify!(byOverlayInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverlayMonitorInfo) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGEOVERLAYCFG), + "::", + stringify!(byOverlayMonitorInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverlayTime) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGEOVERLAYCFG), + "::", + stringify!(byOverlayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverlaySpeed) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGEOVERLAYCFG), + "::", + stringify!(byOverlaySpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverlaySpeeding) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGEOVERLAYCFG), + "::", + stringify!(byOverlaySpeeding) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverlayLimitFlag) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGEOVERLAYCFG), + "::", + stringify!(byOverlayLimitFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverlayPlate) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGEOVERLAYCFG), + "::", + stringify!(byOverlayPlate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverlayColor) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGEOVERLAYCFG), + "::", + stringify!(byOverlayColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverlayLength) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGEOVERLAYCFG), + "::", + stringify!(byOverlayLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverlayType) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGEOVERLAYCFG), + "::", + stringify!(byOverlayType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverlayColorDepth) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGEOVERLAYCFG), + "::", + stringify!(byOverlayColorDepth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverlayDriveChan) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGEOVERLAYCFG), + "::", + stringify!(byOverlayDriveChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverlayMilliSec) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGEOVERLAYCFG), + "::", + stringify!(byOverlayMilliSec) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverlayIllegalInfo) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGEOVERLAYCFG), + "::", + stringify!(byOverlayIllegalInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverlayRedOnTime) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGEOVERLAYCFG), + "::", + stringify!(byOverlayRedOnTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFarAddPlateJpeg) as usize - ptr as usize }, + 19usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGEOVERLAYCFG), + "::", + stringify!(byFarAddPlateJpeg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNearAddPlateJpeg) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGEOVERLAYCFG), + "::", + stringify!(byNearAddPlateJpeg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGEOVERLAYCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonitorInfo1) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGEOVERLAYCFG), + "::", + stringify!(byMonitorInfo1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonitorInfo2) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGEOVERLAYCFG), + "::", + stringify!(byMonitorInfo2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGEOVERLAYCFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_IMAGEOVERLAYCFG = tagNET_DVR_IMAGEOVERLAYCFG; +pub type LPNET_DVR_IMAGEOVERLAYCFG = *mut tagNET_DVR_IMAGEOVERLAYCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SNAPCFG { + pub dwSize: DWORD, + pub byRelatedDriveWay: BYTE, + pub bySnapTimes: BYTE, + pub wSnapWaitTime: WORD, + pub wIntervalTime: [WORD; 4usize], + pub dwSnapVehicleNum: DWORD, + pub struJpegPara: NET_DVR_JPEGPARA, + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SNAPCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_SNAPCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SNAPCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedDriveWay) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPCFG), + "::", + stringify!(byRelatedDriveWay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnapTimes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPCFG), + "::", + stringify!(bySnapTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSnapWaitTime) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPCFG), + "::", + stringify!(wSnapWaitTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wIntervalTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPCFG), + "::", + stringify!(wIntervalTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSnapVehicleNum) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPCFG), + "::", + stringify!(dwSnapVehicleNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struJpegPara) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPCFG), + "::", + stringify!(struJpegPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPCFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SNAPCFG = tagNET_DVR_SNAPCFG; +pub type LPNET_DVR_SNAPCFG = *mut tagNET_DVR_SNAPCFG; +pub const _ITC_MAINMODE_ABILITY__ITC_MODE_UNKNOW: _ITC_MAINMODE_ABILITY_ = 0; +pub const _ITC_MAINMODE_ABILITY__ITC_POST_MODE: _ITC_MAINMODE_ABILITY_ = 1; +pub const _ITC_MAINMODE_ABILITY__ITC_EPOLICE_MODE: _ITC_MAINMODE_ABILITY_ = 2; +pub const _ITC_MAINMODE_ABILITY__ITC_POSTEPOLICE_MODE: _ITC_MAINMODE_ABILITY_ = 4; +pub type _ITC_MAINMODE_ABILITY_ = ::std::os::raw::c_uint; +pub use self::_ITC_MAINMODE_ABILITY_ as ITC_MAINMODE_ABILITY; +pub const _ITC_RECOG_REGION_TYPE__ITC_REGION_RECT: _ITC_RECOG_REGION_TYPE_ = 0; +pub const _ITC_RECOG_REGION_TYPE__ITC_REGION_POLYGON: _ITC_RECOG_REGION_TYPE_ = 1; +pub type _ITC_RECOG_REGION_TYPE_ = ::std::os::raw::c_uint; +pub use self::_ITC_RECOG_REGION_TYPE_ as ITC_RECOG_REGION_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SNAP_ABILITY { + pub dwSize: DWORD, + pub byIoInNum: BYTE, + pub byIoOutNum: BYTE, + pub bySingleSnapNum: BYTE, + pub byLightModeArrayNum: BYTE, + pub byMeasureModeArrayNum: BYTE, + pub byPlateEnable: BYTE, + pub byLensMode: BYTE, + pub byPreTriggerSupport: BYTE, + pub dwAbilityType: DWORD, + pub byIoSpeedGroup: BYTE, + pub byIoLightGroup: BYTE, + pub byRecogRegionType: BYTE, + pub bySupport: BYTE, + pub wSupportMultiRadar: WORD, + pub byICRPresetNum: BYTE, + pub byICRTimeSlot: BYTE, + pub bySupportRS485Num: BYTE, + pub byExpandRs485SupportSensor: BYTE, + pub byExpandRs485SupportSignalLampDet: BYTE, + pub byRelayNum: BYTE, + pub bySupport1: BYTE, + pub bySupport2: BYTE, + pub bySupportWhiteBalance: BYTE, + pub byRes: [BYTE; 9usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SNAP_ABILITY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_SNAP_ABILITY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SNAP_ABILITY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_ABILITY), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIoInNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_ABILITY), + "::", + stringify!(byIoInNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIoOutNum) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_ABILITY), + "::", + stringify!(byIoOutNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySingleSnapNum) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_ABILITY), + "::", + stringify!(bySingleSnapNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLightModeArrayNum) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_ABILITY), + "::", + stringify!(byLightModeArrayNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMeasureModeArrayNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_ABILITY), + "::", + stringify!(byMeasureModeArrayNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateEnable) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_ABILITY), + "::", + stringify!(byPlateEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLensMode) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_ABILITY), + "::", + stringify!(byLensMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPreTriggerSupport) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_ABILITY), + "::", + stringify!(byPreTriggerSupport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbilityType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_ABILITY), + "::", + stringify!(dwAbilityType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIoSpeedGroup) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_ABILITY), + "::", + stringify!(byIoSpeedGroup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIoLightGroup) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_ABILITY), + "::", + stringify!(byIoLightGroup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecogRegionType) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_ABILITY), + "::", + stringify!(byRecogRegionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupport) as usize - ptr as usize }, + 19usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_ABILITY), + "::", + stringify!(bySupport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSupportMultiRadar) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_ABILITY), + "::", + stringify!(wSupportMultiRadar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byICRPresetNum) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_ABILITY), + "::", + stringify!(byICRPresetNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byICRTimeSlot) as usize - ptr as usize }, + 23usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_ABILITY), + "::", + stringify!(byICRTimeSlot) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportRS485Num) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_ABILITY), + "::", + stringify!(bySupportRS485Num) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExpandRs485SupportSensor) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_ABILITY), + "::", + stringify!(byExpandRs485SupportSensor) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byExpandRs485SupportSignalLampDet) as usize - ptr as usize + }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_ABILITY), + "::", + stringify!(byExpandRs485SupportSignalLampDet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelayNum) as usize - ptr as usize }, + 27usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_ABILITY), + "::", + stringify!(byRelayNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupport1) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_ABILITY), + "::", + stringify!(bySupport1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupport2) as usize - ptr as usize }, + 29usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_ABILITY), + "::", + stringify!(bySupport2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportWhiteBalance) as usize - ptr as usize }, + 30usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_ABILITY), + "::", + stringify!(bySupportWhiteBalance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 31usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAP_ABILITY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SNAP_ABILITY = tagNET_DVR_SNAP_ABILITY; +pub type LPNET_DVR_SNAP_ABILITY = *mut tagNET_DVR_SNAP_ABILITY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRANSFER_CAP { + pub byAbility: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRANSFER_CAP() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(tagNET_DVR_TRANSFER_CAP)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TRANSFER_CAP)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAbility) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSFER_CAP), + "::", + stringify!(byAbility) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSFER_CAP), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TRANSFER_CAP = tagNET_DVR_TRANSFER_CAP; +pub type LPNET_DVR_TRANSFER_CAP = *mut tagNET_DVR_TRANSFER_CAP; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_ICRTIMECFG { + pub struTime: NET_DVR_SCHEDTIME, + pub byAssociateRresetNo: BYTE, + pub bySubSwitchMode: BYTE, + pub byRes: [BYTE; 10usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_ICRTIMECFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_ITC_ICRTIMECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_ITC_ICRTIMECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ICRTIMECFG), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAssociateRresetNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ICRTIMECFG), + "::", + stringify!(byAssociateRresetNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSwitchMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ICRTIMECFG), + "::", + stringify!(bySubSwitchMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ICRTIMECFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_ICRTIMECFG = tagNET_ITC_ICRTIMECFG; +pub type LPNET_ITC_ICRTIMECFG = *mut tagNET_ITC_ICRTIMECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_ICR_TIMESWITCH_PARAM { + pub struAutoCtrlTime: [NET_ITC_ICRTIMECFG; 8usize], + pub byICRPreset: [BYTE; 8usize], + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_ICR_TIMESWITCH_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 156usize, + concat!("Size of: ", stringify!(tagNET_ITC_ICR_TIMESWITCH_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_ITC_ICR_TIMESWITCH_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAutoCtrlTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ICR_TIMESWITCH_PARAM), + "::", + stringify!(struAutoCtrlTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byICRPreset) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ICR_TIMESWITCH_PARAM), + "::", + stringify!(byICRPreset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ICR_TIMESWITCH_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_ICR_TIMESWITCH_PARAM = tagNET_ITC_ICR_TIMESWITCH_PARAM; +pub type LPNET_ITC_ICR_TIMESWITCH_PARAM = *mut tagNET_ITC_ICR_TIMESWITCH_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_ICR_MANUALSWITCH_PARAM { + pub byICRPreset: [BYTE; 8usize], + pub bySubSwitchMode: BYTE, + pub byRes: [BYTE; 147usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_ICR_MANUALSWITCH_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 156usize, + concat!("Size of: ", stringify!(tagNET_ITC_ICR_MANUALSWITCH_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_ICR_MANUALSWITCH_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byICRPreset) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ICR_MANUALSWITCH_PARAM), + "::", + stringify!(byICRPreset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSwitchMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ICR_MANUALSWITCH_PARAM), + "::", + stringify!(bySubSwitchMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ICR_MANUALSWITCH_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_ICR_MANUALSWITCH_PARAM = tagNET_ITC_ICR_MANUALSWITCH_PARAM; +pub type LPNET_ITC_ICR_MANUALSWITCH_PARAM = *mut tagNET_ITC_ICR_MANUALSWITCH_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_ICR_AOTOSWITCH_PARAM { + pub byICRPreset: [BYTE; 8usize], + pub byICRAutoSwitch: BYTE, + pub byRes: [BYTE; 147usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_ICR_AOTOSWITCH_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 156usize, + concat!("Size of: ", stringify!(tagNET_ITC_ICR_AOTOSWITCH_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_ITC_ICR_AOTOSWITCH_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byICRPreset) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ICR_AOTOSWITCH_PARAM), + "::", + stringify!(byICRPreset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byICRAutoSwitch) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ICR_AOTOSWITCH_PARAM), + "::", + stringify!(byICRAutoSwitch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ICR_AOTOSWITCH_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_ICR_AOTOSWITCH_PARAM = tagNET_ITC_ICR_AOTOSWITCH_PARAM; +pub type LPNET_ITC_ICR_AOTOSWITCH_PARAM = *mut tagNET_ITC_ICR_AOTOSWITCH_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_ICR_ALGAOTOSWITCH_PARAM { + pub byDetectThreshold: BYTE, + pub byAbBrightnessThreshold: BYTE, + pub byRes: [BYTE; 154usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_ICR_ALGAOTOSWITCH_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 156usize, + concat!("Size of: ", stringify!(tagNET_ITC_ICR_ALGAOTOSWITCH_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_ICR_ALGAOTOSWITCH_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectThreshold) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ICR_ALGAOTOSWITCH_PARAM), + "::", + stringify!(byDetectThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAbBrightnessThreshold) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ICR_ALGAOTOSWITCH_PARAM), + "::", + stringify!(byAbBrightnessThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ICR_ALGAOTOSWITCH_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_ICR_ALGAOTOSWITCH_PARAM = tagNET_ITC_ICR_ALGAOTOSWITCH_PARAM; +pub type LPNET_ITC_ICR_ALGAOTOSWITCH_PARAM = *mut tagNET_ITC_ICR_ALGAOTOSWITCH_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_ITC_ICR_PARAM_UNION { + pub uLen: [BYTE; 156usize], + pub struICRAutoSwitch: NET_ITC_ICR_AOTOSWITCH_PARAM, + pub struICRManualSwitch: NET_ITC_ICR_MANUALSWITCH_PARAM, + pub struICRTimeSwitch: NET_ITC_ICR_TIMESWITCH_PARAM, + pub strICRAlgorithmAutoSwitch: NET_ITC_ICR_ALGAOTOSWITCH_PARAM, +} +#[test] +fn bindgen_test_layout_tagNET_ITC_ICR_PARAM_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 156usize, + concat!("Size of: ", stringify!(tagNET_ITC_ICR_PARAM_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_ITC_ICR_PARAM_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ICR_PARAM_UNION), + "::", + stringify!(uLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struICRAutoSwitch) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ICR_PARAM_UNION), + "::", + stringify!(struICRAutoSwitch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struICRManualSwitch) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ICR_PARAM_UNION), + "::", + stringify!(struICRManualSwitch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struICRTimeSwitch) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ICR_PARAM_UNION), + "::", + stringify!(struICRTimeSwitch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strICRAlgorithmAutoSwitch) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ICR_PARAM_UNION), + "::", + stringify!(strICRAlgorithmAutoSwitch) + ) + ); +} +pub type NET_ITC_ICR_PARAM_UNION = tagNET_ITC_ICR_PARAM_UNION; +pub type LPNET_ITC_ICR_PARAM_UNION = *mut tagNET_ITC_ICR_PARAM_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_ICRCFG { + pub dwSize: DWORD, + pub bySwitchType: BYTE, + pub byRes: [BYTE; 3usize], + pub uICRParam: NET_ITC_ICR_PARAM_UNION, +} +#[test] +fn bindgen_test_layout_tagNET_ITC_ICRCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 164usize, + concat!("Size of: ", stringify!(tagNET_ITC_ICRCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_ICRCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ICRCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySwitchType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ICRCFG), + "::", + stringify!(bySwitchType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ICRCFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uICRParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ICRCFG), + "::", + stringify!(uICRParam) + ) + ); +} +pub type NET_ITC_ICRCFG = tagNET_ITC_ICRCFG; +pub type LPNET_ITC_ICRCFG = *mut tagNET_ITC_ICRCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_ITC_HANDLEEXCEPTION { + pub dwHandleType: DWORD, + pub byEnable: BYTE, + pub byRes: BYTE, + pub wDuration: WORD, + pub byAlarmOutTriggered: [BYTE; 32usize], + pub byRes1: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_NET_ITC_HANDLEEXCEPTION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(NET_ITC_HANDLEEXCEPTION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_ITC_HANDLEEXCEPTION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHandleType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_ITC_HANDLEEXCEPTION), + "::", + stringify!(dwHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_ITC_HANDLEEXCEPTION), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_ITC_HANDLEEXCEPTION), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDuration) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_ITC_HANDLEEXCEPTION), + "::", + stringify!(wDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutTriggered) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_ITC_HANDLEEXCEPTION), + "::", + stringify!(byAlarmOutTriggered) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(NET_ITC_HANDLEEXCEPTION), + "::", + stringify!(byRes1) + ) + ); +} +pub type LPNET_ITC_HANDLEEXCEPTION = *mut NET_ITC_HANDLEEXCEPTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_ITC_EXCEPTION { + pub dwSize: DWORD, + pub struSnapExceptionType: [NET_ITC_HANDLEEXCEPTION; 32usize], +} +#[test] +fn bindgen_test_layout_NET_ITC_EXCEPTION() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1540usize, + concat!("Size of: ", stringify!(NET_ITC_EXCEPTION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_ITC_EXCEPTION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_ITC_EXCEPTION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSnapExceptionType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_ITC_EXCEPTION), + "::", + stringify!(struSnapExceptionType) + ) + ); +} +pub type LPNET_ITC_EXCEPTION = *mut NET_ITC_EXCEPTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRIGCOORDINATE { + pub wTopLeftX: WORD, + pub wTopLeftY: WORD, + pub wWdith: WORD, + pub wHeight: WORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRIGCOORDINATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_TRIGCOORDINATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TRIGCOORDINATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTopLeftX) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRIGCOORDINATE), + "::", + stringify!(wTopLeftX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTopLeftY) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRIGCOORDINATE), + "::", + stringify!(wTopLeftY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wWdith) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRIGCOORDINATE), + "::", + stringify!(wWdith) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHeight) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRIGCOORDINATE), + "::", + stringify!(wHeight) + ) + ); +} +pub type NET_DVR_TRIGCOORDINATE = tagNET_DVR_TRIGCOORDINATE; +pub type LPNET_DVR_TRIGCOORDINATE = *mut tagNET_DVR_TRIGCOORDINATE; +pub const _PROVINCE_CITY_IDX__ANHUI_PROVINCE: _PROVINCE_CITY_IDX_ = 0; +pub const _PROVINCE_CITY_IDX__AOMEN_PROVINCE: _PROVINCE_CITY_IDX_ = 1; +pub const _PROVINCE_CITY_IDX__BEIJING_PROVINCE: _PROVINCE_CITY_IDX_ = 2; +pub const _PROVINCE_CITY_IDX__CHONGQING_PROVINCE: _PROVINCE_CITY_IDX_ = 3; +pub const _PROVINCE_CITY_IDX__FUJIAN_PROVINCE: _PROVINCE_CITY_IDX_ = 4; +pub const _PROVINCE_CITY_IDX__GANSU_PROVINCE: _PROVINCE_CITY_IDX_ = 5; +pub const _PROVINCE_CITY_IDX__GUANGDONG_PROVINCE: _PROVINCE_CITY_IDX_ = 6; +pub const _PROVINCE_CITY_IDX__GUANGXI_PROVINCE: _PROVINCE_CITY_IDX_ = 7; +pub const _PROVINCE_CITY_IDX__GUIZHOU_PROVINCE: _PROVINCE_CITY_IDX_ = 8; +pub const _PROVINCE_CITY_IDX__HAINAN_PROVINCE: _PROVINCE_CITY_IDX_ = 9; +pub const _PROVINCE_CITY_IDX__HEBEI_PROVINCE: _PROVINCE_CITY_IDX_ = 10; +pub const _PROVINCE_CITY_IDX__HENAN_PROVINCE: _PROVINCE_CITY_IDX_ = 11; +pub const _PROVINCE_CITY_IDX__HEILONGJIANG_PROVINCE: _PROVINCE_CITY_IDX_ = 12; +pub const _PROVINCE_CITY_IDX__HUBEI_PROVINCE: _PROVINCE_CITY_IDX_ = 13; +pub const _PROVINCE_CITY_IDX__HUNAN_PROVINCE: _PROVINCE_CITY_IDX_ = 14; +pub const _PROVINCE_CITY_IDX__JILIN_PROVINCE: _PROVINCE_CITY_IDX_ = 15; +pub const _PROVINCE_CITY_IDX__JIANGSU_PROVINCE: _PROVINCE_CITY_IDX_ = 16; +pub const _PROVINCE_CITY_IDX__JIANGXI_PROVINCE: _PROVINCE_CITY_IDX_ = 17; +pub const _PROVINCE_CITY_IDX__LIAONING_PROVINCE: _PROVINCE_CITY_IDX_ = 18; +pub const _PROVINCE_CITY_IDX__NEIMENGGU_PROVINCE: _PROVINCE_CITY_IDX_ = 19; +pub const _PROVINCE_CITY_IDX__NINGXIA_PROVINCE: _PROVINCE_CITY_IDX_ = 20; +pub const _PROVINCE_CITY_IDX__QINGHAI_PROVINCE: _PROVINCE_CITY_IDX_ = 21; +pub const _PROVINCE_CITY_IDX__SHANDONG_PROVINCE: _PROVINCE_CITY_IDX_ = 22; +pub const _PROVINCE_CITY_IDX__SHANXI_JIN_PROVINCE: _PROVINCE_CITY_IDX_ = 23; +pub const _PROVINCE_CITY_IDX__SHANXI_SHAN_PROVINCE: _PROVINCE_CITY_IDX_ = 24; +pub const _PROVINCE_CITY_IDX__SHANGHAI_PROVINCE: _PROVINCE_CITY_IDX_ = 25; +pub const _PROVINCE_CITY_IDX__SICHUAN_PROVINCE: _PROVINCE_CITY_IDX_ = 26; +pub const _PROVINCE_CITY_IDX__TAIWAN_PROVINCE: _PROVINCE_CITY_IDX_ = 27; +pub const _PROVINCE_CITY_IDX__TIANJIN_PROVINCE: _PROVINCE_CITY_IDX_ = 28; +pub const _PROVINCE_CITY_IDX__XIZANG_PROVINCE: _PROVINCE_CITY_IDX_ = 29; +pub const _PROVINCE_CITY_IDX__XIANGGANG_PROVINCE: _PROVINCE_CITY_IDX_ = 30; +pub const _PROVINCE_CITY_IDX__XINJIANG_PROVINCE: _PROVINCE_CITY_IDX_ = 31; +pub const _PROVINCE_CITY_IDX__YUNNAN_PROVINCE: _PROVINCE_CITY_IDX_ = 32; +pub const _PROVINCE_CITY_IDX__ZHEJIANG_PROVINCE: _PROVINCE_CITY_IDX_ = 33; +pub type _PROVINCE_CITY_IDX_ = ::std::os::raw::c_uint; +pub use self::_PROVINCE_CITY_IDX_ as PROVINCE_CITY_IDX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GEOGLOCATION { + pub iRes: [::std::os::raw::c_int; 2usize], + pub dwCity: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GEOGLOCATION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_GEOGLOCATION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GEOGLOCATION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GEOGLOCATION), + "::", + stringify!(iRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCity) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GEOGLOCATION), + "::", + stringify!(dwCity) + ) + ); +} +pub type NET_DVR_GEOGLOCATION = tagNET_DVR_GEOGLOCATION; +pub type LPNET_DVR_GEOGLOCATION = *mut tagNET_DVR_GEOGLOCATION; +pub const _SCENE_MODE__UNKOWN_SCENE_MODE: _SCENE_MODE_ = 0; +pub const _SCENE_MODE__HIGHWAY_SCENE_MODE: _SCENE_MODE_ = 1; +pub const _SCENE_MODE__SUBURBAN_SCENE_MODE: _SCENE_MODE_ = 2; +pub const _SCENE_MODE__URBAN_SCENE_MODE: _SCENE_MODE_ = 3; +pub const _SCENE_MODE__TUNNEL_SCENE_MODE: _SCENE_MODE_ = 4; +pub type _SCENE_MODE_ = ::std::os::raw::c_uint; +pub use self::_SCENE_MODE_ as SCENE_MODE; +pub const _PRIDATA_RENDER_RENDER_ANA_INTEL_DATA: _PRIDATA_RENDER = 1; +pub const _PRIDATA_RENDER_RENDER_MD: _PRIDATA_RENDER = 2; +pub const _PRIDATA_RENDER_RENDER_ADD_POS: _PRIDATA_RENDER = 4; +pub const _PRIDATA_RENDER_RENDER_ADD_PIC: _PRIDATA_RENDER = 8; +pub const _PRIDATA_RENDER_RENDER_FIRE_DETCET: _PRIDATA_RENDER = 16; +pub const _PRIDATA_RENDER_RENDER_TEM: _PRIDATA_RENDER = 32; +pub const _PRIDATA_RENDER_RENDER_TRACK_TEM: _PRIDATA_RENDER = 64; +pub const _PRIDATA_RENDER_RENDER_THERMAL: _PRIDATA_RENDER = 128; +pub type _PRIDATA_RENDER = ::std::os::raw::c_uint; +pub use self::_PRIDATA_RENDER as PRIDATA_RENDER; +pub const _THERMAL_FLAG_THERMAL_FIREMASK: _THERMAL_FLAG = 1; +pub const _THERMAL_FLAG_THERMAL_RULEGAS: _THERMAL_FLAG = 2; +pub const _THERMAL_FLAG_THERMAL_TARGETGAS: _THERMAL_FLAG = 4; +pub type _THERMAL_FLAG = ::std::os::raw::c_uint; +pub use self::_THERMAL_FLAG as THERMAL_FLAG; +pub const _FIRE_ALARM_FIRE_FRAME_DIS: _FIRE_ALARM = 1; +pub const _FIRE_ALARM_FIRE_MAX_TEMP: _FIRE_ALARM = 2; +pub const _FIRE_ALARM_FIRE_MAX_TEMP_POSITION: _FIRE_ALARM = 4; +pub const _FIRE_ALARM_FIRE_DISTANCE: _FIRE_ALARM = 8; +pub type _FIRE_ALARM = ::std::os::raw::c_uint; +pub use self::_FIRE_ALARM as FIRE_ALARM; +pub const _TEM_FLAG_TEM_REGION_BOX: _TEM_FLAG = 1; +pub const _TEM_FLAG_TEM_REGION_LINE: _TEM_FLAG = 2; +pub const _TEM_FLAG_TEM_REGION_POINT: _TEM_FLAG = 4; +pub type _TEM_FLAG = ::std::os::raw::c_uint; +pub use self::_TEM_FLAG as TEM_FLAG; +pub const _TRACK_FLAG_TRACK_PEOPLE: _TRACK_FLAG = 1; +pub const _TRACK_FLAG_TRACK_VEHICLE: _TRACK_FLAG = 2; +pub type _TRACK_FLAG = ::std::os::raw::c_uint; +pub use self::_TRACK_FLAG as TRACK_FLAG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VTPARAM { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byIsDisplay: BYTE, + pub byLoopPos: BYTE, + pub bySnapGain: BYTE, + pub dwSnapShutter: DWORD, + pub struTrigCoordinate: NET_DVR_TRIGCOORDINATE, + pub struRes: [NET_DVR_TRIGCOORDINATE; 5usize], + pub byTotalLaneNum: BYTE, + pub byPolarLenType: BYTE, + pub byDayAuxLightMode: BYTE, + pub byLoopToCalRoadBright: BYTE, + pub byRoadGrayLowTh: BYTE, + pub byRoadGrayHighTh: BYTE, + pub wLoopPosBias: WORD, + pub dwHfrShtterInitValue: DWORD, + pub dwSnapShtterInitValue: DWORD, + pub dwHfrShtterMaxValue: DWORD, + pub dwSnapShtterMaxValue: DWORD, + pub dwHfrShtterNightValue: DWORD, + pub dwSnapShtterNightMinValue: DWORD, + pub dwSnapShtterNightMaxValue: DWORD, + pub dwInitAfe: DWORD, + pub dwMaxAfe: DWORD, + pub wResolutionX: WORD, + pub wResolutionY: WORD, + pub dwGainNightValue: DWORD, + pub dwSceneMode: DWORD, + pub dwRecordMode: DWORD, + pub struGeogLocation: NET_DVR_GEOGLOCATION, + pub byTrigFlag: [BYTE; 5usize], + pub byTrigSensitive: [BYTE; 5usize], + pub byRes2: [BYTE; 62usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VTPARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 204usize, + concat!("Size of: ", stringify!(tagNET_DVR_VTPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VTPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsDisplay) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(byIsDisplay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLoopPos) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(byLoopPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnapGain) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(bySnapGain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSnapShutter) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(dwSnapShutter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTrigCoordinate) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(struTrigCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRes) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(struRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTotalLaneNum) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(byTotalLaneNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPolarLenType) as usize - ptr as usize }, + 61usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(byPolarLenType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDayAuxLightMode) as usize - ptr as usize }, + 62usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(byDayAuxLightMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLoopToCalRoadBright) as usize - ptr as usize }, + 63usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(byLoopToCalRoadBright) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRoadGrayLowTh) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(byRoadGrayLowTh) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRoadGrayHighTh) as usize - ptr as usize }, + 65usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(byRoadGrayHighTh) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLoopPosBias) as usize - ptr as usize }, + 66usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(wLoopPosBias) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHfrShtterInitValue) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(dwHfrShtterInitValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSnapShtterInitValue) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(dwSnapShtterInitValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHfrShtterMaxValue) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(dwHfrShtterMaxValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSnapShtterMaxValue) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(dwSnapShtterMaxValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHfrShtterNightValue) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(dwHfrShtterNightValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSnapShtterNightMinValue) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(dwSnapShtterNightMinValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSnapShtterNightMaxValue) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(dwSnapShtterNightMaxValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInitAfe) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(dwInitAfe) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxAfe) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(dwMaxAfe) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wResolutionX) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(wResolutionX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wResolutionY) as usize - ptr as usize }, + 106usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(wResolutionY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGainNightValue) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(dwGainNightValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSceneMode) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(dwSceneMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordMode) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(dwRecordMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGeogLocation) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(struGeogLocation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrigFlag) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(byTrigFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrigSensitive) as usize - ptr as usize }, + 137usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(byTrigSensitive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 142usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VTPARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_VTPARAM = tagNET_DVR_VTPARAM; +pub type LPNET_DVR_VTPARAM = *mut tagNET_DVR_VTPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SNAPENABLECFG { + pub dwSize: DWORD, + pub byPlateEnable: BYTE, + pub byRes1: [BYTE; 2usize], + pub byFrameFlip: BYTE, + pub wFlipAngle: WORD, + pub wLightPhase: WORD, + pub byLightSyncPower: BYTE, + pub byFrequency: BYTE, + pub byUploadSDEnable: BYTE, + pub byPlateMode: BYTE, + pub byUploadInfoFTP: BYTE, + pub byAutoFormatSD: BYTE, + pub wJpegPicSize: WORD, + pub bySnapPicResolution: BYTE, + pub byRes: [BYTE; 55usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SNAPENABLECFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_SNAPENABLECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SNAPENABLECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPENABLECFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPENABLECFG), + "::", + stringify!(byPlateEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPENABLECFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFrameFlip) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPENABLECFG), + "::", + stringify!(byFrameFlip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFlipAngle) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPENABLECFG), + "::", + stringify!(wFlipAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLightPhase) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPENABLECFG), + "::", + stringify!(wLightPhase) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLightSyncPower) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPENABLECFG), + "::", + stringify!(byLightSyncPower) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFrequency) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPENABLECFG), + "::", + stringify!(byFrequency) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUploadSDEnable) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPENABLECFG), + "::", + stringify!(byUploadSDEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateMode) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPENABLECFG), + "::", + stringify!(byPlateMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUploadInfoFTP) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPENABLECFG), + "::", + stringify!(byUploadInfoFTP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAutoFormatSD) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPENABLECFG), + "::", + stringify!(byAutoFormatSD) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wJpegPicSize) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPENABLECFG), + "::", + stringify!(wJpegPicSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnapPicResolution) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPENABLECFG), + "::", + stringify!(bySnapPicResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPENABLECFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SNAPENABLECFG = tagNET_DVR_SNAPENABLECFG; +pub type LPNET_DVR_SNAPENABLECFG = *mut tagNET_DVR_SNAPENABLECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_FTPCFG { + pub dwSize: DWORD, + pub dwEnableFTP: DWORD, + pub sFTPIP: [::std::os::raw::c_char; 16usize], + pub dwFTPPort: DWORD, + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub dwDirLevel: DWORD, + pub wTopDirMode: WORD, + pub wSubDirMode: WORD, + pub byEnableAnony: BYTE, + pub byPicArchivingInterval: BYTE, + pub byRes: [BYTE; 22usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_FTPCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 108usize, + concat!("Size of: ", stringify!(NET_DVR_FTPCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_FTPCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTPCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnableFTP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTPCFG), + "::", + stringify!(dwEnableFTP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFTPIP) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTPCFG), + "::", + stringify!(sFTPIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFTPPort) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTPCFG), + "::", + stringify!(dwFTPPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTPCFG), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTPCFG), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDirLevel) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTPCFG), + "::", + stringify!(dwDirLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTopDirMode) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTPCFG), + "::", + stringify!(wTopDirMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSubDirMode) as usize - ptr as usize }, + 82usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTPCFG), + "::", + stringify!(wSubDirMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableAnony) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTPCFG), + "::", + stringify!(byEnableAnony) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicArchivingInterval) as usize - ptr as usize }, + 85usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTPCFG), + "::", + stringify!(byPicArchivingInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTPCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_FTPCFG = *mut NET_DVR_FTPCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PICTURE_NAME { + pub byItemOrder: [BYTE; 15usize], + pub byDelimiter: BYTE, +} +#[test] +fn bindgen_test_layout_NET_DVR_PICTURE_NAME() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(NET_DVR_PICTURE_NAME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_PICTURE_NAME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byItemOrder) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICTURE_NAME), + "::", + stringify!(byItemOrder) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDelimiter) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICTURE_NAME), + "::", + stringify!(byDelimiter) + ) + ); +} +pub type LPNET_DVR_PICTURE_NAME = *mut NET_DVR_PICTURE_NAME; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PICTURE_NAME_EX { + pub byItemOrder: [BYTE; 15usize], + pub byDelimiter: BYTE, + pub byPicNamePrefix: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_PICTURE_NAME_EX() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(NET_DVR_PICTURE_NAME_EX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_PICTURE_NAME_EX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byItemOrder) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICTURE_NAME_EX), + "::", + stringify!(byItemOrder) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDelimiter) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICTURE_NAME_EX), + "::", + stringify!(byDelimiter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicNamePrefix) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICTURE_NAME_EX), + "::", + stringify!(byPicNamePrefix) + ) + ); +} +pub type LPNET_DVR_PICTURE_NAME_EX = *mut NET_DVR_PICTURE_NAME_EX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_SERIAL_CATCHPIC_PARA { + pub byStrFlag: BYTE, + pub byEndFlag: BYTE, + pub wCardIdx: WORD, + pub dwCardLen: DWORD, + pub dwTriggerPicChans: DWORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_SERIAL_CATCHPIC_PARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(NET_DVR_SERIAL_CATCHPIC_PARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_SERIAL_CATCHPIC_PARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStrFlag) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SERIAL_CATCHPIC_PARA), + "::", + stringify!(byStrFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEndFlag) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SERIAL_CATCHPIC_PARA), + "::", + stringify!(byEndFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCardIdx) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SERIAL_CATCHPIC_PARA), + "::", + stringify!(wCardIdx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardLen) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SERIAL_CATCHPIC_PARA), + "::", + stringify!(dwCardLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTriggerPicChans) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SERIAL_CATCHPIC_PARA), + "::", + stringify!(dwTriggerPicChans) + ) + ); +} +pub type LPNET_DVR_SERIAL_CATCHPIC_PARA = *mut NET_DVR_SERIAL_CATCHPIC_PARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_JPEGCFG_V30 { + pub dwSize: DWORD, + pub struJpegPara: [NET_DVR_JPEGPARA; 64usize], + pub wBurstMode: WORD, + pub wUploadInterval: WORD, + pub struPicNameRule: NET_DVR_PICTURE_NAME, + pub bySaveToHD: BYTE, + pub byRes1: BYTE, + pub wCatchInterval: WORD, + pub byRes2: [BYTE; 12usize], + pub struRs232Cfg: NET_DVR_SERIAL_CATCHPIC_PARA, + pub struRs485Cfg: NET_DVR_SERIAL_CATCHPIC_PARA, + pub dwTriggerPicTimes: [DWORD; 64usize], + pub dwAlarmInPicChanTriggered: [DWORD; 160usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_JPEGCFG_V30() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1216usize, + concat!("Size of: ", stringify!(NET_DVR_JPEGCFG_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_JPEGCFG_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_JPEGCFG_V30), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struJpegPara) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_JPEGCFG_V30), + "::", + stringify!(struJpegPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBurstMode) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_JPEGCFG_V30), + "::", + stringify!(wBurstMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wUploadInterval) as usize - ptr as usize }, + 262usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_JPEGCFG_V30), + "::", + stringify!(wUploadInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPicNameRule) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_JPEGCFG_V30), + "::", + stringify!(struPicNameRule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySaveToHD) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_JPEGCFG_V30), + "::", + stringify!(bySaveToHD) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 281usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_JPEGCFG_V30), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCatchInterval) as usize - ptr as usize }, + 282usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_JPEGCFG_V30), + "::", + stringify!(wCatchInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 284usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_JPEGCFG_V30), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRs232Cfg) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_JPEGCFG_V30), + "::", + stringify!(struRs232Cfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRs485Cfg) as usize - ptr as usize }, + 308usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_JPEGCFG_V30), + "::", + stringify!(struRs485Cfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTriggerPicTimes) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_JPEGCFG_V30), + "::", + stringify!(dwTriggerPicTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmInPicChanTriggered) as usize - ptr as usize }, + 576usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_JPEGCFG_V30), + "::", + stringify!(dwAlarmInPicChanTriggered) + ) + ); +} +pub type LPNET_DVR_JPEGCFG_V30 = *mut NET_DVR_JPEGCFG_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MANUALSNAP { + pub byOSDEnable: BYTE, + pub byLaneNo: BYTE, + pub byChannel: BYTE, + pub byRes: [BYTE; 21usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MANUALSNAP() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_DVR_MANUALSNAP)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MANUALSNAP)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOSDEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANUALSNAP), + "::", + stringify!(byOSDEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNo) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANUALSNAP), + "::", + stringify!(byLaneNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANUALSNAP), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANUALSNAP), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MANUALSNAP = tagNET_DVR_MANUALSNAP; +pub type LPNET_DVR_MANUALSNAP = *mut tagNET_DVR_MANUALSNAP; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SPRCFG { + pub dwSize: DWORD, + pub byDefaultCHN: [BYTE; 3usize], + pub byPlateOSD: BYTE, + pub bySendJPEG1: BYTE, + pub bySendJPEG2: BYTE, + pub wDesignedPlateWidth: WORD, + pub byTotalLaneNum: BYTE, + pub byRes1: BYTE, + pub wRecognizedLane: WORD, + pub struLaneRect: [NET_VCA_RECT; 5usize], + pub dwRecogMode: DWORD, + pub bySendPRRaw: BYTE, + pub bySendBinImage: BYTE, + pub byDelayCapture: BYTE, + pub byUseLED: BYTE, + pub byRes2: [BYTE; 68usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SPRCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 172usize, + concat!("Size of: ", stringify!(tagNET_DVR_SPRCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SPRCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPRCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDefaultCHN) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPRCFG), + "::", + stringify!(byDefaultCHN) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateOSD) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPRCFG), + "::", + stringify!(byPlateOSD) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySendJPEG1) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPRCFG), + "::", + stringify!(bySendJPEG1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySendJPEG2) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPRCFG), + "::", + stringify!(bySendJPEG2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDesignedPlateWidth) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPRCFG), + "::", + stringify!(wDesignedPlateWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTotalLaneNum) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPRCFG), + "::", + stringify!(byTotalLaneNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPRCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRecognizedLane) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPRCFG), + "::", + stringify!(wRecognizedLane) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneRect) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPRCFG), + "::", + stringify!(struLaneRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecogMode) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPRCFG), + "::", + stringify!(dwRecogMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySendPRRaw) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPRCFG), + "::", + stringify!(bySendPRRaw) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySendBinImage) as usize - ptr as usize }, + 101usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPRCFG), + "::", + stringify!(bySendBinImage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDelayCapture) as usize - ptr as usize }, + 102usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPRCFG), + "::", + stringify!(byDelayCapture) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseLED) as usize - ptr as usize }, + 103usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPRCFG), + "::", + stringify!(byUseLED) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPRCFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SPRCFG = tagNET_DVR_SPRCFG; +pub type LPNET_DVR_SPRCFG = *mut tagNET_DVR_SPRCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLCCFG { + pub dwSize: DWORD, + pub byPlcEnable: BYTE, + pub byPlateExpectedBright: BYTE, + pub byRes1: [BYTE; 2usize], + pub byTradeoffFlash: BYTE, + pub byCorrectFactor: BYTE, + pub wLoopStatsEn: WORD, + pub byPlcBrightOffset: BYTE, + pub byRes: [BYTE; 19usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLCCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLCCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PLCCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLCCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlcEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLCCFG), + "::", + stringify!(byPlcEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateExpectedBright) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLCCFG), + "::", + stringify!(byPlateExpectedBright) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLCCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTradeoffFlash) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLCCFG), + "::", + stringify!(byTradeoffFlash) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCorrectFactor) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLCCFG), + "::", + stringify!(byCorrectFactor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLoopStatsEn) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLCCFG), + "::", + stringify!(wLoopStatsEn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlcBrightOffset) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLCCFG), + "::", + stringify!(byPlcBrightOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLCCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PLCCFG = tagNET_DVR_PLCCFG; +pub type LPNET_DVR_PLCCFG = *mut tagNET_DVR_PLCCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEVICESTATECFG { + pub dwSize: DWORD, + pub wPreviewNum: WORD, + pub wFortifyLinkNum: WORD, + pub struPreviewIP: [NET_DVR_IPADDR; 6usize], + pub struFortifyIP: [NET_DVR_IPADDR; 10usize], + pub dwVideoFrameRate: DWORD, + pub byResolution: BYTE, + pub bySnapResolution: BYTE, + pub byStreamType: BYTE, + pub byTriggerType: BYTE, + pub dwSDVolume: DWORD, + pub dwSDFreeSpace: DWORD, + pub byDetectorState: [[BYTE; 3usize]; 16usize], + pub byDetectorLinkState: BYTE, + pub bySDStatus: BYTE, + pub byFortifyLevel: [BYTE; 10usize], + pub byRes2: [BYTE; 116usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEVICESTATECFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2504usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEVICESTATECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEVICESTATECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICESTATECFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPreviewNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICESTATECFG), + "::", + stringify!(wPreviewNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFortifyLinkNum) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICESTATECFG), + "::", + stringify!(wFortifyLinkNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPreviewIP) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICESTATECFG), + "::", + stringify!(struPreviewIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFortifyIP) as usize - ptr as usize }, + 872usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICESTATECFG), + "::", + stringify!(struFortifyIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoFrameRate) as usize - ptr as usize }, + 2312usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICESTATECFG), + "::", + stringify!(dwVideoFrameRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byResolution) as usize - ptr as usize }, + 2316usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICESTATECFG), + "::", + stringify!(byResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnapResolution) as usize - ptr as usize }, + 2317usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICESTATECFG), + "::", + stringify!(bySnapResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 2318usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICESTATECFG), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTriggerType) as usize - ptr as usize }, + 2319usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICESTATECFG), + "::", + stringify!(byTriggerType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSDVolume) as usize - ptr as usize }, + 2320usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICESTATECFG), + "::", + stringify!(dwSDVolume) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSDFreeSpace) as usize - ptr as usize }, + 2324usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICESTATECFG), + "::", + stringify!(dwSDFreeSpace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectorState) as usize - ptr as usize }, + 2328usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICESTATECFG), + "::", + stringify!(byDetectorState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectorLinkState) as usize - ptr as usize }, + 2376usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICESTATECFG), + "::", + stringify!(byDetectorLinkState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySDStatus) as usize - ptr as usize }, + 2377usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICESTATECFG), + "::", + stringify!(bySDStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFortifyLevel) as usize - ptr as usize }, + 2378usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICESTATECFG), + "::", + stringify!(byFortifyLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 2388usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICESTATECFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DEVICESTATECFG = tagNET_DVR_DEVICESTATECFG; +pub type LPNET_DVR_DEVICESTATECFG = *mut tagNET_DVR_DEVICESTATECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_POSTEPOLICECFG { + pub dwSize: DWORD, + pub dwDistance: DWORD, + pub dwLightChan: [DWORD; 6usize], + pub byCapSpeed: BYTE, + pub bySpeedLimit: BYTE, + pub byTrafficDirection: BYTE, + pub byRes1: BYTE, + pub wLoopPreDist: WORD, + pub wTrigDelay: WORD, + pub byRes: [BYTE; 124usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_POSTEPOLICECFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 164usize, + concat!("Size of: ", stringify!(tagNET_DVR_POSTEPOLICECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_POSTEPOLICECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTEPOLICECFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDistance) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTEPOLICECFG), + "::", + stringify!(dwDistance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLightChan) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTEPOLICECFG), + "::", + stringify!(dwLightChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCapSpeed) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTEPOLICECFG), + "::", + stringify!(byCapSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpeedLimit) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTEPOLICECFG), + "::", + stringify!(bySpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrafficDirection) as usize - ptr as usize }, + 34usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTEPOLICECFG), + "::", + stringify!(byTrafficDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 35usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTEPOLICECFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLoopPreDist) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTEPOLICECFG), + "::", + stringify!(wLoopPreDist) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTrigDelay) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTEPOLICECFG), + "::", + stringify!(wTrigDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTEPOLICECFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_POSTEPOLICECFG = tagNET_DVR_POSTEPOLICECFG; +pub type LPNET_DVR_POSTEPOLICECFG = *mut tagNET_DVR_POSTEPOLICECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SIGNALLAMP_DETCFG { + pub dwSize: DWORD, + pub byAbsTime: [BYTE; 32usize], + pub struAlarmCamIP: NET_DVR_IPADDR, + pub dwPic1Len: DWORD, + pub dwPic2Len: DWORD, + pub pPic1Buffer: *mut ::std::os::raw::c_char, + pub pPic2Buffer: *mut ::std::os::raw::c_char, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SIGNALLAMP_DETCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 336usize, + concat!("Size of: ", stringify!(tagNET_DVR_SIGNALLAMP_DETCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SIGNALLAMP_DETCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNALLAMP_DETCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAbsTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNALLAMP_DETCFG), + "::", + stringify!(byAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmCamIP) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNALLAMP_DETCFG), + "::", + stringify!(struAlarmCamIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPic1Len) as usize - ptr as usize }, + 180usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNALLAMP_DETCFG), + "::", + stringify!(dwPic1Len) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPic2Len) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNALLAMP_DETCFG), + "::", + stringify!(dwPic2Len) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPic1Buffer) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNALLAMP_DETCFG), + "::", + stringify!(pPic1Buffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPic2Buffer) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNALLAMP_DETCFG), + "::", + stringify!(pPic2Buffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNALLAMP_DETCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SIGNALLAMP_DETCFG = tagNET_DVR_SIGNALLAMP_DETCFG; +pub type LPNET_DVR_SIGNALLAMP_DETCFG = *mut tagNET_DVR_SIGNALLAMP_DETCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EXDEVDET_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byExternalDevType: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXDEVDET_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_EXDEVDET_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EXDEVDET_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXDEVDET_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXDEVDET_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExternalDevType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXDEVDET_COND), + "::", + stringify!(byExternalDevType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXDEVDET_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EXDEVDET_COND = tagNET_DVR_EXDEVDET_COND; +pub type LPNET_DVR_EXDEVDET_COND = *mut tagNET_DVR_EXDEVDET_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EXDEVDET_CFG { + pub dwSize: DWORD, + pub byExternalDevStatus: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXDEVDET_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_EXDEVDET_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EXDEVDET_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXDEVDET_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExternalDevStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXDEVDET_CFG), + "::", + stringify!(byExternalDevStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXDEVDET_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EXDEVDET_CFG = tagNET_DVR_EXDEVDET_CFG; +pub type LPNET_DVR_EXDEVDET_CFG = *mut tagNET_DVR_EXDEVDET_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PROTO_TYPE { + pub dwType: DWORD, + pub byDescribe: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PROTO_TYPE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_PROTO_TYPE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PROTO_TYPE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PROTO_TYPE), + "::", + stringify!(dwType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDescribe) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PROTO_TYPE), + "::", + stringify!(byDescribe) + ) + ); +} +pub type NET_DVR_PROTO_TYPE = tagNET_DVR_PROTO_TYPE; +pub type LPNET_DVR_PROTO_TYPE = *mut tagNET_DVR_PROTO_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IPC_PROTO_LIST { + pub dwSize: DWORD, + pub dwProtoNum: DWORD, + pub struProto: [NET_DVR_PROTO_TYPE; 50usize], + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPC_PROTO_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1016usize, + concat!("Size of: ", stringify!(tagNET_DVR_IPC_PROTO_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IPC_PROTO_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPC_PROTO_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwProtoNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPC_PROTO_LIST), + "::", + stringify!(dwProtoNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struProto) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPC_PROTO_LIST), + "::", + stringify!(struProto) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1008usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPC_PROTO_LIST), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_IPC_PROTO_LIST = tagNET_DVR_IPC_PROTO_LIST; +pub type LPNET_DVR_IPC_PROTO_LIST = *mut tagNET_DVR_IPC_PROTO_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IPC_PROTO_LIST_V41 { + pub dwSize: DWORD, + pub dwProtoNum: DWORD, + pub pBuffer: *mut BYTE, + pub dwBufferLen: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPC_PROTO_LIST_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_IPC_PROTO_LIST_V41)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IPC_PROTO_LIST_V41)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPC_PROTO_LIST_V41), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwProtoNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPC_PROTO_LIST_V41), + "::", + stringify!(dwProtoNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPC_PROTO_LIST_V41), + "::", + stringify!(pBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBufferLen) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPC_PROTO_LIST_V41), + "::", + stringify!(dwBufferLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPC_PROTO_LIST_V41), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_IPC_PROTO_LIST_V41 = tagNET_DVR_IPC_PROTO_LIST_V41; +pub type LPNET_DVR_IPC_PROTO_LIST_V41 = *mut tagNET_DVR_IPC_PROTO_LIST_V41; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZPOS_INFO { + pub dwPanPos: DWORD, + pub dwTiltPos: DWORD, + pub dwZoomPos: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZPOS_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZPOS_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZPOS_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPanPos) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZPOS_INFO), + "::", + stringify!(dwPanPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTiltPos) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZPOS_INFO), + "::", + stringify!(dwTiltPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwZoomPos) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZPOS_INFO), + "::", + stringify!(dwZoomPos) + ) + ); +} +pub type NET_DVR_PTZPOS_INFO = tagNET_DVR_PTZPOS_INFO; +pub type LPNET_DVR_PTZPOS_INFO = *mut tagNET_DVR_PTZPOS_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_HUMAN_FEATURE { + pub byAgeGroup: BYTE, + pub bySex: BYTE, + pub byEyeGlass: BYTE, + pub byAge: BYTE, + pub byAgeDeviation: BYTE, + pub byRes0: BYTE, + pub byMask: BYTE, + pub bySmile: BYTE, + pub byFaceExpression: BYTE, + pub byRes1: BYTE, + pub byRes2: BYTE, + pub byHat: BYTE, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_HUMAN_FEATURE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_VCA_HUMAN_FEATURE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_VCA_HUMAN_FEATURE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAgeGroup) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMAN_FEATURE), + "::", + stringify!(byAgeGroup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySex) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMAN_FEATURE), + "::", + stringify!(bySex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEyeGlass) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMAN_FEATURE), + "::", + stringify!(byEyeGlass) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAge) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMAN_FEATURE), + "::", + stringify!(byAge) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAgeDeviation) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMAN_FEATURE), + "::", + stringify!(byAgeDeviation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes0) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMAN_FEATURE), + "::", + stringify!(byRes0) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMask) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMAN_FEATURE), + "::", + stringify!(byMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySmile) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMAN_FEATURE), + "::", + stringify!(bySmile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaceExpression) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMAN_FEATURE), + "::", + stringify!(byFaceExpression) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMAN_FEATURE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMAN_FEATURE), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHat) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMAN_FEATURE), + "::", + stringify!(byHat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMAN_FEATURE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_HUMAN_FEATURE = tagNET_VCA_HUMAN_FEATURE; +pub type LPNET_VCA_HUMAN_FEATURE = *mut tagNET_VCA_HUMAN_FEATURE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OBJECT_FEATURE { + pub byColorRatel: BYTE, + pub byRed: BYTE, + pub byGreen: BYTE, + pub byBlue: BYTE, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OBJECT_FEATURE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_OBJECT_FEATURE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OBJECT_FEATURE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byColorRatel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OBJECT_FEATURE), + "::", + stringify!(byColorRatel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRed) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OBJECT_FEATURE), + "::", + stringify!(byRed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGreen) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OBJECT_FEATURE), + "::", + stringify!(byGreen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBlue) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OBJECT_FEATURE), + "::", + stringify!(byBlue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OBJECT_FEATURE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_OBJECT_FEATURE = tagNET_DVR_OBJECT_FEATURE; +pub type LPNET_DVR_OBJECT_FEATURE = *mut tagNET_DVR_OBJECT_FEATURE; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_ADVANCE_COND_UNION { + pub byLen: [BYTE; 36usize], + pub struHumanFeature: NET_VCA_HUMAN_FEATURE, + pub struObjectFeature: NET_DVR_OBJECT_FEATURE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ADVANCE_COND_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_ADVANCE_COND_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ADVANCE_COND_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADVANCE_COND_UNION), + "::", + stringify!(byLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHumanFeature) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADVANCE_COND_UNION), + "::", + stringify!(struHumanFeature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struObjectFeature) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADVANCE_COND_UNION), + "::", + stringify!(struObjectFeature) + ) + ); +} +pub type NET_DVR_ADVANCE_COND_UNION = tagNET_DVR_ADVANCE_COND_UNION; +pub type LPNET_DVR_ADVANCE_COND_UNION = *mut tagNET_DVR_ADVANCE_COND_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_TRAVERSE_PLANE_SEARCHCOND { + pub struVcaTraversePlane: [NET_VCA_TRAVERSE_PLANE; 8usize], + pub dwPreTime: DWORD, + pub dwDelayTime: DWORD, + pub struPTZPosInfo: NET_DVR_PTZPOS_INFO, + pub byAdvanceType: BYTE, + pub byRes1: [BYTE; 3usize], + pub uAdvanceCond: NET_DVR_ADVANCE_COND_UNION, + pub byRes: [BYTE; 5604usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRAVERSE_PLANE_SEARCHCOND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 6144usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_TRAVERSE_PLANE_SEARCHCOND) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_TRAVERSE_PLANE_SEARCHCOND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaTraversePlane) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAVERSE_PLANE_SEARCHCOND), + "::", + stringify!(struVcaTraversePlane) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPreTime) as usize - ptr as usize }, + 480usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAVERSE_PLANE_SEARCHCOND), + "::", + stringify!(dwPreTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDelayTime) as usize - ptr as usize }, + 484usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAVERSE_PLANE_SEARCHCOND), + "::", + stringify!(dwDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPTZPosInfo) as usize - ptr as usize }, + 488usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAVERSE_PLANE_SEARCHCOND), + "::", + stringify!(struPTZPosInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAdvanceType) as usize - ptr as usize }, + 500usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAVERSE_PLANE_SEARCHCOND), + "::", + stringify!(byAdvanceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 501usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAVERSE_PLANE_SEARCHCOND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uAdvanceCond) as usize - ptr as usize }, + 504usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAVERSE_PLANE_SEARCHCOND), + "::", + stringify!(uAdvanceCond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 540usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAVERSE_PLANE_SEARCHCOND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TRAVERSE_PLANE_SEARCHCOND = tagNET_DVR_TRAVERSE_PLANE_SEARCHCOND; +pub type LPNET_DVR_TRAVERSE_PLANE_SEARCHCOND = *mut tagNET_DVR_TRAVERSE_PLANE_SEARCHCOND; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_INTRUSION_SEARCHCOND { + pub struVcaIntrusion: [NET_VCA_INTRUSION; 8usize], + pub dwPreTime: DWORD, + pub dwDelayTime: DWORD, + pub struPTZPosInfo: NET_DVR_PTZPOS_INFO, + pub byAdvanceType: BYTE, + pub byRes1: [BYTE; 3usize], + pub uAdvanceCond: NET_DVR_ADVANCE_COND_UNION, + pub byRes: [BYTE; 5348usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INTRUSION_SEARCHCOND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 6144usize, + concat!("Size of: ", stringify!(tagNET_DVR_INTRUSION_SEARCHCOND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INTRUSION_SEARCHCOND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaIntrusion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INTRUSION_SEARCHCOND), + "::", + stringify!(struVcaIntrusion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPreTime) as usize - ptr as usize }, + 736usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INTRUSION_SEARCHCOND), + "::", + stringify!(dwPreTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDelayTime) as usize - ptr as usize }, + 740usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INTRUSION_SEARCHCOND), + "::", + stringify!(dwDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPTZPosInfo) as usize - ptr as usize }, + 744usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INTRUSION_SEARCHCOND), + "::", + stringify!(struPTZPosInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAdvanceType) as usize - ptr as usize }, + 756usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INTRUSION_SEARCHCOND), + "::", + stringify!(byAdvanceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 757usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INTRUSION_SEARCHCOND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uAdvanceCond) as usize - ptr as usize }, + 760usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INTRUSION_SEARCHCOND), + "::", + stringify!(uAdvanceCond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 796usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INTRUSION_SEARCHCOND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INTRUSION_SEARCHCOND = tagNET_DVR_INTRUSION_SEARCHCOND; +pub type LPNET_DVR_INTRUSION_SEARCHCOND = *mut tagNET_DVR_INTRUSION_SEARCHCOND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FACEDETECTION_SEARCHCOND { + pub struFacePolygon: NET_VCA_POLYGON, + pub dwPreTime: DWORD, + pub dwDelayTime: DWORD, + pub byRes: [BYTE; 5972usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FACEDETECTION_SEARCHCOND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 6064usize, + concat!("Size of: ", stringify!(tagNET_DVR_FACEDETECTION_SEARCHCOND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FACEDETECTION_SEARCHCOND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFacePolygon) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECTION_SEARCHCOND), + "::", + stringify!(struFacePolygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPreTime) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECTION_SEARCHCOND), + "::", + stringify!(dwPreTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDelayTime) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECTION_SEARCHCOND), + "::", + stringify!(dwDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACEDETECTION_SEARCHCOND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FACEDETECTION_SEARCHCOND = tagNET_DVR_FACEDETECTION_SEARCHCOND; +pub type LPNET_DVR_FACEDETECTION_SEARCHCOND = *mut tagNET_DVR_FACEDETECTION_SEARCHCOND; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_AREA_SMARTSEARCH_COND_UNION { + pub byLen: [BYTE; 6144usize], + pub byMotionScope: [[BYTE; 96usize]; 64usize], + pub struTraversPlaneCond: NET_DVR_TRAVERSE_PLANE_SEARCHCOND, + pub struIntrusionCond: NET_DVR_INTRUSION_SEARCHCOND, + pub struFaceSnapCond: NET_DVR_FACEDETECTION_SEARCHCOND, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AREA_SMARTSEARCH_COND_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 6144usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_AREA_SMARTSEARCH_COND_UNION) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_AREA_SMARTSEARCH_COND_UNION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AREA_SMARTSEARCH_COND_UNION), + "::", + stringify!(byLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMotionScope) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AREA_SMARTSEARCH_COND_UNION), + "::", + stringify!(byMotionScope) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTraversPlaneCond) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AREA_SMARTSEARCH_COND_UNION), + "::", + stringify!(struTraversPlaneCond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIntrusionCond) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AREA_SMARTSEARCH_COND_UNION), + "::", + stringify!(struIntrusionCond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFaceSnapCond) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AREA_SMARTSEARCH_COND_UNION), + "::", + stringify!(struFaceSnapCond) + ) + ); +} +pub type NET_DVR_AREA_SMARTSEARCH_COND_UNION = tagNET_DVR_AREA_SMARTSEARCH_COND_UNION; +pub type LPNET_DVR_AREA_SMARTSEARCH_COND_UNION = *mut tagNET_DVR_AREA_SMARTSEARCH_COND_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SMART_SEARCH_PARAM { + pub byChan: BYTE, + pub bySearchCondType: BYTE, + pub wChan: WORD, + pub struStartTime: NET_DVR_TIME, + pub struEndTime: NET_DVR_TIME, + pub uSmartSearchCond: NET_DVR_AREA_SMARTSEARCH_COND_UNION, + pub bySensitivity: BYTE, + pub byRes2: [BYTE; 11usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SMART_SEARCH_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 6208usize, + concat!("Size of: ", stringify!(tagNET_DVR_SMART_SEARCH_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SMART_SEARCH_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChan) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PARAM), + "::", + stringify!(byChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySearchCondType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PARAM), + "::", + stringify!(bySearchCondType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wChan) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PARAM), + "::", + stringify!(wChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PARAM), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PARAM), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uSmartSearchCond) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PARAM), + "::", + stringify!(uSmartSearchCond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 6196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PARAM), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 6197usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SMART_SEARCH_PARAM = tagNET_DVR_SMART_SEARCH_PARAM; +pub type LPNET_DVR_SMART_SEARCH_PARAM = *mut tagNET_DVR_SMART_SEARCH_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SMART_SEARCH_PARAM_V40 { + pub dwSize: DWORD, + pub struIDInfo: NET_DVR_STREAM_INFO, + pub bySearchCondType: BYTE, + pub bySensitivity: BYTE, + pub byRes1: [BYTE; 2usize], + pub struStartTime: NET_DVR_TIME_EX, + pub struEndTime: NET_DVR_TIME_EX, + pub uSmartSearchCond: NET_DVR_AREA_SMARTSEARCH_COND_UNION, + pub byISO8601: BYTE, + pub cStartTimeDifferenceH: ::std::os::raw::c_char, + pub cStartTimeDifferenceM: ::std::os::raw::c_char, + pub cStopTimeDifferenceH: ::std::os::raw::c_char, + pub cStopTimeDifferenceM: ::std::os::raw::c_char, + pub byRes2: [BYTE; 251usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SMART_SEARCH_PARAM_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 6496usize, + concat!("Size of: ", stringify!(tagNET_DVR_SMART_SEARCH_PARAM_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SMART_SEARCH_PARAM_V40) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PARAM_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIDInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PARAM_V40), + "::", + stringify!(struIDInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySearchCondType) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PARAM_V40), + "::", + stringify!(bySearchCondType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 77usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PARAM_V40), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 78usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PARAM_V40), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PARAM_V40), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PARAM_V40), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uSmartSearchCond) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PARAM_V40), + "::", + stringify!(uSmartSearchCond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byISO8601) as usize - ptr as usize }, + 6240usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PARAM_V40), + "::", + stringify!(byISO8601) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStartTimeDifferenceH) as usize - ptr as usize }, + 6241usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PARAM_V40), + "::", + stringify!(cStartTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStartTimeDifferenceM) as usize - ptr as usize }, + 6242usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PARAM_V40), + "::", + stringify!(cStartTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStopTimeDifferenceH) as usize - ptr as usize }, + 6243usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PARAM_V40), + "::", + stringify!(cStopTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStopTimeDifferenceM) as usize - ptr as usize }, + 6244usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PARAM_V40), + "::", + stringify!(cStopTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 6245usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PARAM_V40), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SMART_SEARCH_PARAM_V40 = tagNET_DVR_SMART_SEARCH_PARAM_V40; +pub type LPNET_DVR_SMART_SEARCH_PARAM_V40 = *mut tagNET_DVR_SMART_SEARCH_PARAM_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SMART_SEARCH_RET { + pub struStartTime: NET_DVR_TIME, + pub struEndTime: NET_DVR_TIME, + pub byISO8601: BYTE, + pub cStartTimeDifferenceH: ::std::os::raw::c_char, + pub cStartTimeDifferenceM: ::std::os::raw::c_char, + pub cStopTimeDifferenceH: ::std::os::raw::c_char, + pub cStopTimeDifferenceM: ::std::os::raw::c_char, + pub byRes: [BYTE; 59usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SMART_SEARCH_RET() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 112usize, + concat!("Size of: ", stringify!(tagNET_DVR_SMART_SEARCH_RET)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SMART_SEARCH_RET)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_RET), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_RET), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byISO8601) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_RET), + "::", + stringify!(byISO8601) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStartTimeDifferenceH) as usize - ptr as usize }, + 49usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_RET), + "::", + stringify!(cStartTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStartTimeDifferenceM) as usize - ptr as usize }, + 50usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_RET), + "::", + stringify!(cStartTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStopTimeDifferenceH) as usize - ptr as usize }, + 51usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_RET), + "::", + stringify!(cStopTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStopTimeDifferenceM) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_RET), + "::", + stringify!(cStopTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 53usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_RET), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SMART_SEARCH_RET = tagNET_DVR_SMART_SEARCH_RET; +pub type LPNET_DVR_SMART_SEARCH_RET = *mut tagNET_DVR_SMART_SEARCH_RET; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IPSAN_SERACH_PARAM { + pub struIP: NET_DVR_IPADDR, + pub wPort: WORD, + pub byRes: [BYTE; 10usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPSAN_SERACH_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 156usize, + concat!("Size of: ", stringify!(tagNET_DVR_IPSAN_SERACH_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IPSAN_SERACH_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPSAN_SERACH_PARAM), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPSAN_SERACH_PARAM), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 146usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPSAN_SERACH_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_IPSAN_SERACH_PARAM = tagNET_DVR_IPSAN_SERACH_PARAM; +pub type LPNET_DVR_IPSAN_SERACH_PARAM = *mut tagNET_DVR_IPSAN_SERACH_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IPSAN_SERACH_RET { + pub byDirectory: [BYTE; 128usize], + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPSAN_SERACH_RET() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!("Size of: ", stringify!(tagNET_DVR_IPSAN_SERACH_RET)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IPSAN_SERACH_RET)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDirectory) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPSAN_SERACH_RET), + "::", + stringify!(byDirectory) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPSAN_SERACH_RET), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_IPSAN_SERACH_RET = tagNET_DVR_IPSAN_SERACH_RET; +pub type LPNET_DVR_IPSAN_SERACH_RET = *mut tagNET_DVR_IPSAN_SERACH_RET; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DEVICECFG_V40 { + pub dwSize: DWORD, + pub sDVRName: [BYTE; 32usize], + pub dwDVRID: DWORD, + pub dwRecycleRecord: DWORD, + pub sSerialNumber: [BYTE; 48usize], + pub dwSoftwareVersion: DWORD, + pub dwSoftwareBuildDate: DWORD, + pub dwDSPSoftwareVersion: DWORD, + pub dwDSPSoftwareBuildDate: DWORD, + pub dwPanelVersion: DWORD, + pub dwHardwareVersion: DWORD, + pub byAlarmInPortNum: BYTE, + pub byAlarmOutPortNum: BYTE, + pub byRS232Num: BYTE, + pub byRS485Num: BYTE, + pub byNetworkPortNum: BYTE, + pub byDiskCtrlNum: BYTE, + pub byDiskNum: BYTE, + pub byDVRType: BYTE, + pub byChanNum: BYTE, + pub byStartChan: BYTE, + pub byDecordChans: BYTE, + pub byVGANum: BYTE, + pub byUSBNum: BYTE, + pub byAuxoutNum: BYTE, + pub byAudioNum: BYTE, + pub byIPChanNum: BYTE, + pub byZeroChanNum: BYTE, + pub bySupport: BYTE, + pub byEsataUseage: BYTE, + pub byIPCPlug: BYTE, + pub byStorageMode: BYTE, + pub bySupport1: BYTE, + pub wDevType: WORD, + pub byDevTypeName: [BYTE; 24usize], + pub bySupport2: BYTE, + pub byAnalogAlarmInPortNum: BYTE, + pub byStartAlarmInNo: BYTE, + pub byStartAlarmOutNo: BYTE, + pub byStartIPAlarmInNo: BYTE, + pub byStartIPAlarmOutNo: BYTE, + pub byHighIPChanNum: BYTE, + pub byEnableRemotePowerOn: BYTE, + pub wDevClass: WORD, + pub byRes2: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_DEVICECFG_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 180usize, + concat!("Size of: ", stringify!(NET_DVR_DEVICECFG_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_DEVICECFG_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDVRName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(sDVRName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDVRID) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(dwDVRID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecycleRecord) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(dwRecycleRecord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSerialNumber) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(sSerialNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSoftwareVersion) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(dwSoftwareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSoftwareBuildDate) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(dwSoftwareBuildDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDSPSoftwareVersion) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(dwDSPSoftwareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDSPSoftwareBuildDate) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(dwDSPSoftwareBuildDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPanelVersion) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(dwPanelVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHardwareVersion) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(dwHardwareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInPortNum) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byAlarmInPortNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutPortNum) as usize - ptr as usize }, + 117usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byAlarmOutPortNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRS232Num) as usize - ptr as usize }, + 118usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byRS232Num) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRS485Num) as usize - ptr as usize }, + 119usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byRS485Num) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetworkPortNum) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byNetworkPortNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDiskCtrlNum) as usize - ptr as usize }, + 121usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byDiskCtrlNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDiskNum) as usize - ptr as usize }, + 122usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byDiskNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDVRType) as usize - ptr as usize }, + 123usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byDVRType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanNum) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartChan) as usize - ptr as usize }, + 125usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byStartChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecordChans) as usize - ptr as usize }, + 126usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byDecordChans) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVGANum) as usize - ptr as usize }, + 127usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byVGANum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUSBNum) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byUSBNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAuxoutNum) as usize - ptr as usize }, + 129usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byAuxoutNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioNum) as usize - ptr as usize }, + 130usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byAudioNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIPChanNum) as usize - ptr as usize }, + 131usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byIPChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZeroChanNum) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byZeroChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupport) as usize - ptr as usize }, + 133usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(bySupport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEsataUseage) as usize - ptr as usize }, + 134usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byEsataUseage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIPCPlug) as usize - ptr as usize }, + 135usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byIPCPlug) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStorageMode) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byStorageMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupport1) as usize - ptr as usize }, + 137usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(bySupport1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevType) as usize - ptr as usize }, + 138usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(wDevType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevTypeName) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byDevTypeName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupport2) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(bySupport2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAnalogAlarmInPortNum) as usize - ptr as usize }, + 165usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byAnalogAlarmInPortNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartAlarmInNo) as usize - ptr as usize }, + 166usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byStartAlarmInNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartAlarmOutNo) as usize - ptr as usize }, + 167usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byStartAlarmOutNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartIPAlarmInNo) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byStartIPAlarmInNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartIPAlarmOutNo) as usize - ptr as usize }, + 169usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byStartIPAlarmOutNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHighIPChanNum) as usize - ptr as usize }, + 170usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byHighIPChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableRemotePowerOn) as usize - ptr as usize }, + 171usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byEnableRemotePowerOn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevClass) as usize - ptr as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(wDevClass) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 174usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V40), + "::", + stringify!(byRes2) + ) + ); +} +pub type LPNET_DVR_DEVICECFG_V40 = *mut NET_DVR_DEVICECFG_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DEVICECFG_V50 { + pub dwSize: DWORD, + pub sDVRName: [BYTE; 64usize], + pub dwDVRID: DWORD, + pub dwRecycleRecord: DWORD, + pub sSerialNumber: [BYTE; 48usize], + pub dwSoftwareVersion: DWORD, + pub dwSoftwareBuildDate: DWORD, + pub dwDSPSoftwareVersion: DWORD, + pub dwDSPSoftwareBuildDate: DWORD, + pub dwPanelVersion: DWORD, + pub dwHardwareVersion: DWORD, + pub byAlarmInPortNum: BYTE, + pub byAlarmOutPortNum: BYTE, + pub byRS232Num: BYTE, + pub byRS485Num: BYTE, + pub byNetworkPortNum: BYTE, + pub byDiskCtrlNum: BYTE, + pub byDiskNum: BYTE, + pub byDVRType: BYTE, + pub byChanNum: BYTE, + pub byStartChan: BYTE, + pub byDecordChans: BYTE, + pub byVGANum: BYTE, + pub byUSBNum: BYTE, + pub byAuxoutNum: BYTE, + pub byAudioNum: BYTE, + pub byIPChanNum: BYTE, + pub byZeroChanNum: BYTE, + pub bySupport: BYTE, + pub byEsataUseage: BYTE, + pub byIPCPlug: BYTE, + pub byStorageMode: BYTE, + pub bySupport1: BYTE, + pub wDevType: WORD, + pub byDevTypeName: [BYTE; 64usize], + pub bySupport2: BYTE, + pub byAnalogAlarmInPortNum: BYTE, + pub byStartAlarmInNo: BYTE, + pub byStartAlarmOutNo: BYTE, + pub byStartIPAlarmInNo: BYTE, + pub byStartIPAlarmOutNo: BYTE, + pub byHighIPChanNum: BYTE, + pub byEnableRemotePowerOn: BYTE, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_DEVICECFG_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 500usize, + concat!("Size of: ", stringify!(NET_DVR_DEVICECFG_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_DEVICECFG_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDVRName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(sDVRName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDVRID) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(dwDVRID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecycleRecord) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(dwRecycleRecord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSerialNumber) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(sSerialNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSoftwareVersion) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(dwSoftwareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSoftwareBuildDate) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(dwSoftwareBuildDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDSPSoftwareVersion) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(dwDSPSoftwareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDSPSoftwareBuildDate) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(dwDSPSoftwareBuildDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPanelVersion) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(dwPanelVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHardwareVersion) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(dwHardwareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInPortNum) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byAlarmInPortNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutPortNum) as usize - ptr as usize }, + 149usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byAlarmOutPortNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRS232Num) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byRS232Num) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRS485Num) as usize - ptr as usize }, + 151usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byRS485Num) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetworkPortNum) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byNetworkPortNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDiskCtrlNum) as usize - ptr as usize }, + 153usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byDiskCtrlNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDiskNum) as usize - ptr as usize }, + 154usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byDiskNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDVRType) as usize - ptr as usize }, + 155usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byDVRType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanNum) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartChan) as usize - ptr as usize }, + 157usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byStartChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecordChans) as usize - ptr as usize }, + 158usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byDecordChans) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVGANum) as usize - ptr as usize }, + 159usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byVGANum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUSBNum) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byUSBNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAuxoutNum) as usize - ptr as usize }, + 161usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byAuxoutNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioNum) as usize - ptr as usize }, + 162usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byAudioNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIPChanNum) as usize - ptr as usize }, + 163usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byIPChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZeroChanNum) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byZeroChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupport) as usize - ptr as usize }, + 165usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(bySupport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEsataUseage) as usize - ptr as usize }, + 166usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byEsataUseage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIPCPlug) as usize - ptr as usize }, + 167usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byIPCPlug) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStorageMode) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byStorageMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupport1) as usize - ptr as usize }, + 169usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(bySupport1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevType) as usize - ptr as usize }, + 170usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(wDevType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevTypeName) as usize - ptr as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byDevTypeName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupport2) as usize - ptr as usize }, + 236usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(bySupport2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAnalogAlarmInPortNum) as usize - ptr as usize }, + 237usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byAnalogAlarmInPortNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartAlarmInNo) as usize - ptr as usize }, + 238usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byStartAlarmInNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartAlarmOutNo) as usize - ptr as usize }, + 239usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byStartAlarmOutNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartIPAlarmInNo) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byStartIPAlarmInNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartIPAlarmOutNo) as usize - ptr as usize }, + 241usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byStartIPAlarmOutNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHighIPChanNum) as usize - ptr as usize }, + 242usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byHighIPChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableRemotePowerOn) as usize - ptr as usize }, + 243usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byEnableRemotePowerOn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 244usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVICECFG_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_DEVICECFG_V50 = *mut NET_DVR_DEVICECFG_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ZEROCHANCFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwVideoBitrate: DWORD, + pub dwVideoFrameRate: DWORD, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ZEROCHANCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_DVR_ZEROCHANCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ZEROCHANCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ZEROCHANCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ZEROCHANCFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ZEROCHANCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoBitrate) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ZEROCHANCFG), + "::", + stringify!(dwVideoBitrate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoFrameRate) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ZEROCHANCFG), + "::", + stringify!(dwVideoFrameRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ZEROCHANCFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ZEROCHANCFG = tagNET_DVR_ZEROCHANCFG; +pub type LPNET_DVR_ZEROCHANCFG = *mut tagNET_DVR_ZEROCHANCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ZERO_ZOOMCFG { + pub dwSize: DWORD, + pub struPoint: NET_VCA_POINT, + pub byState: BYTE, + pub byPreviewNumber: BYTE, + pub byPreviewSeq: [BYTE; 32usize], + pub byRes: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ZERO_ZOOMCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_ZERO_ZOOMCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ZERO_ZOOMCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ZERO_ZOOMCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPoint) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ZERO_ZOOMCFG), + "::", + stringify!(struPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byState) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ZERO_ZOOMCFG), + "::", + stringify!(byState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPreviewNumber) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ZERO_ZOOMCFG), + "::", + stringify!(byPreviewNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPreviewSeq) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ZERO_ZOOMCFG), + "::", + stringify!(byPreviewSeq) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 46usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ZERO_ZOOMCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ZERO_ZOOMCFG = tagNET_DVR_ZERO_ZOOMCFG; +pub type LPNET_DVR_ZERO_ZOOMCFG = *mut tagNET_DVR_ZERO_ZOOMCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SNMPCFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub wVersion: WORD, + pub wServerPort: WORD, + pub byReadCommunity: [BYTE; 32usize], + pub byWriteCommunity: [BYTE; 32usize], + pub byTrapHostIP: [BYTE; 64usize], + pub wTrapHostPort: WORD, + pub byTrapName: [BYTE; 32usize], + pub byRes2: [BYTE; 70usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SNMPCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 244usize, + concat!("Size of: ", stringify!(tagNET_DVR_SNMPCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SNMPCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPCFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wVersion) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPCFG), + "::", + stringify!(wVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wServerPort) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPCFG), + "::", + stringify!(wServerPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReadCommunity) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPCFG), + "::", + stringify!(byReadCommunity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWriteCommunity) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPCFG), + "::", + stringify!(byWriteCommunity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrapHostIP) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPCFG), + "::", + stringify!(byTrapHostIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTrapHostPort) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPCFG), + "::", + stringify!(wTrapHostPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrapName) as usize - ptr as usize }, + 142usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPCFG), + "::", + stringify!(byTrapName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 174usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPCFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SNMPCFG = tagNET_DVR_SNMPCFG; +pub type LPNET_DVR_SNMPCFG = *mut tagNET_DVR_SNMPCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SNMPv3_USER { + pub byUserName: [BYTE; 32usize], + pub bySecLevel: BYTE, + pub byAuthtype: BYTE, + pub byPrivtype: BYTE, + pub byRes: [BYTE; 5usize], + pub byAuthpass: [BYTE; 16usize], + pub byPrivpass: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SNMPv3_USER() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_SNMPv3_USER)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SNMPv3_USER)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUserName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPv3_USER), + "::", + stringify!(byUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySecLevel) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPv3_USER), + "::", + stringify!(bySecLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAuthtype) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPv3_USER), + "::", + stringify!(byAuthtype) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPrivtype) as usize - ptr as usize }, + 34usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPv3_USER), + "::", + stringify!(byPrivtype) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 35usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPv3_USER), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAuthpass) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPv3_USER), + "::", + stringify!(byAuthpass) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPrivpass) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPv3_USER), + "::", + stringify!(byPrivpass) + ) + ); +} +pub type NET_DVR_SNMPv3_USER = tagNET_DVR_SNMPv3_USER; +pub type LPNET_DVR_SNMPv3_USER = *mut tagNET_DVR_SNMPv3_USER; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SNMPCFG_V30 { + pub dwSize: DWORD, + pub byEnableV1: BYTE, + pub byEnableV2: BYTE, + pub byEnableV3: BYTE, + pub byRes1: [BYTE; 3usize], + pub wServerPort: WORD, + pub byReadCommunity: [BYTE; 32usize], + pub byWriteCommunity: [BYTE; 32usize], + pub byTrapHostIP: [BYTE; 64usize], + pub wTrapHostPort: WORD, + pub byRes2: [BYTE; 2usize], + pub struRWUser: NET_DVR_SNMPv3_USER, + pub struROUser: NET_DVR_SNMPv3_USER, + pub byTrapName: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SNMPCFG_V30() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 320usize, + concat!("Size of: ", stringify!(tagNET_DVR_SNMPCFG_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SNMPCFG_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPCFG_V30), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableV1) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPCFG_V30), + "::", + stringify!(byEnableV1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableV2) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPCFG_V30), + "::", + stringify!(byEnableV2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableV3) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPCFG_V30), + "::", + stringify!(byEnableV3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPCFG_V30), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wServerPort) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPCFG_V30), + "::", + stringify!(wServerPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReadCommunity) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPCFG_V30), + "::", + stringify!(byReadCommunity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWriteCommunity) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPCFG_V30), + "::", + stringify!(byWriteCommunity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrapHostIP) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPCFG_V30), + "::", + stringify!(byTrapHostIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTrapHostPort) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPCFG_V30), + "::", + stringify!(wTrapHostPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 142usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPCFG_V30), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRWUser) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPCFG_V30), + "::", + stringify!(struRWUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struROUser) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPCFG_V30), + "::", + stringify!(struROUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrapName) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNMPCFG_V30), + "::", + stringify!(byTrapName) + ) + ); +} +pub type NET_DVR_SNMPCFG_V30 = tagNET_DVR_SNMPCFG_V30; +pub type LPNET_DVR_SNMPCFG_V30 = *mut tagNET_DVR_SNMPCFG_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SADPINFO { + pub struIP: NET_DVR_IPADDR, + pub wPort: WORD, + pub wFactoryType: WORD, + pub chSoftwareVersion: [::std::os::raw::c_char; 48usize], + pub chSerialNo: [::std::os::raw::c_char; 16usize], + pub wEncCnt: WORD, + pub byMACAddr: [BYTE; 6usize], + pub struSubDVRIPMask: NET_DVR_IPADDR, + pub struGatewayIpAddr: NET_DVR_IPADDR, + pub struDnsServer1IpAddr: NET_DVR_IPADDR, + pub struDnsServer2IpAddr: NET_DVR_IPADDR, + pub byDns: BYTE, + pub byDhcp: BYTE, + pub szGB28181DevID: [BYTE; 32usize], + pub byActivated: BYTE, + pub byDeviceModel: [BYTE; 24usize], + pub byRes: [BYTE; 101usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SADPINFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 956usize, + concat!("Size of: ", stringify!(tagNET_DVR_SADPINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SADPINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SADPINFO), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SADPINFO), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFactoryType) as usize - ptr as usize }, + 146usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SADPINFO), + "::", + stringify!(wFactoryType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).chSoftwareVersion) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SADPINFO), + "::", + stringify!(chSoftwareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).chSerialNo) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SADPINFO), + "::", + stringify!(chSerialNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wEncCnt) as usize - ptr as usize }, + 212usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SADPINFO), + "::", + stringify!(wEncCnt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMACAddr) as usize - ptr as usize }, + 214usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SADPINFO), + "::", + stringify!(byMACAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSubDVRIPMask) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SADPINFO), + "::", + stringify!(struSubDVRIPMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGatewayIpAddr) as usize - ptr as usize }, + 364usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SADPINFO), + "::", + stringify!(struGatewayIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDnsServer1IpAddr) as usize - ptr as usize }, + 508usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SADPINFO), + "::", + stringify!(struDnsServer1IpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDnsServer2IpAddr) as usize - ptr as usize }, + 652usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SADPINFO), + "::", + stringify!(struDnsServer2IpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDns) as usize - ptr as usize }, + 796usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SADPINFO), + "::", + stringify!(byDns) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDhcp) as usize - ptr as usize }, + 797usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SADPINFO), + "::", + stringify!(byDhcp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szGB28181DevID) as usize - ptr as usize }, + 798usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SADPINFO), + "::", + stringify!(szGB28181DevID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byActivated) as usize - ptr as usize }, + 830usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SADPINFO), + "::", + stringify!(byActivated) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceModel) as usize - ptr as usize }, + 831usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SADPINFO), + "::", + stringify!(byDeviceModel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 855usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SADPINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SADPINFO = tagNET_DVR_SADPINFO; +pub type LPNET_DVR_SADPINFO = *mut tagNET_DVR_SADPINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SADPINFO_LIST { + pub dwSize: DWORD, + pub wSadpNum: WORD, + pub byRes: [BYTE; 6usize], + pub struSadpInfo: [NET_DVR_SADPINFO; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SADPINFO_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 244748usize, + concat!("Size of: ", stringify!(tagNET_DVR_SADPINFO_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SADPINFO_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SADPINFO_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSadpNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SADPINFO_LIST), + "::", + stringify!(wSadpNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SADPINFO_LIST), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSadpInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SADPINFO_LIST), + "::", + stringify!(struSadpInfo) + ) + ); +} +pub type NET_DVR_SADPINFO_LIST = tagNET_DVR_SADPINFO_LIST; +pub type LPNET_DVR_SADPINFO_LIST = *mut tagNET_DVR_SADPINFO_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SADP_VERIFY { + pub chPassword: [::std::os::raw::c_char; 16usize], + pub struOldIP: NET_DVR_IPADDR, + pub wOldPort: WORD, + pub byRes: [BYTE; 62usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SADP_VERIFY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 224usize, + concat!("Size of: ", stringify!(tagNET_DVR_SADP_VERIFY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SADP_VERIFY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).chPassword) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SADP_VERIFY), + "::", + stringify!(chPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOldIP) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SADP_VERIFY), + "::", + stringify!(struOldIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wOldPort) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SADP_VERIFY), + "::", + stringify!(wOldPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 162usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SADP_VERIFY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SADP_VERIFY = tagNET_DVR_SADP_VERIFY; +pub type LPNET_DVR_SADP_VERIFY = *mut tagNET_DVR_SADP_VERIFY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DESC_NODE { + pub iValue: ::std::os::raw::c_int, + pub byDescribe: [BYTE; 32usize], + pub dwFreeSpace: DWORD, + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DESC_NODE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 52usize, + concat!("Size of: ", stringify!(tagNET_DVR_DESC_NODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DESC_NODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iValue) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DESC_NODE), + "::", + stringify!(iValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDescribe) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DESC_NODE), + "::", + stringify!(byDescribe) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFreeSpace) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DESC_NODE), + "::", + stringify!(dwFreeSpace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DESC_NODE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DESC_NODE = tagNET_DVR_DESC_NODE; +pub type LPNET_DVR_DESC_NODE = *mut tagNET_DVR_DESC_NODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DISKABILITY_LIST { + pub dwSize: DWORD, + pub dwNodeNum: DWORD, + pub struDescNode: [NET_DVR_DESC_NODE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DISKABILITY_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 13320usize, + concat!("Size of: ", stringify!(tagNET_DVR_DISKABILITY_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DISKABILITY_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISKABILITY_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNodeNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISKABILITY_LIST), + "::", + stringify!(dwNodeNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDescNode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISKABILITY_LIST), + "::", + stringify!(struDescNode) + ) + ); +} +pub type NET_DVR_DISKABILITY_LIST = tagNET_DVR_DISKABILITY_LIST; +pub type LPNET_DVR_DISKABILITY_LIST = *mut tagNET_DVR_DISKABILITY_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BACKUP_NAME_PARAM { + pub dwFileNum: DWORD, + pub struFileList: [NET_DVR_FINDDATA_V30; 20usize], + pub byDiskDes: [BYTE; 32usize], + pub byWithPlayer: BYTE, + pub byContinue: BYTE, + pub byRes: [BYTE; 34usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BACKUP_NAME_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 3832usize, + concat!("Size of: ", stringify!(tagNET_DVR_BACKUP_NAME_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BACKUP_NAME_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_NAME_PARAM), + "::", + stringify!(dwFileNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFileList) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_NAME_PARAM), + "::", + stringify!(struFileList) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDiskDes) as usize - ptr as usize }, + 3764usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_NAME_PARAM), + "::", + stringify!(byDiskDes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWithPlayer) as usize - ptr as usize }, + 3796usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_NAME_PARAM), + "::", + stringify!(byWithPlayer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byContinue) as usize - ptr as usize }, + 3797usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_NAME_PARAM), + "::", + stringify!(byContinue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3798usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_NAME_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BACKUP_NAME_PARAM = tagNET_DVR_BACKUP_NAME_PARAM; +pub type LPNET_DVR_BACKUP_NAME_PARAM = *mut tagNET_DVR_BACKUP_NAME_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BACKUP_TIME_PARAM { + pub lChannel: LONG, + pub struStartTime: NET_DVR_TIME, + pub struStopTime: NET_DVR_TIME, + pub byDiskDes: [BYTE; 32usize], + pub byWithPlayer: BYTE, + pub byContinue: BYTE, + pub byDrawFrame: BYTE, + pub byUseBackCfgParam: BYTE, + pub dwStreamType: DWORD, + pub byRes: [BYTE; 28usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BACKUP_TIME_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 120usize, + concat!("Size of: ", stringify!(tagNET_DVR_BACKUP_TIME_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BACKUP_TIME_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_TIME_PARAM), + "::", + stringify!(lChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_TIME_PARAM), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_TIME_PARAM), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDiskDes) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_TIME_PARAM), + "::", + stringify!(byDiskDes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWithPlayer) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_TIME_PARAM), + "::", + stringify!(byWithPlayer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byContinue) as usize - ptr as usize }, + 85usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_TIME_PARAM), + "::", + stringify!(byContinue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDrawFrame) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_TIME_PARAM), + "::", + stringify!(byDrawFrame) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseBackCfgParam) as usize - ptr as usize }, + 87usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_TIME_PARAM), + "::", + stringify!(byUseBackCfgParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStreamType) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_TIME_PARAM), + "::", + stringify!(dwStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_TIME_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BACKUP_TIME_PARAM = tagNET_DVR_BACKUP_TIME_PARAM; +pub type LPNET_DVR_BACKUP_TIME_PARAM = *mut tagNET_DVR_BACKUP_TIME_PARAM; +pub const _COMPRESSION_ABILITY_TYPE__COMPRESSION_STREAM_ABILITY: _COMPRESSION_ABILITY_TYPE_ = 0; +pub const _COMPRESSION_ABILITY_TYPE__MAIN_RESOLUTION_ABILITY: _COMPRESSION_ABILITY_TYPE_ = 1; +pub const _COMPRESSION_ABILITY_TYPE__SUB_RESOLUTION_ABILITY: _COMPRESSION_ABILITY_TYPE_ = 2; +pub const _COMPRESSION_ABILITY_TYPE__EVENT_RESOLUTION_ABILITY: _COMPRESSION_ABILITY_TYPE_ = 3; +pub const _COMPRESSION_ABILITY_TYPE__FRAME_ABILITY: _COMPRESSION_ABILITY_TYPE_ = 4; +pub const _COMPRESSION_ABILITY_TYPE__BITRATE_TYPE_ABILITY: _COMPRESSION_ABILITY_TYPE_ = 5; +pub const _COMPRESSION_ABILITY_TYPE__BITRATE_ABILITY: _COMPRESSION_ABILITY_TYPE_ = 6; +pub const _COMPRESSION_ABILITY_TYPE__THIRD_RESOLUTION_ABILITY: _COMPRESSION_ABILITY_TYPE_ = 7; +pub const _COMPRESSION_ABILITY_TYPE__STREAM_TYPE_ABILITY: _COMPRESSION_ABILITY_TYPE_ = 8; +pub const _COMPRESSION_ABILITY_TYPE__PIC_QUALITY_ABILITY: _COMPRESSION_ABILITY_TYPE_ = 9; +pub const _COMPRESSION_ABILITY_TYPE__INTERVAL_BPFRAME_ABILITY: _COMPRESSION_ABILITY_TYPE_ = 10; +pub const _COMPRESSION_ABILITY_TYPE__VIDEO_ENC_ABILITY: _COMPRESSION_ABILITY_TYPE_ = 11; +pub const _COMPRESSION_ABILITY_TYPE__AUDIO_ENC_ABILITY: _COMPRESSION_ABILITY_TYPE_ = 12; +pub const _COMPRESSION_ABILITY_TYPE__VIDEO_ENC_COMPLEXITY_ABILITY: _COMPRESSION_ABILITY_TYPE_ = 13; +pub const _COMPRESSION_ABILITY_TYPE__FORMAT_ABILITY: _COMPRESSION_ABILITY_TYPE_ = 14; +#[doc = " end"] +pub type _COMPRESSION_ABILITY_TYPE_ = ::std::os::raw::c_uint; +#[doc = " end"] +pub use self::_COMPRESSION_ABILITY_TYPE_ as COMPRESSION_ABILITY_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ABILITY_LIST { + pub dwAbilityType: DWORD, + pub byRes: [BYTE; 32usize], + pub dwNodeNum: DWORD, + pub struDescNode: [NET_DVR_DESC_NODE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ABILITY_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 13352usize, + concat!("Size of: ", stringify!(tagNET_DVR_ABILITY_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ABILITY_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbilityType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ABILITY_LIST), + "::", + stringify!(dwAbilityType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ABILITY_LIST), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNodeNum) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ABILITY_LIST), + "::", + stringify!(dwNodeNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDescNode) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ABILITY_LIST), + "::", + stringify!(struDescNode) + ) + ); +} +pub type NET_DVR_ABILITY_LIST = tagNET_DVR_ABILITY_LIST; +pub type LPNET_DVR_ABILITY_LIST = *mut tagNET_DVR_ABILITY_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_COMPRESSIONCFG_ABILITY { + pub dwSize: DWORD, + pub dwAbilityNum: DWORD, + pub struAbilityNode: [NET_DVR_ABILITY_LIST; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_COMPRESSIONCFG_ABILITY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 160232usize, + concat!("Size of: ", stringify!(tagNET_DVR_COMPRESSIONCFG_ABILITY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_COMPRESSIONCFG_ABILITY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COMPRESSIONCFG_ABILITY), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbilityNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COMPRESSIONCFG_ABILITY), + "::", + stringify!(dwAbilityNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAbilityNode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COMPRESSIONCFG_ABILITY), + "::", + stringify!(struAbilityNode) + ) + ); +} +pub type NET_DVR_COMPRESSIONCFG_ABILITY = tagNET_DVR_COMPRESSIONCFG_ABILITY; +pub type LPNET_DVR_COMPRESSIONCFG_ABILITY = *mut tagNET_DVR_COMPRESSIONCFG_ABILITY; +pub const tagRAID_MODE_RAID0: tagRAID_MODE = 1; +pub const tagRAID_MODE_RAID1: tagRAID_MODE = 2; +pub const tagRAID_MODE_RAID10: tagRAID_MODE = 3; +pub const tagRAID_MODE_RAID1E: tagRAID_MODE = 4; +pub const tagRAID_MODE_RAID5: tagRAID_MODE = 5; +pub const tagRAID_MODE_RAID6: tagRAID_MODE = 6; +pub const tagRAID_MODE_RAID50: tagRAID_MODE = 7; +pub const tagRAID_MODE_JBOD: tagRAID_MODE = 8; +pub const tagRAID_MODE_RAID60: tagRAID_MODE = 9; +pub type tagRAID_MODE = ::std::os::raw::c_uint; +pub use self::tagRAID_MODE as RAID_MODE; +pub const tagHD_SUPPORT_TYPE_HD_TYPE_SATA: tagHD_SUPPORT_TYPE = 1; +pub const tagHD_SUPPORT_TYPE_HD_TYPE_PATA: tagHD_SUPPORT_TYPE = 2; +pub const tagHD_SUPPORT_TYPE_HD_TYPE_SAS: tagHD_SUPPORT_TYPE = 4; +pub const tagHD_SUPPORT_TYPE_HD_TYPE_ATAPI: tagHD_SUPPORT_TYPE = 8; +pub const tagHD_SUPPORT_TYPE_HD_TYPE_TAPE: tagHD_SUPPORT_TYPE = 16; +pub const tagHD_SUPPORT_TYPE_HD_TYPE_SES: tagHD_SUPPORT_TYPE = 32; +pub type tagHD_SUPPORT_TYPE = ::std::os::raw::c_uint; +pub use self::tagHD_SUPPORT_TYPE as HD_SUPPORT_TYPE; +pub const tagSUPPORT_RAID_TYPE_RAID0_ABILITY: tagSUPPORT_RAID_TYPE = 1; +pub const tagSUPPORT_RAID_TYPE_RAID1_ABILITY: tagSUPPORT_RAID_TYPE = 2; +pub const tagSUPPORT_RAID_TYPE_RAID10_ABILITY: tagSUPPORT_RAID_TYPE = 4; +pub const tagSUPPORT_RAID_TYPE_RAID1E_ABILITY: tagSUPPORT_RAID_TYPE = 8; +pub const tagSUPPORT_RAID_TYPE_RAID5_ABILITY: tagSUPPORT_RAID_TYPE = 16; +pub const tagSUPPORT_RAID_TYPE_RAID6_ABILITY: tagSUPPORT_RAID_TYPE = 32; +pub const tagSUPPORT_RAID_TYPE_RAID50_ABILITY: tagSUPPORT_RAID_TYPE = 64; +pub const tagSUPPORT_RAID_TYPE_JBOD_ABILITY: tagSUPPORT_RAID_TYPE = 128; +pub const tagSUPPORT_RAID_TYPE_RAID60_ABILITY: tagSUPPORT_RAID_TYPE = 256; +pub type tagSUPPORT_RAID_TYPE = ::std::os::raw::c_uint; +pub use self::tagSUPPORT_RAID_TYPE as SUPPORT_RAID_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PHY_DISK_INFO { + pub wPhySlot: WORD, + pub byType: BYTE, + pub byStatus: BYTE, + pub byMode: [BYTE; 40usize], + pub dwHCapacity: DWORD, + pub dwLCapacity: DWORD, + pub byArrrayName: [BYTE; 16usize], + pub wArrayID: WORD, + pub byArrayInformation: BYTE, + pub byRes: [BYTE; 101usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PHY_DISK_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 172usize, + concat!("Size of: ", stringify!(tagNET_DVR_PHY_DISK_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PHY_DISK_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPhySlot) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHY_DISK_INFO), + "::", + stringify!(wPhySlot) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHY_DISK_INFO), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHY_DISK_INFO), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHY_DISK_INFO), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHCapacity) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHY_DISK_INFO), + "::", + stringify!(dwHCapacity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLCapacity) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHY_DISK_INFO), + "::", + stringify!(dwLCapacity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byArrrayName) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHY_DISK_INFO), + "::", + stringify!(byArrrayName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wArrayID) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHY_DISK_INFO), + "::", + stringify!(wArrayID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byArrayInformation) as usize - ptr as usize }, + 70usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHY_DISK_INFO), + "::", + stringify!(byArrayInformation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 71usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHY_DISK_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PHY_DISK_INFO = tagNET_DVR_PHY_DISK_INFO; +pub type LPNET_DVR_PHY_DISK_INFO = *mut tagNET_DVR_PHY_DISK_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PHY_DISK_LIST { + pub dwSize: DWORD, + pub dwCount: DWORD, + pub struPhyDiskInfo: [NET_DVR_PHY_DISK_INFO; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PHY_DISK_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2760usize, + concat!("Size of: ", stringify!(tagNET_DVR_PHY_DISK_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PHY_DISK_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHY_DISK_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCount) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHY_DISK_LIST), + "::", + stringify!(dwCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPhyDiskInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHY_DISK_LIST), + "::", + stringify!(struPhyDiskInfo) + ) + ); +} +pub type NET_DVR_PHY_DISK_LIST = tagNET_DVR_PHY_DISK_LIST; +pub type LPNET_DVR_PHY_DISK_LIST = *mut tagNET_DVR_PHY_DISK_LIST; +pub const tagBGA_TYPE_BGA_REBUILD: tagBGA_TYPE = 1; +pub const tagBGA_TYPE_BGA_CONSISTENCY_FIX: tagBGA_TYPE = 2; +pub const tagBGA_TYPE_BGA_CONSISTENCY_CHECK: tagBGA_TYPE = 4; +pub const tagBGA_TYPE_BGA_INIT_QUICK: tagBGA_TYPE = 8; +pub const tagBGA_TYPE_BGA_INIT_BACK: tagBGA_TYPE = 16; +pub const tagBGA_TYPE_BGA_MIGRATION: tagBGA_TYPE = 32; +pub const tagBGA_TYPE_BGA_INIT_FORE: tagBGA_TYPE = 64; +pub const tagBGA_TYPE_BGA_COPYBACK: tagBGA_TYPE = 128; +pub type tagBGA_TYPE = ::std::os::raw::c_uint; +pub use self::tagBGA_TYPE as BGA_TYPE; +pub const tagBGA_STATE_BGA_STATE_NONE: tagBGA_STATE = 0; +pub const tagBGA_STATE_BGA_STATE_RUNNING: tagBGA_STATE = 1; +pub const tagBGA_STATE_BGA_STATE_ABORTED: tagBGA_STATE = 2; +pub const tagBGA_STATE_BGA_STATE_PAUSED: tagBGA_STATE = 3; +pub type tagBGA_STATE = ::std::os::raw::c_uint; +pub use self::tagBGA_STATE as BGA_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BGA_INFO { + pub byBga: BYTE, + pub byBgaState: BYTE, + pub wBgaPercentage: WORD, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BGA_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_BGA_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BGA_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBga) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BGA_INFO), + "::", + stringify!(byBga) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBgaState) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BGA_INFO), + "::", + stringify!(byBgaState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBgaPercentage) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BGA_INFO), + "::", + stringify!(wBgaPercentage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BGA_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BGA_INFO = tagNET_DVR_BGA_INFO; +pub type LPNET_DVR_BGA_INFO = *mut tagNET_DVR_BGA_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ARRAY_INFO { + pub wArrayID: WORD, + pub byRaidMode: BYTE, + pub byStatus: BYTE, + pub dwHCapacity: DWORD, + pub dwLCapacity: DWORD, + pub dwHFreeSpace: DWORD, + pub dwLFreeSpace: DWORD, + pub byArrayName: [BYTE; 16usize], + pub byPDCount: BYTE, + pub bySpareCount: BYTE, + pub byRes1: [BYTE; 2usize], + pub wPDSlots: [WORD; 16usize], + pub wSparePDSlots: [WORD; 16usize], + pub struBgaInfo: NET_DVR_BGA_INFO, + pub wPDSlotsPartTwo: [WORD; 8usize], + pub wSparePDSlotsPartTwo: [WORD; 8usize], + pub byRes2: [BYTE; 48usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ARRAY_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 192usize, + concat!("Size of: ", stringify!(tagNET_DVR_ARRAY_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ARRAY_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wArrayID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ARRAY_INFO), + "::", + stringify!(wArrayID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRaidMode) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ARRAY_INFO), + "::", + stringify!(byRaidMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ARRAY_INFO), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHCapacity) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ARRAY_INFO), + "::", + stringify!(dwHCapacity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLCapacity) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ARRAY_INFO), + "::", + stringify!(dwLCapacity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHFreeSpace) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ARRAY_INFO), + "::", + stringify!(dwHFreeSpace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLFreeSpace) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ARRAY_INFO), + "::", + stringify!(dwLFreeSpace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byArrayName) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ARRAY_INFO), + "::", + stringify!(byArrayName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPDCount) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ARRAY_INFO), + "::", + stringify!(byPDCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpareCount) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ARRAY_INFO), + "::", + stringify!(bySpareCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ARRAY_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPDSlots) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ARRAY_INFO), + "::", + stringify!(wPDSlots) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSparePDSlots) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ARRAY_INFO), + "::", + stringify!(wSparePDSlots) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBgaInfo) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ARRAY_INFO), + "::", + stringify!(struBgaInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPDSlotsPartTwo) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ARRAY_INFO), + "::", + stringify!(wPDSlotsPartTwo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSparePDSlotsPartTwo) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ARRAY_INFO), + "::", + stringify!(wSparePDSlotsPartTwo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ARRAY_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ARRAY_INFO = tagNET_DVR_ARRAY_INFO; +pub type LPNET_DVR_ARRAY_INFO = *mut tagNET_DVR_ARRAY_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ARRAY_LIST { + pub dwSize: DWORD, + pub dwCount: DWORD, + pub struArrayInfo: [NET_DVR_ARRAY_INFO; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ARRAY_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1544usize, + concat!("Size of: ", stringify!(tagNET_DVR_ARRAY_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ARRAY_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ARRAY_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCount) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ARRAY_LIST), + "::", + stringify!(dwCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struArrayInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ARRAY_LIST), + "::", + stringify!(struArrayInfo) + ) + ); +} +pub type NET_DVR_ARRAY_LIST = tagNET_DVR_ARRAY_LIST; +pub type LPNET_DVR_ARRAY_LIST = *mut tagNET_DVR_ARRAY_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VD_INFO { + pub wSlot: WORD, + pub byStatus: BYTE, + pub byRaidMode: BYTE, + pub wArrayID: WORD, + pub byRepair: BYTE, + pub byUsage: BYTE, + pub byArrayName: [BYTE; 16usize], + pub byName: [BYTE; 16usize], + pub dwHCapacity: DWORD, + pub dwLCapacity: DWORD, + pub dwHFreeSpace: DWORD, + pub dwLFreeSpace: DWORD, + pub struBgaInfo: NET_DVR_BGA_INFO, + pub dwBlockSize: DWORD, + pub struWarrantIP: NET_DVR_IPADDR, + pub szArrayGroup: [::std::os::raw::c_char; 32usize], + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VD_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_DVR_VD_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VD_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSlot) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_INFO), + "::", + stringify!(wSlot) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_INFO), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRaidMode) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_INFO), + "::", + stringify!(byRaidMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wArrayID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_INFO), + "::", + stringify!(wArrayID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRepair) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_INFO), + "::", + stringify!(byRepair) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUsage) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_INFO), + "::", + stringify!(byUsage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byArrayName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_INFO), + "::", + stringify!(byArrayName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_INFO), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHCapacity) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_INFO), + "::", + stringify!(dwHCapacity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLCapacity) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_INFO), + "::", + stringify!(dwLCapacity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHFreeSpace) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_INFO), + "::", + stringify!(dwHFreeSpace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLFreeSpace) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_INFO), + "::", + stringify!(dwLFreeSpace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBgaInfo) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_INFO), + "::", + stringify!(struBgaInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBlockSize) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_INFO), + "::", + stringify!(dwBlockSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWarrantIP) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_INFO), + "::", + stringify!(struWarrantIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szArrayGroup) as usize - ptr as usize }, + 212usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_INFO), + "::", + stringify!(szArrayGroup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 244usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VD_INFO = tagNET_DVR_VD_INFO; +pub type LPNET_DVR_VD_INFO = *mut tagNET_DVR_VD_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VD_LIST { + pub dwSize: DWORD, + pub dwCount: DWORD, + pub struVDInfo: [NET_DVR_VD_INFO; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VD_LIST() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 33800usize, + concat!("Size of: ", stringify!(tagNET_DVR_VD_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VD_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCount) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_LIST), + "::", + stringify!(dwCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVDInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_LIST), + "::", + stringify!(struVDInfo) + ) + ); +} +pub type NET_DVR_VD_LIST = tagNET_DVR_VD_LIST; +pub type LPNET_DVR_VD_LIST = *mut tagNET_DVR_VD_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ADAPTER_VERSION { + pub wMajorVersion: WORD, + pub wMinorVersion: WORD, + pub wRevisionNumber: WORD, + pub wBuildNumber: WORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ADAPTER_VERSION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_ADAPTER_VERSION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ADAPTER_VERSION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMajorVersion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADAPTER_VERSION), + "::", + stringify!(wMajorVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMinorVersion) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADAPTER_VERSION), + "::", + stringify!(wMinorVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRevisionNumber) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADAPTER_VERSION), + "::", + stringify!(wRevisionNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBuildNumber) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADAPTER_VERSION), + "::", + stringify!(wBuildNumber) + ) + ); +} +pub type NET_DVR_ADAPTER_VERSION = tagNET_DVR_ADAPTER_VERSION; +pub type LPNET_DVR_ADAPTER_VERSION = *mut tagNET_DVR_ADAPTER_VERSION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VD_SLOT { + pub wVDSlot: WORD, + pub byAlloc: BYTE, + pub byRes: [BYTE; 5usize], + pub dwHVDSlotSize: DWORD, + pub dwLVDSlotSize: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VD_SLOT() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_VD_SLOT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VD_SLOT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wVDSlot) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_SLOT), + "::", + stringify!(wVDSlot) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlloc) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_SLOT), + "::", + stringify!(byAlloc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_SLOT), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHVDSlotSize) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_SLOT), + "::", + stringify!(dwHVDSlotSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLVDSlotSize) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_SLOT), + "::", + stringify!(dwLVDSlotSize) + ) + ); +} +pub type NET_DVR_VD_SLOT = tagNET_DVR_VD_SLOT; +pub type LPNET_DVR_VD_SLOT = *mut tagNET_DVR_VD_SLOT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ARRAY_SPACE_ALLOC_INFO { + pub byVDSlotCount: BYTE, + pub byRes1: [BYTE; 3usize], + pub struVDSlots: [NET_DVR_VD_SLOT; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ARRAY_SPACE_ALLOC_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2052usize, + concat!("Size of: ", stringify!(tagNET_DVR_ARRAY_SPACE_ALLOC_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ARRAY_SPACE_ALLOC_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVDSlotCount) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ARRAY_SPACE_ALLOC_INFO), + "::", + stringify!(byVDSlotCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ARRAY_SPACE_ALLOC_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVDSlots) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ARRAY_SPACE_ALLOC_INFO), + "::", + stringify!(struVDSlots) + ) + ); +} +pub type NET_DVR_ARRAY_SPACE_ALLOC_INFO = tagNET_DVR_ARRAY_SPACE_ALLOC_INFO; +pub type LPNET_DVR_ARRAY_SPACE_ALLOC_INFO = *mut tagNET_DVR_ARRAY_SPACE_ALLOC_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RAID_ADAPTER_INFO { + pub dwSize: DWORD, + pub struVersion: NET_DVR_ADAPTER_VERSION, + pub bySlotCount: BYTE, + pub bySupportMigrate: BYTE, + pub bySupportExpand: BYTE, + pub bySupportRebuild: BYTE, + pub wSlotSupportType: WORD, + pub wSupportRaidType: WORD, + pub byAutoRebuild: BYTE, + pub byRes: [BYTE; 27usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RAID_ADAPTER_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_DVR_RAID_ADAPTER_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RAID_ADAPTER_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RAID_ADAPTER_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVersion) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RAID_ADAPTER_INFO), + "::", + stringify!(struVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySlotCount) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RAID_ADAPTER_INFO), + "::", + stringify!(bySlotCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportMigrate) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RAID_ADAPTER_INFO), + "::", + stringify!(bySupportMigrate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportExpand) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RAID_ADAPTER_INFO), + "::", + stringify!(bySupportExpand) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportRebuild) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RAID_ADAPTER_INFO), + "::", + stringify!(bySupportRebuild) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSlotSupportType) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RAID_ADAPTER_INFO), + "::", + stringify!(wSlotSupportType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSupportRaidType) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RAID_ADAPTER_INFO), + "::", + stringify!(wSupportRaidType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAutoRebuild) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RAID_ADAPTER_INFO), + "::", + stringify!(byAutoRebuild) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RAID_ADAPTER_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RAID_ADAPTER_INFO = tagNET_DVR_RAID_ADAPTER_INFO; +pub type LPNET_DVR_RAID_ADAPTER_INFO = *mut tagNET_DVR_RAID_ADAPTER_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OPERATE_ARRAY_PARAM { + pub byRaidMode: BYTE, + pub byPDCount: BYTE, + pub wArrayID: WORD, + pub wPDSlots: [WORD; 16usize], + pub byName: [BYTE; 16usize], + pub byInitMode: BYTE, + pub byRes1: BYTE, + pub wPDSlotsPartTwo: [WORD; 8usize], + pub byRes2: [BYTE; 2usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OPERATE_ARRAY_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_OPERATE_ARRAY_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OPERATE_ARRAY_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRaidMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_ARRAY_PARAM), + "::", + stringify!(byRaidMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPDCount) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_ARRAY_PARAM), + "::", + stringify!(byPDCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wArrayID) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_ARRAY_PARAM), + "::", + stringify!(wArrayID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPDSlots) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_ARRAY_PARAM), + "::", + stringify!(wPDSlots) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_ARRAY_PARAM), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInitMode) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_ARRAY_PARAM), + "::", + stringify!(byInitMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 53usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_ARRAY_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPDSlotsPartTwo) as usize - ptr as usize }, + 54usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_ARRAY_PARAM), + "::", + stringify!(wPDSlotsPartTwo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 70usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_ARRAY_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_OPERATE_ARRAY_PARAM = tagNET_DVR_OPERATE_ARRAY_PARAM; +pub type LPNET_DVR_OPERATE_ARRAY_PARAM = *mut tagNET_DVR_OPERATE_ARRAY_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OPERATE_VD_PARAM { + pub wArrayID: WORD, + pub bySlot: BYTE, + pub byInitType: BYTE, + pub dwHCapacity: DWORD, + pub dwLCapacity: DWORD, + pub byName: [BYTE; 16usize], + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OPERATE_VD_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_OPERATE_VD_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OPERATE_VD_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wArrayID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_VD_PARAM), + "::", + stringify!(wArrayID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySlot) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_VD_PARAM), + "::", + stringify!(bySlot) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInitType) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_VD_PARAM), + "::", + stringify!(byInitType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHCapacity) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_VD_PARAM), + "::", + stringify!(dwHCapacity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLCapacity) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_VD_PARAM), + "::", + stringify!(dwLCapacity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_VD_PARAM), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_VD_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_OPERATE_VD_PARAM = tagNET_DVR_OPERATE_VD_PARAM; +pub type LPNET_DVR_OPERATE_VD_PARAM = *mut tagNET_DVR_OPERATE_VD_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SPARE_DISK_PARAM { + pub wPDSlot: WORD, + pub wArrayID: WORD, + pub bySpareType: BYTE, + pub byRes: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SPARE_DISK_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_SPARE_DISK_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SPARE_DISK_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPDSlot) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPARE_DISK_PARAM), + "::", + stringify!(wPDSlot) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wArrayID) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPARE_DISK_PARAM), + "::", + stringify!(wArrayID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpareType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPARE_DISK_PARAM), + "::", + stringify!(bySpareType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPARE_DISK_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SPARE_DISK_PARAM = tagNET_DVR_SPARE_DISK_PARAM; +pub type LPNET_DVR_SPARE_DISK_PARAM = *mut tagNET_DVR_SPARE_DISK_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DECSUBSYSTEMJIONSTATUS { + pub byJoinStatus: BYTE, + pub byJoinSubSystem: BYTE, + pub byJoinDispNum: BYTE, + pub byJoinSubWindowNum: BYTE, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DECSUBSYSTEMJIONSTATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_DECSUBSYSTEMJIONSTATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_DECSUBSYSTEMJIONSTATUS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJoinStatus) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECSUBSYSTEMJIONSTATUS), + "::", + stringify!(byJoinStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJoinSubSystem) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECSUBSYSTEMJIONSTATUS), + "::", + stringify!(byJoinSubSystem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJoinDispNum) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECSUBSYSTEMJIONSTATUS), + "::", + stringify!(byJoinDispNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJoinSubWindowNum) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECSUBSYSTEMJIONSTATUS), + "::", + stringify!(byJoinSubWindowNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECSUBSYSTEMJIONSTATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DECSUBSYSTEMJIONSTATUS = tagNET_DVR_DECSUBSYSTEMJIONSTATUS; +pub type LPNET_DVR_DECSUBSYSTEMJIONSTATUS = tagNET_DVR_DECSUBSYSTEMJIONSTATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SINGLESUBSYSTEMJOININFO { + pub bySubSystemType: BYTE, + pub byConnectStatus: BYTE, + pub byMatrixNum: BYTE, + pub bySubSystemNum: BYTE, + pub struDecSub: [NET_DVR_DECSUBSYSTEMJIONSTATUS; 4usize], + pub byBindStatus: BYTE, + pub byRes: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SINGLESUBSYSTEMJOININFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO), + "::", + stringify!(bySubSystemType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byConnectStatus) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO), + "::", + stringify!(byConnectStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMatrixNum) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO), + "::", + stringify!(byMatrixNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemNum) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO), + "::", + stringify!(bySubSystemNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDecSub) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO), + "::", + stringify!(struDecSub) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBindStatus) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO), + "::", + stringify!(byBindStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SINGLESUBSYSTEMJOININFO = tagNET_DVR_SINGLESUBSYSTEMJOININFO; +pub type LPNET_DVR_SINGLESUBSYSTEMJOININFO = tagNET_DVR_SINGLESUBSYSTEMJOININFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALLDECSUBSYSTEMJOININFO { + pub dwSize: DWORD, + pub struSingleSubSystemJoinInfo: [NET_DVR_SINGLESUBSYSTEMJOININFO; 80usize], + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALLDECSUBSYSTEMJOININFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 3532usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALLDECSUBSYSTEMJOININFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALLDECSUBSYSTEMJOININFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALLDECSUBSYSTEMJOININFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSingleSubSystemJoinInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALLDECSUBSYSTEMJOININFO), + "::", + stringify!(struSingleSubSystemJoinInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3524usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALLDECSUBSYSTEMJOININFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALLDECSUBSYSTEMJOININFO = tagNET_DVR_ALLDECSUBSYSTEMJOININFO; +pub type LPNET_DVR_ALLDECSUBSYSTEMJOININFO = *mut tagNET_DVR_ALLDECSUBSYSTEMJOININFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_NATASSOCIATECFG { + pub dwSize: DWORD, + pub struNatIpAddress: [NET_DVR_NETCFG_V30; 2usize], + pub byNATEnable: BYTE, + pub byNATCfgMode: BYTE, + pub byRes: [BYTE; 62usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NATASSOCIATECFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 3980usize, + concat!("Size of: ", stringify!(tagNET_DVR_NATASSOCIATECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NATASSOCIATECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NATASSOCIATECFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNatIpAddress) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NATASSOCIATECFG), + "::", + stringify!(struNatIpAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNATEnable) as usize - ptr as usize }, + 3916usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NATASSOCIATECFG), + "::", + stringify!(byNATEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNATCfgMode) as usize - ptr as usize }, + 3917usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NATASSOCIATECFG), + "::", + stringify!(byNATCfgMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3918usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NATASSOCIATECFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_NATASSOCIATECFG = tagNET_DVR_NATASSOCIATECFG; +pub type LPNET_DVR_NATASSOCIATECFG = *mut tagNET_DVR_NATASSOCIATECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TEMPERATUREALARMCFG { + pub byEnableTemperatureAlarm: BYTE, + pub byRes1: [BYTE; 3usize], + pub iTemperatureUpLimited: ::std::os::raw::c_int, + pub iTemperatureDownLimited: ::std::os::raw::c_int, + pub struTempHandleType: NET_DVR_HANDLEEXCEPTION_V30, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TEMPERATUREALARMCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 368usize, + concat!("Size of: ", stringify!(tagNET_DVR_TEMPERATUREALARMCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TEMPERATUREALARMCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableTemperatureAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMPERATUREALARMCFG), + "::", + stringify!(byEnableTemperatureAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMPERATUREALARMCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTemperatureUpLimited) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMPERATUREALARMCFG), + "::", + stringify!(iTemperatureUpLimited) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTemperatureDownLimited) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMPERATUREALARMCFG), + "::", + stringify!(iTemperatureDownLimited) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTempHandleType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMPERATUREALARMCFG), + "::", + stringify!(struTempHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMPERATUREALARMCFG), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 336usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMPERATUREALARMCFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_TEMPERATUREALARMCFG = tagNET_DVR_TEMPERATUREALARMCFG; +pub type LPNET_DVR_TEMPERATUREALARMCFG = *mut tagNET_DVR_TEMPERATUREALARMCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BOARDALARMCFG { + pub byEnablePullAlarm: BYTE, + pub byRes1: [BYTE; 3usize], + pub struBoardHandleType: NET_DVR_HANDLEEXCEPTION_V30, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BOARDALARMCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 360usize, + concat!("Size of: ", stringify!(tagNET_DVR_BOARDALARMCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BOARDALARMCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnablePullAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BOARDALARMCFG), + "::", + stringify!(byEnablePullAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BOARDALARMCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBoardHandleType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BOARDALARMCFG), + "::", + stringify!(struBoardHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BOARDALARMCFG), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BOARDALARMCFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_BOARDALARMCFG = tagNET_DVR_BOARDALARMCFG; +pub type LPNET_DVR_BOARDALARMCFG = *mut tagNET_DVR_BOARDALARMCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIDEOPLATFORMALARMCFG { + pub dwSize: DWORD, + pub struTempAlarmCfg: NET_DVR_TEMPERATUREALARMCFG, + pub struBoardAlarmCfg: NET_DVR_BOARDALARMCFG, + pub struHandleException: [NET_DVR_HANDLEEXCEPTION_V30; 16usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEOPLATFORMALARMCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2364usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEOPLATFORMALARMCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VIDEOPLATFORMALARMCFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORMALARMCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTempAlarmCfg) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORMALARMCFG), + "::", + stringify!(struTempAlarmCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBoardAlarmCfg) as usize - ptr as usize }, + 372usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORMALARMCFG), + "::", + stringify!(struBoardAlarmCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHandleException) as usize - ptr as usize }, + 732usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORMALARMCFG), + "::", + stringify!(struHandleException) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2332usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORMALARMCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VIDEOPLATFORMALARMCFG = tagNET_DVR_VIDEOPLATFORMALARMCFG; +pub type LPNET_DVR_VIDEOPLATFORMALARMCFG = *mut tagNET_DVR_VIDEOPLATFORMALARMCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CODESPLITTERASSOCIATE { + pub dwSize: DWORD, + pub struIP: NET_DVR_IPADDR, + pub wPort: WORD, + pub byRes1: [BYTE; 6usize], + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub byChan: BYTE, + pub byRes2: [BYTE; 15usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CODESPLITTERASSOCIATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 220usize, + concat!("Size of: ", stringify!(tagNET_DVR_CODESPLITTERASSOCIATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_CODESPLITTERASSOCIATE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESPLITTERASSOCIATE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESPLITTERASSOCIATE), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESPLITTERASSOCIATE), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESPLITTERASSOCIATE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESPLITTERASSOCIATE), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESPLITTERASSOCIATE), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChan) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESPLITTERASSOCIATE), + "::", + stringify!(byChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 205usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESPLITTERASSOCIATE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CODESPLITTERASSOCIATE = tagNET_DVR_CODESPLITTERASSOCIATE; +pub type LPNET_DVR_CODESPLITTERASSOCIATE = *mut tagNET_DVR_CODESPLITTERASSOCIATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIXSUBSYSTEMINFO { + pub byMatrixNum: BYTE, + pub bySubSystemNum: BYTE, + pub byRes: [BYTE; 14usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIXSUBSYSTEMINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIXSUBSYSTEMINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIXSUBSYSTEMINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMatrixNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXSUBSYSTEMINFO), + "::", + stringify!(byMatrixNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemNum) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXSUBSYSTEMINFO), + "::", + stringify!(bySubSystemNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXSUBSYSTEMINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MATRIXSUBSYSTEMINFO = tagNET_DVR_MATRIXSUBSYSTEMINFO; +pub type LPNET_DVR_MATRIXSUBSYSTEMINFO = *mut tagNET_DVR_MATRIXSUBSYSTEMINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIDEOPLATFORM_ALRAMINFO { + pub dwSize: DWORD, + pub byAlarmType: BYTE, + pub byBoardNum: BYTE, + pub byRes1: [BYTE; 2usize], + pub bySubSystemChan: [BYTE; 8usize], + pub iTemperature: ::std::os::raw::c_int, + pub byMainboardSeq: BYTE, + pub byRes2: [BYTE; 3usize], + pub byFanSequence: [BYTE; 32usize], + pub struInputNote: NET_DVR_MATRIXSUBSYSTEMINFO, + pub struOutputNote: NET_DVR_MATRIXSUBSYSTEMINFO, + pub byRes3: [BYTE; 68usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEOPLATFORM_ALRAMINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 156usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEOPLATFORM_ALRAMINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ALRAMINFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ALRAMINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ALRAMINFO), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBoardNum) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ALRAMINFO), + "::", + stringify!(byBoardNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ALRAMINFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemChan) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ALRAMINFO), + "::", + stringify!(bySubSystemChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTemperature) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ALRAMINFO), + "::", + stringify!(iTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainboardSeq) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ALRAMINFO), + "::", + stringify!(byMainboardSeq) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ALRAMINFO), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFanSequence) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ALRAMINFO), + "::", + stringify!(byFanSequence) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInputNote) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ALRAMINFO), + "::", + stringify!(struInputNote) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOutputNote) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ALRAMINFO), + "::", + stringify!(struOutputNote) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ALRAMINFO), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_VIDEOPLATFORM_ALRAMINFO = tagNET_DVR_VIDEOPLATFORM_ALRAMINFO; +pub type LPNET_DVR_VIDEOPLATFORM_ALRAMINFO = *mut tagNET_DVR_VIDEOPLATFORM_ALRAMINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_INQUEST_CDRW_CFG { + pub dwSize: DWORD, + pub dwNum: DWORD, + pub dwRwSelectPara: [DWORD; 64usize], + pub dwModeSelect: DWORD, + pub byRes: [BYTE; 24usize], + pub dwStartCDRW: DWORD, + pub dwHdExcp: DWORD, + pub dwInterval: DWORD, + pub sLable: [::std::os::raw::c_char; 64usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_INQUEST_CDRW_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 368usize, + concat!("Size of: ", stringify!(NET_DVR_INQUEST_CDRW_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_INQUEST_CDRW_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_CDRW_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_CDRW_CFG), + "::", + stringify!(dwNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRwSelectPara) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_CDRW_CFG), + "::", + stringify!(dwRwSelectPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwModeSelect) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_CDRW_CFG), + "::", + stringify!(dwModeSelect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 268usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_CDRW_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStartCDRW) as usize - ptr as usize }, + 292usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_CDRW_CFG), + "::", + stringify!(dwStartCDRW) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHdExcp) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_CDRW_CFG), + "::", + stringify!(dwHdExcp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInterval) as usize - ptr as usize }, + 300usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_CDRW_CFG), + "::", + stringify!(dwInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLable) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_CDRW_CFG), + "::", + stringify!(sLable) + ) + ); +} +pub type LPNET_DVR_INQUEST_CDRW_CFG = *mut NET_DVR_INQUEST_CDRW_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_INQUEST_FILEINFO { + pub sFileName: [::std::os::raw::c_char; 36usize], + pub dwFileLen: DWORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_INQUEST_FILEINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(NET_DVR_INQUEST_FILEINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_INQUEST_FILEINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_FILEINFO), + "::", + stringify!(sFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileLen) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_FILEINFO), + "::", + stringify!(dwFileLen) + ) + ); +} +pub type LPNET_DVR_INQUEST_FILEINFO = *mut NET_DVR_INQUEST_FILEINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_INQUEST_FILES { + pub dwFileNum: DWORD, + pub struFileInfo: [NET_DVR_INQUEST_FILEINFO; 20usize], + pub dwCDIndex: DWORD, + pub bFinalizeDisc: DWORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_INQUEST_FILES() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 812usize, + concat!("Size of: ", stringify!(NET_DVR_INQUEST_FILES)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_INQUEST_FILES)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_FILES), + "::", + stringify!(dwFileNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFileInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_FILES), + "::", + stringify!(struFileInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCDIndex) as usize - ptr as usize }, + 804usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_FILES), + "::", + stringify!(dwCDIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bFinalizeDisc) as usize - ptr as usize }, + 808usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_FILES), + "::", + stringify!(bFinalizeDisc) + ) + ); +} +pub type LPNET_DVR_INQUEST_FILES = *mut NET_DVR_INQUEST_FILES; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_INQUEST_CDRW { + pub dwEnable: DWORD, + pub dwStatus: DWORD, + pub dwVolumn: DWORD, + pub dwFreeSpace: DWORD, + pub dwTimeLeft: DWORD, + pub byCDType: BYTE, + pub byRes: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_INQUEST_CDRW() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(NET_DVR_INQUEST_CDRW)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_INQUEST_CDRW)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_CDRW), + "::", + stringify!(dwEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_CDRW), + "::", + stringify!(dwStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVolumn) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_CDRW), + "::", + stringify!(dwVolumn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFreeSpace) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_CDRW), + "::", + stringify!(dwFreeSpace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTimeLeft) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_CDRW), + "::", + stringify!(dwTimeLeft) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCDType) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_CDRW), + "::", + stringify!(byCDType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_CDRW), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_INQUEST_CDRW = *mut NET_DVR_INQUEST_CDRW; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_INQUEST_CDRW_STATUS { + pub dwType: DWORD, + pub strCDRWNum: [NET_DVR_INQUEST_CDRW; 4usize], + pub struInquestStartTime: NET_DVR_TIME_EX, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_INQUEST_CDRW_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 124usize, + concat!("Size of: ", stringify!(NET_DVR_INQUEST_CDRW_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_INQUEST_CDRW_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_CDRW_STATUS), + "::", + stringify!(dwType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strCDRWNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_CDRW_STATUS), + "::", + stringify!(strCDRWNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInquestStartTime) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_CDRW_STATUS), + "::", + stringify!(struInquestStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_CDRW_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_INQUEST_CDRW_STATUS = *mut NET_DVR_INQUEST_CDRW_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_INQUEST_PIP_PARAM { + pub byPipChan: BYTE, + pub byRes: [BYTE; 3usize], + pub wTopLeftX: WORD, + pub wTopLeftY: WORD, +} +#[test] +fn bindgen_test_layout_NET_DVR_INQUEST_PIP_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(NET_DVR_INQUEST_PIP_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_INQUEST_PIP_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPipChan) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_PIP_PARAM), + "::", + stringify!(byPipChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_PIP_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTopLeftX) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_PIP_PARAM), + "::", + stringify!(wTopLeftX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTopLeftY) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_PIP_PARAM), + "::", + stringify!(wTopLeftY) + ) + ); +} +pub type LPNET_DVR_INQUEST_PIP_PARAM = *mut NET_DVR_INQUEST_PIP_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_INQUEST_PIP_STATUS { + pub byBaseChan: BYTE, + pub byBackChan: BYTE, + pub byPIPMode: BYTE, + pub byRes: BYTE, + pub strPipPara: [NET_DVR_INQUEST_PIP_PARAM; 3usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_INQUEST_PIP_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28usize, + concat!("Size of: ", stringify!(NET_DVR_INQUEST_PIP_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_INQUEST_PIP_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBaseChan) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_PIP_STATUS), + "::", + stringify!(byBaseChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBackChan) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_PIP_STATUS), + "::", + stringify!(byBackChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPIPMode) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_PIP_STATUS), + "::", + stringify!(byPIPMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_PIP_STATUS), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strPipPara) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_PIP_STATUS), + "::", + stringify!(strPipPara) + ) + ); +} +pub type LPNET_DVR_INQUEST_PIP_STATUS = *mut NET_DVR_INQUEST_PIP_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INQUEST_PIP_PARAM_V40 { + pub byPipChan: BYTE, + pub byRes1: [BYTE; 3usize], + pub wTopLeftX: WORD, + pub wTopLeftY: WORD, + pub wHeight: WORD, + pub wWidth: WORD, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INQUEST_PIP_PARAM_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_INQUEST_PIP_PARAM_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_INQUEST_PIP_PARAM_V40) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPipChan) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_PIP_PARAM_V40), + "::", + stringify!(byPipChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_PIP_PARAM_V40), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTopLeftX) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_PIP_PARAM_V40), + "::", + stringify!(wTopLeftX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTopLeftY) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_PIP_PARAM_V40), + "::", + stringify!(wTopLeftY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHeight) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_PIP_PARAM_V40), + "::", + stringify!(wHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wWidth) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_PIP_PARAM_V40), + "::", + stringify!(wWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_PIP_PARAM_V40), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_INQUEST_PIP_PARAM_V40 = tagNET_DVR_INQUEST_PIP_PARAM_V40; +pub type LPNET_DVR_INQUEST_PIP_PARAM_V40 = *mut tagNET_DVR_INQUEST_PIP_PARAM_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INQUEST_PIP_STATUS_V40 { + pub struStructHead: NET_DVR_STRUCTHEAD, + pub byBaseChan: BYTE, + pub byBackChan: BYTE, + pub byPIPMode: BYTE, + pub byPipCount: BYTE, + pub byPicShowMode: BYTE, + pub byRes: [BYTE; 31usize], + pub strPipPara: [NET_DVR_INQUEST_PIP_PARAM_V40; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INQUEST_PIP_STATUS_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 744usize, + concat!("Size of: ", stringify!(tagNET_DVR_INQUEST_PIP_STATUS_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_INQUEST_PIP_STATUS_V40) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStructHead) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_PIP_STATUS_V40), + "::", + stringify!(struStructHead) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBaseChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_PIP_STATUS_V40), + "::", + stringify!(byBaseChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBackChan) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_PIP_STATUS_V40), + "::", + stringify!(byBackChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPIPMode) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_PIP_STATUS_V40), + "::", + stringify!(byPIPMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPipCount) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_PIP_STATUS_V40), + "::", + stringify!(byPipCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicShowMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_PIP_STATUS_V40), + "::", + stringify!(byPicShowMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_PIP_STATUS_V40), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strPipPara) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_PIP_STATUS_V40), + "::", + stringify!(strPipPara) + ) + ); +} +pub type NET_DVR_INQUEST_PIP_STATUS_V40 = tagNET_DVR_INQUEST_PIP_STATUS_V40; +pub type LPNET_DVR_INQUEST_PIP_STATUS_V40 = *mut tagNET_DVR_INQUEST_PIP_STATUS_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_INQUEST_SECRET_INFO { + pub sSecretKey: [BYTE; 16usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_INQUEST_SECRET_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(NET_DVR_INQUEST_SECRET_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_INQUEST_SECRET_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSecretKey) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_SECRET_INFO), + "::", + stringify!(sSecretKey) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_INQUEST_SECRET_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_INQUEST_SECRET_INFO = *mut NET_DVR_INQUEST_SECRET_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SINGLESCREENCFG { + pub byScreenSeq: BYTE, + pub bySubSystemNum: BYTE, + pub byDispNum: BYTE, + pub byRes: [BYTE; 9usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SINGLESCREENCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_SINGLESCREENCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SINGLESCREENCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScreenSeq) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESCREENCFG), + "::", + stringify!(byScreenSeq) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemNum) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESCREENCFG), + "::", + stringify!(bySubSystemNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispNum) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESCREENCFG), + "::", + stringify!(byDispNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESCREENCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SINGLESCREENCFG = tagNET_DVR_SINGLESCREENCFG; +pub type LPNET_DVR_SINGLESCREENCFG = *mut tagNET_DVR_SINGLESCREENCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BIGSCREENCFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byModeX: BYTE, + pub byModeY: BYTE, + pub byMainDecodeSystem: BYTE, + pub byMainDecoderDispChan: BYTE, + pub byVideoStandard: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwResolution: DWORD, + pub struFollowSingleScreen: [NET_DVR_SINGLESCREENCFG; 100usize], + pub wBigScreenX: WORD, + pub wBigScreenY: WORD, + pub byRes2: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BIGSCREENCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1232usize, + concat!("Size of: ", stringify!(tagNET_DVR_BIGSCREENCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BIGSCREENCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIGSCREENCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIGSCREENCFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byModeX) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIGSCREENCFG), + "::", + stringify!(byModeX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byModeY) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIGSCREENCFG), + "::", + stringify!(byModeY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainDecodeSystem) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIGSCREENCFG), + "::", + stringify!(byMainDecodeSystem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainDecoderDispChan) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIGSCREENCFG), + "::", + stringify!(byMainDecoderDispChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoStandard) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIGSCREENCFG), + "::", + stringify!(byVideoStandard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIGSCREENCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwResolution) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIGSCREENCFG), + "::", + stringify!(dwResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFollowSingleScreen) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIGSCREENCFG), + "::", + stringify!(struFollowSingleScreen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBigScreenX) as usize - ptr as usize }, + 1216usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIGSCREENCFG), + "::", + stringify!(wBigScreenX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBigScreenY) as usize - ptr as usize }, + 1218usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIGSCREENCFG), + "::", + stringify!(wBigScreenY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIGSCREENCFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_BIGSCREENCFG = tagNET_DVR_BIGSCREENCFG; +pub type LPNET_DVR_BIGSCREENCFG = *mut tagNET_DVR_BIGSCREENCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SUBSERVERINFO { + pub bySequence: BYTE, + pub byBelongSubDomain: BYTE, + pub byRes1: [BYTE; 6usize], + pub dwMaxIpcNums: DWORD, + pub struSubMatrixIP: NET_DVR_IPADDR, + pub wSubMatrixPort: WORD, + pub byRes2: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUBSERVERINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 164usize, + concat!("Size of: ", stringify!(tagNET_DVR_SUBSERVERINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SUBSERVERINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySequence) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSERVERINFO), + "::", + stringify!(bySequence) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBelongSubDomain) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSERVERINFO), + "::", + stringify!(byBelongSubDomain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSERVERINFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxIpcNums) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSERVERINFO), + "::", + stringify!(dwMaxIpcNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSubMatrixIP) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSERVERINFO), + "::", + stringify!(struSubMatrixIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSubMatrixPort) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSERVERINFO), + "::", + stringify!(wSubMatrixPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 158usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSERVERINFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SUBSERVERINFO = tagNET_DVR_SUBSERVERINFO; +pub type LPNET_DVR_SUBSERVERINFO = *mut tagNET_DVR_SUBSERVERINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_UNITEDMATRIXINFO { + pub dwSize: DWORD, + pub struDomainInfo: NET_DVR_SUBSERVERINFO, + pub struSubDomainInfo: [NET_DVR_SUBSERVERINFO; 4usize], + pub struMatrixInfo: [NET_DVR_SUBSERVERINFO; 8usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_UNITEDMATRIXINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2168usize, + concat!("Size of: ", stringify!(tagNET_DVR_UNITEDMATRIXINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_UNITEDMATRIXINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNITEDMATRIXINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDomainInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNITEDMATRIXINFO), + "::", + stringify!(struDomainInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSubDomainInfo) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNITEDMATRIXINFO), + "::", + stringify!(struSubDomainInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMatrixInfo) as usize - ptr as usize }, + 824usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNITEDMATRIXINFO), + "::", + stringify!(struMatrixInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNITEDMATRIXINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_UNITEDMATRIXINFO = tagNET_DVR_UNITEDMATRIXINFO; +pub type LPNET_DVR_UNITEDMATRIXINFO = *mut tagNET_DVR_UNITEDMATRIXINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REGCALLBACKPARAM { + pub sDeviceID: [::std::os::raw::c_char; 32usize], + pub sPassword: [::std::os::raw::c_char; 16usize], + pub sSerialNumber: [BYTE; 48usize], + pub dwDeviceType: DWORD, + pub nStatus: BYTE, + pub byNetType: BYTE, + pub byRes: [BYTE; 14usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REGCALLBACKPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 116usize, + concat!("Size of: ", stringify!(tagNET_DVR_REGCALLBACKPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_REGCALLBACKPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDeviceID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGCALLBACKPARAM), + "::", + stringify!(sDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGCALLBACKPARAM), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSerialNumber) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGCALLBACKPARAM), + "::", + stringify!(sSerialNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeviceType) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGCALLBACKPARAM), + "::", + stringify!(dwDeviceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nStatus) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGCALLBACKPARAM), + "::", + stringify!(nStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetType) as usize - ptr as usize }, + 101usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGCALLBACKPARAM), + "::", + stringify!(byNetType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 102usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGCALLBACKPARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_REGCALLBACKPARAM = tagNET_DVR_REGCALLBACKPARAM; +pub type LPNET_DVR_REGCALLBACKPARAM = *mut tagNET_DVR_REGCALLBACKPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOGONREPONSEPARAM { + pub wHeartbeatTime: WORD, + pub byOvertimes: BYTE, + pub byRes: [BYTE; 13usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOGONREPONSEPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOGONREPONSEPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOGONREPONSEPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHeartbeatTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOGONREPONSEPARAM), + "::", + stringify!(wHeartbeatTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOvertimes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOGONREPONSEPARAM), + "::", + stringify!(byOvertimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOGONREPONSEPARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOGONREPONSEPARAM = tagNET_DVR_LOGONREPONSEPARAM; +pub type LPNET_DVR_LOGONREPONSEPARAM = *mut tagNET_DVR_LOGONREPONSEPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PREVIEWPARAM { + pub byTransProtol: BYTE, + pub byTransMode: BYTE, + #[doc = "* ��������ģʽ 0�������� 1��������*/"] + pub struCuIp: NET_DVR_IPADDR, + pub wPort: WORD, + pub wUdpPort: WORD, + pub bySupportQos: BYTE, + pub byNatRequest: BYTE, + pub byPreviewType: BYTE, + pub byRes: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PREVIEWPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 160usize, + concat!("Size of: ", stringify!(tagNET_DVR_PREVIEWPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PREVIEWPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransProtol) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWPARAM), + "::", + stringify!(byTransProtol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransMode) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWPARAM), + "::", + stringify!(byTransMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCuIp) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWPARAM), + "::", + stringify!(struCuIp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 146usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWPARAM), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wUdpPort) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWPARAM), + "::", + stringify!(wUdpPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportQos) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWPARAM), + "::", + stringify!(bySupportQos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNatRequest) as usize - ptr as usize }, + 151usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWPARAM), + "::", + stringify!(byNatRequest) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPreviewType) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWPARAM), + "::", + stringify!(byPreviewType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 153usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWPARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PREVIEWPARAM = tagNET_DVR_PREVIEWPARAM; +pub type LPNET_DVR_PREVIEWPARAM = *mut tagNET_DVR_PREVIEWPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEVICENATINFO { + pub struPuIp: NET_DVR_IPADDR, + pub wOuterPort: WORD, + pub wInterPort: WORD, + pub nSessionID: DWORD, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEVICENATINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 156usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEVICENATINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEVICENATINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPuIp) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICENATINFO), + "::", + stringify!(struPuIp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wOuterPort) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICENATINFO), + "::", + stringify!(wOuterPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInterPort) as usize - ptr as usize }, + 146usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICENATINFO), + "::", + stringify!(wInterPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nSessionID) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICENATINFO), + "::", + stringify!(nSessionID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICENATINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DEVICENATINFO = tagNET_DVR_DEVICENATINFO; +pub type LPNET_DVR_DEVICENATINFO = *mut tagNET_DVR_DEVICENATINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PREVIEWCALLBACKPARAM { + pub lChannel: LONG, + pub nLinkProtocol: BYTE, + pub nTransMode: BYTE, + pub byPreviewType: BYTE, + pub byRes: [BYTE; 5usize], + pub nSessionID: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PREVIEWCALLBACKPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_PREVIEWCALLBACKPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PREVIEWCALLBACKPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWCALLBACKPARAM), + "::", + stringify!(lChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nLinkProtocol) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWCALLBACKPARAM), + "::", + stringify!(nLinkProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nTransMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWCALLBACKPARAM), + "::", + stringify!(nTransMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPreviewType) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWCALLBACKPARAM), + "::", + stringify!(byPreviewType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWCALLBACKPARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nSessionID) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWCALLBACKPARAM), + "::", + stringify!(nSessionID) + ) + ); +} +pub type NET_DVR_PREVIEWCALLBACKPARAM = tagNET_DVR_PREVIEWCALLBACKPARAM; +pub type LPNET_DVR_PREVIEWCALLBACKPARAM = *mut tagNET_DVR_PREVIEWCALLBACKPARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_PLAYBACKREQUESTPARAM { + pub byPlayBackMode: BYTE, + pub byRes1: [BYTE; 3usize], + pub playbackmode: tagNET_DVR_PLAYBACKREQUESTPARAM__bindgen_ty_1, + pub struCuIp: NET_DVR_IPADDR, + pub wPort: WORD, + pub byRes2: [BYTE; 2usize], + pub dwSessionID: DWORD, + pub byRes3: [BYTE; 16usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_PLAYBACKREQUESTPARAM__bindgen_ty_1 { + pub sFileName: [::std::os::raw::c_char; 100usize], + pub struPlayBackbyTime: tagNET_DVR_PLAYBACKREQUESTPARAM__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLAYBACKREQUESTPARAM__bindgen_ty_1__bindgen_ty_1 { + pub lChannel: LONG, + pub struStartTime: NET_DVR_TIME, + pub struStopTime: NET_DVR_TIME, + pub byRes: [BYTE; 48usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLAYBACKREQUESTPARAM__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_PLAYBACKREQUESTPARAM__bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 100usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_PLAYBACKREQUESTPARAM__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PLAYBACKREQUESTPARAM__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBACKREQUESTPARAM__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(lChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBACKREQUESTPARAM__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBACKREQUESTPARAM__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBACKREQUESTPARAM__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLAYBACKREQUESTPARAM__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 100usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_PLAYBACKREQUESTPARAM__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PLAYBACKREQUESTPARAM__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBACKREQUESTPARAM__bindgen_ty_1), + "::", + stringify!(sFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlayBackbyTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBACKREQUESTPARAM__bindgen_ty_1), + "::", + stringify!(struPlayBackbyTime) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLAYBACKREQUESTPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 272usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLAYBACKREQUESTPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PLAYBACKREQUESTPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlayBackMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBACKREQUESTPARAM), + "::", + stringify!(byPlayBackMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBACKREQUESTPARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).playbackmode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBACKREQUESTPARAM), + "::", + stringify!(playbackmode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCuIp) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBACKREQUESTPARAM), + "::", + stringify!(struCuIp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 248usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBACKREQUESTPARAM), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 250usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBACKREQUESTPARAM), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSessionID) as usize - ptr as usize }, + 252usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBACKREQUESTPARAM), + "::", + stringify!(dwSessionID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBACKREQUESTPARAM), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_PLAYBACKREQUESTPARAM = tagNET_DVR_PLAYBACKREQUESTPARAM; +pub type LPNET_DVR_PLAYBACKREQUESTPARAM = *mut tagNET_DVR_PLAYBACKREQUESTPARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_PLAYBACKCALLBACKPARAM { + pub byPlayBackMode: BYTE, + pub byRes1: [BYTE; 3usize], + pub playbackmode: tagNET_DVR_PLAYBACKCALLBACKPARAM__bindgen_ty_1, + pub nSessionID: DWORD, + pub byRes2: [BYTE; 44usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_PLAYBACKCALLBACKPARAM__bindgen_ty_1 { + pub sFileName: [::std::os::raw::c_char; 100usize], + pub struPlayBackbyTime: tagNET_DVR_PLAYBACKCALLBACKPARAM__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLAYBACKCALLBACKPARAM__bindgen_ty_1__bindgen_ty_1 { + pub lChannel: LONG, + pub struStartTime: NET_DVR_TIME, + pub struStopTime: NET_DVR_TIME, + pub byRes: [BYTE; 48usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLAYBACKCALLBACKPARAM__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_PLAYBACKCALLBACKPARAM__bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 100usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_PLAYBACKCALLBACKPARAM__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PLAYBACKCALLBACKPARAM__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBACKCALLBACKPARAM__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(lChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBACKCALLBACKPARAM__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBACKCALLBACKPARAM__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBACKCALLBACKPARAM__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLAYBACKCALLBACKPARAM__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 100usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_PLAYBACKCALLBACKPARAM__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PLAYBACKCALLBACKPARAM__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBACKCALLBACKPARAM__bindgen_ty_1), + "::", + stringify!(sFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlayBackbyTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBACKCALLBACKPARAM__bindgen_ty_1), + "::", + stringify!(struPlayBackbyTime) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLAYBACKCALLBACKPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 152usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLAYBACKCALLBACKPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PLAYBACKCALLBACKPARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlayBackMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBACKCALLBACKPARAM), + "::", + stringify!(byPlayBackMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBACKCALLBACKPARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).playbackmode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBACKCALLBACKPARAM), + "::", + stringify!(playbackmode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nSessionID) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBACKCALLBACKPARAM), + "::", + stringify!(nSessionID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBACKCALLBACKPARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PLAYBACKCALLBACKPARAM = tagNET_DVR_PLAYBACKCALLBACKPARAM; +pub type LPNET_DVR_PLAYBACKCALLBACKPARAM = *mut tagNET_DVR_PLAYBACKCALLBACKPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VOICEREQUESETPARAM { + pub nVoiceChannel: BYTE, + pub byRes1: [BYTE; 3usize], + pub struCuIp: NET_DVR_IPADDR, + pub wPort: WORD, + pub byRes2: [BYTE; 10usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VOICEREQUESETPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 160usize, + concat!("Size of: ", stringify!(tagNET_DVR_VOICEREQUESETPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VOICEREQUESETPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nVoiceChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOICEREQUESETPARAM), + "::", + stringify!(nVoiceChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOICEREQUESETPARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCuIp) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOICEREQUESETPARAM), + "::", + stringify!(struCuIp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOICEREQUESETPARAM), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOICEREQUESETPARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_VOICEREQUESTPARAM = tagNET_DVR_VOICEREQUESETPARAM; +pub type LPNET_DVR_VOICEREQUESTPARAM = *mut tagNET_DVR_VOICEREQUESETPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMSETUPREQUESETPARAM { + pub struCuIp: NET_DVR_IPADDR, + pub wPort: WORD, + pub byRes: [BYTE; 2usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMSETUPREQUESETPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMSETUPREQUESETPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMSETUPREQUESETPARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCuIp) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSETUPREQUESETPARAM), + "::", + stringify!(struCuIp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSETUPREQUESETPARAM), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 146usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSETUPREQUESETPARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMSETUPREQUESTPARAM = tagNET_DVR_ALARMSETUPREQUESETPARAM; +pub type LPNET_DVR_ALARMSETUPREQUESTPARAM = *mut tagNET_DVR_ALARMSETUPREQUESETPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GPSALARMINFO { + pub byDeviceID: [BYTE; 32usize], + pub struGpsTime: NET_DVR_TIME_EX, + pub dwLongitude: DWORD, + pub dwLatitude: DWORD, + pub iTimeZone: ::std::os::raw::c_int, + pub dwDirection: DWORD, + pub wSatellites: WORD, + pub wPrecision: WORD, + pub dwHeight: DWORD, + pub dwGPSSeq: DWORD, + pub wSpeed: WORD, + pub sDirection: [::std::os::raw::c_char; 2usize], + pub byLocateMode: BYTE, + pub byRes: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GPSALARMINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_GPSALARMINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GPSALARMINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPSALARMINFO), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGpsTime) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPSALARMINFO), + "::", + stringify!(struGpsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLongitude) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPSALARMINFO), + "::", + stringify!(dwLongitude) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLatitude) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPSALARMINFO), + "::", + stringify!(dwLatitude) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTimeZone) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPSALARMINFO), + "::", + stringify!(iTimeZone) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDirection) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPSALARMINFO), + "::", + stringify!(dwDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSatellites) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPSALARMINFO), + "::", + stringify!(wSatellites) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPrecision) as usize - ptr as usize }, + 58usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPSALARMINFO), + "::", + stringify!(wPrecision) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHeight) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPSALARMINFO), + "::", + stringify!(dwHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGPSSeq) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPSALARMINFO), + "::", + stringify!(dwGPSSeq) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSpeed) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPSALARMINFO), + "::", + stringify!(wSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDirection) as usize - ptr as usize }, + 70usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPSALARMINFO), + "::", + stringify!(sDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocateMode) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPSALARMINFO), + "::", + stringify!(byLocateMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 73usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPSALARMINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GPSALARMINFO = tagNET_DVR_GPSALARMINFO; +pub type LPNET_DVR_GPSALARMINFO = *mut tagNET_DVR_GPSALARMINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PICINFO { + pub dwSize: DWORD, + pub byChanIndex: BYTE, + pub byRes1: [BYTE; 3usize], + pub byDeviceID: [BYTE; 32usize], + pub byAbsTime: [BYTE; 32usize], + pub dwPicLen: DWORD, + pub byRes2: [BYTE; 32usize], + pub pPicBuffer: *mut BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PICINFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 120usize, + concat!("Size of: ", stringify!(tagNET_DVR_PICINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PICINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICINFO), + "::", + stringify!(byChanIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICINFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICINFO), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAbsTime) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICINFO), + "::", + stringify!(byAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicLen) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICINFO), + "::", + stringify!(dwPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICINFO), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPicBuffer) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICINFO), + "::", + stringify!(pPicBuffer) + ) + ); +} +pub type NET_DVR_PICTUREINFO = tagNET_DVR_PICINFO; +pub type LPNET_DVR_PICTUREINFO = *mut tagNET_DVR_PICINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CMSPARAM { + pub dwSize: DWORD, + pub struCmsAddr: NET_DVR_IPADDR, + pub wCmsPort: WORD, + pub byRes1: [BYTE; 2usize], + pub sDeviceID: [BYTE; 32usize], + pub byPassword: [BYTE; 16usize], + pub struPicServerAddr: NET_DVR_IPADDR, + pub wPicServerPort: WORD, + pub wCmsUdpPort: WORD, + pub byRes2: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CMSPARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 360usize, + concat!("Size of: ", stringify!(tagNET_DVR_CMSPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CMSPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMSPARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCmsAddr) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMSPARAM), + "::", + stringify!(struCmsAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCmsPort) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMSPARAM), + "::", + stringify!(wCmsPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMSPARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDeviceID) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMSPARAM), + "::", + stringify!(sDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPassword) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMSPARAM), + "::", + stringify!(byPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPicServerAddr) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMSPARAM), + "::", + stringify!(struPicServerAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPicServerPort) as usize - ptr as usize }, + 344usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMSPARAM), + "::", + stringify!(wPicServerPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCmsUdpPort) as usize - ptr as usize }, + 346usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMSPARAM), + "::", + stringify!(wCmsUdpPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 348usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMSPARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CMSPARAM = tagNET_DVR_CMSPARAM; +pub type LPNET_DVR_CMSPARAM = *mut tagNET_DVR_CMSPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_QOSPARAM { + pub wMaxBitUL: WORD, + pub wMaxBitDL: WORD, + pub byTrafficClass: BYTE, + pub byRes: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_QOSPARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_QOSPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_QOSPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMaxBitUL) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QOSPARAM), + "::", + stringify!(wMaxBitUL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMaxBitDL) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QOSPARAM), + "::", + stringify!(wMaxBitDL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrafficClass) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QOSPARAM), + "::", + stringify!(byTrafficClass) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QOSPARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_QOSPARAM = tagNET_DVR_QOSPARAM; +pub type LPNET_DVR_QOSPARAM = *mut tagNET_DVR_QOSPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PPPDPARAM { + pub byDialNum: [BYTE; 32usize], + pub byUserName: [BYTE; 32usize], + pub byPassword: [BYTE; 32usize], + pub byApn: [BYTE; 32usize], + pub struLocalIp: NET_DVR_IPADDR, + pub struRemoteIp: NET_DVR_IPADDR, + pub wMtuSize: WORD, + pub byVerifyProtocal: BYTE, + pub byRes: [BYTE; 25usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PPPDPARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 444usize, + concat!("Size of: ", stringify!(tagNET_DVR_PPPDPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PPPDPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDialNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PPPDPARAM), + "::", + stringify!(byDialNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUserName) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PPPDPARAM), + "::", + stringify!(byUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPassword) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PPPDPARAM), + "::", + stringify!(byPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byApn) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PPPDPARAM), + "::", + stringify!(byApn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLocalIp) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PPPDPARAM), + "::", + stringify!(struLocalIp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRemoteIp) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PPPDPARAM), + "::", + stringify!(struRemoteIp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMtuSize) as usize - ptr as usize }, + 416usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PPPDPARAM), + "::", + stringify!(wMtuSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVerifyProtocal) as usize - ptr as usize }, + 418usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PPPDPARAM), + "::", + stringify!(byVerifyProtocal) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 419usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PPPDPARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PPPDPARAM = tagNET_DVR_PPPDPARAM; +pub type LPNET_DVR_PPPDPARAM = *mut tagNET_DVR_PPPDPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DIALPARAM { + pub dwSize: DWORD, + pub bEnable3G: BYTE, + pub byDialMethod: BYTE, + pub bySwitchMethod: BYTE, + pub byEnaAlarmInDial: BYTE, + pub byRes1: [BYTE; 10usize], + pub wOffLineTime: WORD, + pub struPppdParam: NET_DVR_PPPDPARAM, + pub struQosParam: NET_DVR_QOSPARAM, + pub byUimNumber: [BYTE; 32usize], + pub byRes2: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DIALPARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 532usize, + concat!("Size of: ", stringify!(tagNET_DVR_DIALPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DIALPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIALPARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bEnable3G) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIALPARAM), + "::", + stringify!(bEnable3G) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDialMethod) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIALPARAM), + "::", + stringify!(byDialMethod) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySwitchMethod) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIALPARAM), + "::", + stringify!(bySwitchMethod) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnaAlarmInDial) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIALPARAM), + "::", + stringify!(byEnaAlarmInDial) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIALPARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wOffLineTime) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIALPARAM), + "::", + stringify!(wOffLineTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPppdParam) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIALPARAM), + "::", + stringify!(struPppdParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struQosParam) as usize - ptr as usize }, + 464usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIALPARAM), + "::", + stringify!(struQosParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUimNumber) as usize - ptr as usize }, + 476usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIALPARAM), + "::", + stringify!(byUimNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 508usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIALPARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DIALPARAM = tagNET_DVR_DIALPARAM; +pub type LPNET_DVR_DIALPARAM = *mut tagNET_DVR_DIALPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DIALREQUEST { + pub byConnNum: BYTE, + pub byNetType: BYTE, + pub byRes: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DIALREQUEST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_DIALREQUEST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DIALREQUEST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byConnNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIALREQUEST), + "::", + stringify!(byConnNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIALREQUEST), + "::", + stringify!(byNetType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIALREQUEST), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DIALREQUEST = tagNET_DVR_DIALREQUEST; +pub type LPNET_DVR_DIALREQUEST = *mut tagNET_DVR_DIALREQUEST; +pub const UIM_INFO_UIM_UNKNOWN: UIM_INFO = 0; +pub const UIM_INFO_UIM_VALID: UIM_INFO = 1; +pub const UIM_INFO_UIM_NOVALID: UIM_INFO = 4; +pub const UIM_INFO_UIM_ROAM: UIM_INFO = 11; +pub const UIM_INFO_UIM_NOEXIST: UIM_INFO = 255; +pub type UIM_INFO = ::std::os::raw::c_uint; +pub const REAL_MODE_RMODE_CDMA1X: REAL_MODE = 12; +pub const REAL_MODE_RMODE_EVDO: REAL_MODE = 14; +pub const REAL_MODE_RMODE_CDMAHYBRID: REAL_MODE = 18; +pub const REAL_MODE_RMODE_GSM: REAL_MODE = 21; +pub const REAL_MODE_RMODE_GPRS: REAL_MODE = 22; +pub const REAL_MODE_RMODE_EDGE: REAL_MODE = 23; +pub const REAL_MODE_RMODE_WCDMA: REAL_MODE = 24; +pub const REAL_MODE_RMODE_HSDPA: REAL_MODE = 25; +pub const REAL_MODE_RMODE_HSUPA: REAL_MODE = 26; +pub const REAL_MODE_RMODE_HSPA: REAL_MODE = 27; +pub const REAL_MODE_RMODE_TGSM: REAL_MODE = 31; +pub const REAL_MODE_RMODE_TGPRS: REAL_MODE = 32; +pub const REAL_MODE_RMODE_TEDGE: REAL_MODE = 33; +pub const REAL_MODE_RMODE_TDSCDMA: REAL_MODE = 34; +pub const REAL_MODE_RMODE_TDHSDPA: REAL_MODE = 35; +pub const REAL_MODE_RMODE_TDHSUPA: REAL_MODE = 36; +pub const REAL_MODE_RMODE_TDHSPA: REAL_MODE = 37; +pub type REAL_MODE = ::std::os::raw::c_uint; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DIALSTATUS { + pub byRealMode: BYTE, + pub byUimCard: BYTE, + pub byRes1: [BYTE; 6usize], + pub dwSignal: DWORD, + pub dwDialStatus: DWORD, + pub struLocalIp: NET_DVR_IPADDR, + pub struRemoteIp: NET_DVR_IPADDR, + pub struNetMask: NET_DVR_IPADDR, + pub struDns: NET_DVR_IPADDR, + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DIALSTATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 608usize, + concat!("Size of: ", stringify!(tagNET_DVR_DIALSTATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DIALSTATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRealMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIALSTATUS), + "::", + stringify!(byRealMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUimCard) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIALSTATUS), + "::", + stringify!(byUimCard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIALSTATUS), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSignal) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIALSTATUS), + "::", + stringify!(dwSignal) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDialStatus) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIALSTATUS), + "::", + stringify!(dwDialStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLocalIp) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIALSTATUS), + "::", + stringify!(struLocalIp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRemoteIp) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIALSTATUS), + "::", + stringify!(struRemoteIp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNetMask) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIALSTATUS), + "::", + stringify!(struNetMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDns) as usize - ptr as usize }, + 448usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIALSTATUS), + "::", + stringify!(struDns) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 592usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIALSTATUS), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DIALSTATUS = tagNET_DVR_DIALSTATUS; +pub type LPNET_DVR_DIALSTATUS = *mut tagNET_DVR_DIALSTATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PHONECFG { + pub byAllowList: [BYTE; 32usize], + pub byPhonePerssion: [BYTE; 32usize], + pub byAlarmHandler: [BYTE; 32usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PHONECFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 224usize, + concat!("Size of: ", stringify!(tagNET_DVR_PHONECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PHONECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAllowList) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONECFG), + "::", + stringify!(byAllowList) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPhonePerssion) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONECFG), + "::", + stringify!(byPhonePerssion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmHandler) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONECFG), + "::", + stringify!(byAlarmHandler) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONECFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PHONECFG = tagNET_DVR_PHONECFG; +pub type LPNET_DVR_PHONECFG = *mut tagNET_DVR_PHONECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SMSRELATIVEPARAM { + pub dwSize: DWORD, + pub bEnableSmsAlarm: BYTE, + pub byRes1: [BYTE; 7usize], + pub struAllowList: [NET_DVR_PHONECFG; 8usize], + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SMSRELATIVEPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1836usize, + concat!("Size of: ", stringify!(tagNET_DVR_SMSRELATIVEPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SMSRELATIVEPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMSRELATIVEPARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bEnableSmsAlarm) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMSRELATIVEPARAM), + "::", + stringify!(bEnableSmsAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMSRELATIVEPARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAllowList) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMSRELATIVEPARAM), + "::", + stringify!(struAllowList) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1804usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMSRELATIVEPARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SMSRELATIVEPARAM = tagNET_DVR_SMSRELATIVEPARAM; +pub type LPNET_DVR_SMSRELATIVEPARAM = *mut tagNET_DVR_SMSRELATIVEPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PHONECFG_V50 { + pub byAllowList: [BYTE; 32usize], + pub byPhonePerssion: [BYTE; 32usize], + pub byAlarmHandler: [BYTE; 32usize], + pub byAcsPassword: [BYTE; 16usize], + pub byName: [BYTE; 32usize], + pub byRes: [BYTE; 80usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PHONECFG_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 224usize, + concat!("Size of: ", stringify!(tagNET_DVR_PHONECFG_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PHONECFG_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAllowList) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONECFG_V50), + "::", + stringify!(byAllowList) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPhonePerssion) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONECFG_V50), + "::", + stringify!(byPhonePerssion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmHandler) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONECFG_V50), + "::", + stringify!(byAlarmHandler) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAcsPassword) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONECFG_V50), + "::", + stringify!(byAcsPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONECFG_V50), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONECFG_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PHONECFG_V50 = tagNET_DVR_PHONECFG_V50; +pub type LPNET_DVR_PHONECFG_V50 = *mut tagNET_DVR_PHONECFG_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SMSRELATIVEPARAM_V50 { + pub dwSize: DWORD, + pub bEnableSmsAlarm: BYTE, + pub byRes1: [BYTE; 7usize], + pub struAllowList: [NET_DVR_PHONECFG_V50; 32usize], + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SMSRELATIVEPARAM_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 7212usize, + concat!("Size of: ", stringify!(tagNET_DVR_SMSRELATIVEPARAM_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SMSRELATIVEPARAM_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMSRELATIVEPARAM_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bEnableSmsAlarm) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMSRELATIVEPARAM_V50), + "::", + stringify!(bEnableSmsAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMSRELATIVEPARAM_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAllowList) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMSRELATIVEPARAM_V50), + "::", + stringify!(struAllowList) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 7180usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMSRELATIVEPARAM_V50), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SMSRELATIVEPARAM_V50 = tagNET_DVR_SMSRELATIVEPARAM_V50; +pub type LPNET_DVR_SMSRELATIVEPARAM_V50 = *mut tagNET_DVR_SMSRELATIVEPARAM_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ACS_EVENT_COND { + pub dwSize: DWORD, + pub dwMajor: DWORD, + pub dwMinor: DWORD, + pub struStartTime: NET_DVR_TIME, + pub struEndTime: NET_DVR_TIME, + pub byCardNo: [BYTE; 32usize], + pub byName: [BYTE; 32usize], + pub byPicEnable: BYTE, + pub byTimeType: BYTE, + pub byRes2: [BYTE; 2usize], + pub dwBeginSerialNo: DWORD, + pub dwEndSerialNo: DWORD, + pub dwIOTChannelNo: DWORD, + pub wInductiveEventType: WORD, + pub bySearchType: BYTE, + pub byEventAttribute: BYTE, + pub szMonitorID: [::std::os::raw::c_char; 64usize], + pub byEmployeeNo: [BYTE; 32usize], + pub byRes: [BYTE; 140usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ACS_EVENT_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 380usize, + concat!("Size of: ", stringify!(tagNET_DVR_ACS_EVENT_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ACS_EVENT_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMajor) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_COND), + "::", + stringify!(dwMajor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMinor) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_COND), + "::", + stringify!(dwMinor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_COND), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_COND), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_COND), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_COND), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicEnable) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_COND), + "::", + stringify!(byPicEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeType) as usize - ptr as usize }, + 125usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_COND), + "::", + stringify!(byTimeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 126usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_COND), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBeginSerialNo) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_COND), + "::", + stringify!(dwBeginSerialNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEndSerialNo) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_COND), + "::", + stringify!(dwEndSerialNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIOTChannelNo) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_COND), + "::", + stringify!(dwIOTChannelNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInductiveEventType) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_COND), + "::", + stringify!(wInductiveEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySearchType) as usize - ptr as usize }, + 142usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_COND), + "::", + stringify!(bySearchType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEventAttribute) as usize - ptr as usize }, + 143usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_COND), + "::", + stringify!(byEventAttribute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szMonitorID) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_COND), + "::", + stringify!(szMonitorID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEmployeeNo) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_COND), + "::", + stringify!(byEmployeeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ACS_EVENT_COND = tagNET_DVR_ACS_EVENT_COND; +pub type LPNET_DVR_ACS_EVENT_COND = *mut tagNET_DVR_ACS_EVENT_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ACS_EVENT_DETAIL { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub byCardType: BYTE, + pub byAllowListNo: BYTE, + pub byReportChannel: BYTE, + pub byCardReaderKind: BYTE, + pub dwCardReaderNo: DWORD, + pub dwDoorNo: DWORD, + pub dwVerifyNo: DWORD, + pub dwAlarmInNo: DWORD, + pub dwAlarmOutNo: DWORD, + pub dwCaseSensorNo: DWORD, + pub dwRs485No: DWORD, + pub dwMultiCardGroupNo: DWORD, + pub wAccessChannel: WORD, + pub byDeviceNo: BYTE, + pub byDistractControlNo: BYTE, + pub dwEmployeeNo: DWORD, + pub wLocalControllerID: WORD, + pub byInternetAccess: BYTE, + pub byType: BYTE, + pub byMACAddr: [BYTE; 6usize], + pub bySwipeCardType: BYTE, + pub byEventAttribute: BYTE, + pub dwSerialNo: DWORD, + pub byChannelControllerID: BYTE, + pub byChannelControllerLampID: BYTE, + pub byChannelControllerIRAdaptorID: BYTE, + pub byChannelControllerIREmitterID: BYTE, + pub dwRecordChannelNum: DWORD, + pub pRecordChannelData: *mut ::std::os::raw::c_char, + pub byUserType: BYTE, + pub byCurrentVerifyMode: BYTE, + pub byAttendanceStatus: BYTE, + pub byStatusValue: BYTE, + pub byEmployeeNo: [BYTE; 32usize], + pub byRes1: BYTE, + pub byMask: BYTE, + pub byThermometryUnit: BYTE, + pub byIsAbnomalTemperature: BYTE, + pub fCurrTemperature: f32, + pub struRegionCoordinates: NET_VCA_POINT, + pub wXCoordinate: WORD, + pub wYCoordinate: WORD, + pub wWidth: WORD, + pub wHeight: WORD, + pub byHealthCode: BYTE, + pub byNADCode: BYTE, + pub byTravelCode: BYTE, + pub byVaccineStatus: BYTE, + pub byRes: [BYTE; 36usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ACS_EVENT_DETAIL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 216usize, + concat!("Size of: ", stringify!(tagNET_DVR_ACS_EVENT_DETAIL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ACS_EVENT_DETAIL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byCardType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAllowListNo) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byAllowListNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReportChannel) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byReportChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardReaderKind) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byCardReaderKind) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardReaderNo) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(dwCardReaderNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDoorNo) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(dwDoorNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVerifyNo) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(dwVerifyNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmInNo) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(dwAlarmInNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmOutNo) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(dwAlarmOutNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCaseSensorNo) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(dwCaseSensorNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRs485No) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(dwRs485No) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMultiCardGroupNo) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(dwMultiCardGroupNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAccessChannel) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(wAccessChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceNo) as usize - ptr as usize }, + 74usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byDeviceNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDistractControlNo) as usize - ptr as usize }, + 75usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byDistractControlNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEmployeeNo) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(dwEmployeeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalControllerID) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(wLocalControllerID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInternetAccess) as usize - ptr as usize }, + 82usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byInternetAccess) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 83usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMACAddr) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byMACAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySwipeCardType) as usize - ptr as usize }, + 90usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(bySwipeCardType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEventAttribute) as usize - ptr as usize }, + 91usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byEventAttribute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSerialNo) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(dwSerialNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannelControllerID) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byChannelControllerID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannelControllerLampID) as usize - ptr as usize }, + 97usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byChannelControllerLampID) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byChannelControllerIRAdaptorID) as usize - ptr as usize + }, + 98usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byChannelControllerIRAdaptorID) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byChannelControllerIREmitterID) as usize - ptr as usize + }, + 99usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byChannelControllerIREmitterID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordChannelNum) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(dwRecordChannelNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pRecordChannelData) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(pRecordChannelData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUserType) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byUserType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCurrentVerifyMode) as usize - ptr as usize }, + 113usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byCurrentVerifyMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAttendanceStatus) as usize - ptr as usize }, + 114usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byAttendanceStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatusValue) as usize - ptr as usize }, + 115usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byStatusValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEmployeeNo) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byEmployeeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMask) as usize - ptr as usize }, + 149usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byThermometryUnit) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byThermometryUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsAbnomalTemperature) as usize - ptr as usize }, + 151usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byIsAbnomalTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fCurrTemperature) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(fCurrTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegionCoordinates) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(struRegionCoordinates) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wXCoordinate) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(wXCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wYCoordinate) as usize - ptr as usize }, + 166usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(wYCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wWidth) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(wWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHeight) as usize - ptr as usize }, + 170usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(wHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHealthCode) as usize - ptr as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byHealthCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNADCode) as usize - ptr as usize }, + 173usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byNADCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTravelCode) as usize - ptr as usize }, + 174usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byTravelCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVaccineStatus) as usize - ptr as usize }, + 175usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byVaccineStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_DETAIL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ACS_EVENT_DETAIL = tagNET_DVR_ACS_EVENT_DETAIL; +pub type LPNET_DVR_ACS_EVENT_DETAIL = *mut tagNET_DVR_ACS_EVENT_DETAIL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ACS_EVENT_CFG { + pub dwSize: DWORD, + pub dwMajor: DWORD, + pub dwMinor: DWORD, + pub struTime: NET_DVR_TIME, + pub sNetUser: [BYTE; 16usize], + pub struRemoteHostAddr: NET_DVR_IPADDR, + pub struAcsEventInfo: NET_DVR_ACS_EVENT_DETAIL, + pub dwPicDataLen: DWORD, + pub pPicData: *mut ::std::os::raw::c_char, + pub wInductiveEventType: WORD, + pub byTimeType: BYTE, + pub byRes1: BYTE, + pub dwQRCodeInfoLen: DWORD, + pub dwVisibleLightDataLen: DWORD, + pub dwThermalDataLen: DWORD, + pub pQRCodeInfo: *mut ::std::os::raw::c_char, + pub pVisibleLightData: *mut ::std::os::raw::c_char, + pub pThermalData: *mut ::std::os::raw::c_char, + pub byRes: [BYTE; 36usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ACS_EVENT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(tagNET_DVR_ACS_EVENT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ACS_EVENT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMajor) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_CFG), + "::", + stringify!(dwMajor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMinor) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_CFG), + "::", + stringify!(dwMinor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_CFG), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sNetUser) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_CFG), + "::", + stringify!(sNetUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRemoteHostAddr) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_CFG), + "::", + stringify!(struRemoteHostAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAcsEventInfo) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_CFG), + "::", + stringify!(struAcsEventInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicDataLen) as usize - ptr as usize }, + 416usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_CFG), + "::", + stringify!(dwPicDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPicData) as usize - ptr as usize }, + 424usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_CFG), + "::", + stringify!(pPicData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInductiveEventType) as usize - ptr as usize }, + 432usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_CFG), + "::", + stringify!(wInductiveEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeType) as usize - ptr as usize }, + 434usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_CFG), + "::", + stringify!(byTimeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 435usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwQRCodeInfoLen) as usize - ptr as usize }, + 436usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_CFG), + "::", + stringify!(dwQRCodeInfoLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVisibleLightDataLen) as usize - ptr as usize }, + 440usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_CFG), + "::", + stringify!(dwVisibleLightDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwThermalDataLen) as usize - ptr as usize }, + 444usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_CFG), + "::", + stringify!(dwThermalDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pQRCodeInfo) as usize - ptr as usize }, + 448usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_CFG), + "::", + stringify!(pQRCodeInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pVisibleLightData) as usize - ptr as usize }, + 456usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_CFG), + "::", + stringify!(pVisibleLightData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pThermalData) as usize - ptr as usize }, + 464usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_CFG), + "::", + stringify!(pThermalData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 472usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ACS_EVENT_CFG = tagNET_DVR_ACS_EVENT_CFG; +pub type LPNET_DVR_ACS_EVENT_CFG = *mut tagNET_DVR_ACS_EVENT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SMSLISTINFO { + pub dwSize: DWORD, + pub dwTotalSmsNum: DWORD, + pub byRes: [BYTE; 8usize], + pub pSmsParam: *mut BYTE, + pub dwBufLen: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SMSLISTINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_DVR_SMSLISTINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SMSLISTINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMSLISTINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotalSmsNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMSLISTINFO), + "::", + stringify!(dwTotalSmsNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMSLISTINFO), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pSmsParam) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMSLISTINFO), + "::", + stringify!(pSmsParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBufLen) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMSLISTINFO), + "::", + stringify!(dwBufLen) + ) + ); +} +pub type NET_DVR_SMSLISTINFO = tagNET_DVR_SMSLISTINFO; +pub type LPNET_DVR_SMSLISTINFO = *mut tagNET_DVR_SMSLISTINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SMSPARAM { + pub dwIndex: DWORD, + pub byStatus: BYTE, + pub byRes: [BYTE; 7usize], + pub struRecvTime: NET_DVR_TIME_EX, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SMSPARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_SMSPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SMSPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIndex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMSPARAM), + "::", + stringify!(dwIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMSPARAM), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMSPARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRecvTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMSPARAM), + "::", + stringify!(struRecvTime) + ) + ); +} +pub type NET_DVR_SMSPARAM = tagNET_DVR_SMSPARAM; +pub type LPNET_DVR_SMSPARAM = *mut tagNET_DVR_SMSPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SMSCONTENT { + pub byPhoneNum: [BYTE; 32usize], + pub byMsg: [BYTE; 140usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SMSCONTENT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 172usize, + concat!("Size of: ", stringify!(tagNET_DVR_SMSCONTENT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SMSCONTENT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPhoneNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMSCONTENT), + "::", + stringify!(byPhoneNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMsg) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMSCONTENT), + "::", + stringify!(byMsg) + ) + ); +} +pub type NET_DVR_SMSCONTENT = tagNET_DVR_SMSCONTENT; +pub type LPNET_DVR_SMSCONTENT = *mut tagNET_DVR_SMSCONTENT; +pub const PIN_READY_CPIN_READY: PIN_READY = 1; +pub const PIN_READY_CPIN_PIN: PIN_READY = 2; +pub const PIN_READY_CPIN_PUK: PIN_READY = 3; +pub const PIN_READY_CPIN_PIN2: PIN_READY = 4; +pub const PIN_READY_CPIN_PUK2: PIN_READY = 5; +pub type PIN_READY = ::std::os::raw::c_uint; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PINSTATUS { + pub dwSize: DWORD, + pub byStatus: BYTE, + pub byPinTimes: BYTE, + pub byPukTimes: BYTE, + pub bEnableLock: BYTE, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PINSTATUS() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_PINSTATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PINSTATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PINSTATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PINSTATUS), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPinTimes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PINSTATUS), + "::", + stringify!(byPinTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPukTimes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PINSTATUS), + "::", + stringify!(byPukTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bEnableLock) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PINSTATUS), + "::", + stringify!(bEnableLock) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PINSTATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PINSTATUS = tagNET_DVR_PINSTATUS; +pub type LPNET_DVR_PINSTATUS = *mut tagNET_DVR_PINSTATUS; +pub const PIN_CMD_PIN_ENABLE: PIN_CMD = 1; +pub const PIN_CMD_PIN_DISABLE: PIN_CMD = 2; +pub const PIN_CMD_PIN_VERIFY: PIN_CMD = 3; +pub const PIN_CMD_PUK_VERIFY: PIN_CMD = 4; +pub const PIN_CMD_PIN_CHANGE: PIN_CMD = 5; +pub type PIN_CMD = ::std::os::raw::c_uint; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PINCODEPARAM { + pub dwSize: DWORD, + pub byPinCmd: BYTE, + pub byRes1: [BYTE; 3usize], + pub byPinCode: [BYTE; 12usize], + pub byNewPinCode: [BYTE; 12usize], + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PINCODEPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_DVR_PINCODEPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PINCODEPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PINCODEPARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPinCmd) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PINCODEPARAM), + "::", + stringify!(byPinCmd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PINCODEPARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPinCode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PINCODEPARAM), + "::", + stringify!(byPinCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNewPinCode) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PINCODEPARAM), + "::", + stringify!(byNewPinCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PINCODEPARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PINCODEPARAM = tagNET_DVR_PINCODEPARAM; +pub type LPNET_DVR_PINCODEPARAM = *mut tagNET_DVR_PINCODEPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PUSHJPEGPARA { + pub wPicSize: WORD, + pub wPicQuality: WORD, + pub byPicTackleMode: BYTE, + pub byRes: [BYTE; 11usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_PUSHJPEGPARA() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(NET_DVR_PUSHJPEGPARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_PUSHJPEGPARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPicSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PUSHJPEGPARA), + "::", + stringify!(wPicSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPicQuality) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PUSHJPEGPARA), + "::", + stringify!(wPicQuality) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicTackleMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PUSHJPEGPARA), + "::", + stringify!(byPicTackleMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PUSHJPEGPARA), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_PUSHJPEGPARA = *mut NET_DVR_PUSHJPEGPARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PUSHALARMINFO { + pub dwAlarmType: DWORD, + pub dwAlarmInputNumber: DWORD, + pub dwAlarmOutputNumber: [DWORD; 4usize], + pub dwAlarmRelateChannel: [DWORD; 16usize], + pub dwChannel: [DWORD; 16usize], + pub dwDiskNumber: [DWORD; 16usize], + pub byDeviceID: [BYTE; 32usize], + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PUSHALARMINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 252usize, + concat!("Size of: ", stringify!(tagNET_DVR_PUSHALARMINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PUSHALARMINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO), + "::", + stringify!(dwAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmInputNumber) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO), + "::", + stringify!(dwAlarmInputNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmOutputNumber) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO), + "::", + stringify!(dwAlarmOutputNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmRelateChannel) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO), + "::", + stringify!(dwAlarmRelateChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDiskNumber) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO), + "::", + stringify!(dwDiskNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 248usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PUSHALARMINFO = tagNET_DVR_PUSHALARMINFO; +pub type LPNET_DVR_PUSHALARMINFO = *mut tagNET_DVR_PUSHALARMINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PUSHALARMINFO_V30 { + pub dwAlarmType: DWORD, + pub dwAlarmInputNumber: DWORD, + pub byAlarmOutputNumber: [BYTE; 96usize], + pub byAlarmRelateChannel: [BYTE; 64usize], + pub byChannel: [BYTE; 64usize], + pub byDiskNumber: [BYTE; 33usize], + pub byDeviceID: [BYTE; 32usize], + pub byRes: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_PUSHALARMINFO_V30() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 304usize, + concat!("Size of: ", stringify!(NET_DVR_PUSHALARMINFO_V30)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_PUSHALARMINFO_V30)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PUSHALARMINFO_V30), + "::", + stringify!(dwAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmInputNumber) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PUSHALARMINFO_V30), + "::", + stringify!(dwAlarmInputNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutputNumber) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PUSHALARMINFO_V30), + "::", + stringify!(byAlarmOutputNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmRelateChannel) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PUSHALARMINFO_V30), + "::", + stringify!(byAlarmRelateChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PUSHALARMINFO_V30), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDiskNumber) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PUSHALARMINFO_V30), + "::", + stringify!(byDiskNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 265usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PUSHALARMINFO_V30), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 297usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PUSHALARMINFO_V30), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_PUSHALARMINFO_V30 = *mut NET_DVR_PUSHALARMINFO_V30; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MB_AUTOWORKPARA { + pub byCurPowerCtrlType: BYTE, + pub byRes: [BYTE; 3usize], + pub struWorkTime: [[NET_DVR_SCHEDTIME; 2usize]; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MB_AUTOWORKPARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 60usize, + concat!("Size of: ", stringify!(tagNET_DVR_MB_AUTOWORKPARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MB_AUTOWORKPARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCurPowerCtrlType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_AUTOWORKPARA), + "::", + stringify!(byCurPowerCtrlType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_AUTOWORKPARA), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWorkTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_AUTOWORKPARA), + "::", + stringify!(struWorkTime) + ) + ); +} +pub type NET_DVR_MB_AUTOWORKPARA = tagNET_DVR_MB_AUTOWORKPARA; +pub type LPNET_DVR_MB_AUTOWORKPARA = *mut tagNET_DVR_MB_AUTOWORKPARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MB_POWERCTRLPARA { + pub dwSize: DWORD, + pub dwHaltDelay: DWORD, + pub struAutoWorkPara: NET_DVR_MB_AUTOWORKPARA, + pub byEnableUnderVoltProtect: BYTE, + pub byUnderVoltPercent: BYTE, + pub byRes: [BYTE; 34usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MB_POWERCTRLPARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 104usize, + concat!("Size of: ", stringify!(tagNET_DVR_MB_POWERCTRLPARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MB_POWERCTRLPARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_POWERCTRLPARA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHaltDelay) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_POWERCTRLPARA), + "::", + stringify!(dwHaltDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAutoWorkPara) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_POWERCTRLPARA), + "::", + stringify!(struAutoWorkPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableUnderVoltProtect) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_POWERCTRLPARA), + "::", + stringify!(byEnableUnderVoltProtect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUnderVoltPercent) as usize - ptr as usize }, + 69usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_POWERCTRLPARA), + "::", + stringify!(byUnderVoltPercent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 70usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_POWERCTRLPARA), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MB_POWERCTRLPARA = tagNET_DVR_MB_POWERCTRLPARA; +pub type LPNET_DVR_MB_POWERCTRLPARA = *mut tagNET_DVR_MB_POWERCTRLPARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MB_AUTOBACKUPPARA { + pub dwSize: DWORD, + pub byEnableAutoBackup: BYTE, + pub byRes1: [BYTE; 3usize], + pub byBackupChannel: [BYTE; 64usize], + pub byBackupDays: [BYTE; 64usize], + pub byBackupFileType: [BYTE; 64usize], + pub struBackupTime: [[NET_DVR_SCHEDTIME; 2usize]; 64usize], + pub byRes2: [BYTE; 36usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MB_AUTOBACKUPPARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 748usize, + concat!("Size of: ", stringify!(tagNET_DVR_MB_AUTOBACKUPPARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MB_AUTOBACKUPPARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_AUTOBACKUPPARA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableAutoBackup) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_AUTOBACKUPPARA), + "::", + stringify!(byEnableAutoBackup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_AUTOBACKUPPARA), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBackupChannel) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_AUTOBACKUPPARA), + "::", + stringify!(byBackupChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBackupDays) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_AUTOBACKUPPARA), + "::", + stringify!(byBackupDays) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBackupFileType) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_AUTOBACKUPPARA), + "::", + stringify!(byBackupFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBackupTime) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_AUTOBACKUPPARA), + "::", + stringify!(struBackupTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 712usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_AUTOBACKUPPARA), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_MB_AUTOBACKUPPARA = tagNET_DVR_MB_AUTOBACKUPPARA; +pub type LPNET_DVR_MB_AUTOBACKUPPARA = *mut tagNET_DVR_MB_AUTOBACKUPPARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MB_GPSPARA { + pub dwSize: DWORD, + pub byEnableGPS: BYTE, + pub byGpsInterface: BYTE, + pub bySpeedUnit: BYTE, + pub byEnableRetrieve: BYTE, + pub iAdjustTime: ::std::os::raw::c_int, + pub byEnableAdjustTime: BYTE, + pub byRes1: [BYTE; 5usize], + pub wGpsUploadInterval: WORD, + pub byGpsOsdChannel: [BYTE; 64usize], + pub dwSpeedLimit: DWORD, + pub struGpsAlarm: NET_DVR_HANDLEEXCEPTION_V30, + pub byRes2: [BYTE; 36usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MB_GPSPARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 224usize, + concat!("Size of: ", stringify!(tagNET_DVR_MB_GPSPARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MB_GPSPARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_GPSPARA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableGPS) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_GPSPARA), + "::", + stringify!(byEnableGPS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGpsInterface) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_GPSPARA), + "::", + stringify!(byGpsInterface) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpeedUnit) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_GPSPARA), + "::", + stringify!(bySpeedUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableRetrieve) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_GPSPARA), + "::", + stringify!(byEnableRetrieve) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iAdjustTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_GPSPARA), + "::", + stringify!(iAdjustTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableAdjustTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_GPSPARA), + "::", + stringify!(byEnableAdjustTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_GPSPARA), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wGpsUploadInterval) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_GPSPARA), + "::", + stringify!(wGpsUploadInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGpsOsdChannel) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_GPSPARA), + "::", + stringify!(byGpsOsdChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSpeedLimit) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_GPSPARA), + "::", + stringify!(dwSpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGpsAlarm) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_GPSPARA), + "::", + stringify!(struGpsAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_GPSPARA), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_MB_GPSPARA = tagNET_DVR_MB_GPSPARA; +pub type LPNET_DVR_MB_GPSPARA = *mut tagNET_DVR_MB_GPSPARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MB_SENSORINPARA { + pub dwSize: DWORD, + pub byTriggerType: [BYTE; 8usize], + pub byTriggerChannel: [BYTE; 8usize], + pub byOsdDisplay: [BYTE; 64usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MB_SENSORINPARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 116usize, + concat!("Size of: ", stringify!(tagNET_DVR_MB_SENSORINPARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MB_SENSORINPARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_SENSORINPARA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTriggerType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_SENSORINPARA), + "::", + stringify!(byTriggerType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTriggerChannel) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_SENSORINPARA), + "::", + stringify!(byTriggerChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOsdDisplay) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_SENSORINPARA), + "::", + stringify!(byOsdDisplay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_SENSORINPARA), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MB_SENSORINPARA = tagNET_DVR_MB_SENSORINPARA; +pub type LPNET_DVR_MB_SENSORINPARA = *mut tagNET_DVR_MB_SENSORINPARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ACCELERATIONCFG { + pub dwMaxXAcc: DWORD, + pub dwMaxYAcc: DWORD, + pub dwMaxZAcc: DWORD, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ACCELERATIONCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_ACCELERATIONCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ACCELERATIONCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxXAcc) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCELERATIONCFG), + "::", + stringify!(dwMaxXAcc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxYAcc) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCELERATIONCFG), + "::", + stringify!(dwMaxYAcc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxZAcc) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCELERATIONCFG), + "::", + stringify!(dwMaxZAcc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCELERATIONCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ACCELERATIONCFG = tagNET_DVR_ACCELERATIONCFG; +pub type LPNET_DVR_ACCERATIONCFG = *mut tagNET_DVR_ACCELERATIONCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GSENSORPARA { + pub dwSize: DWORD, + pub struAccelerationCfg: NET_DVR_ACCELERATIONCFG, + pub byModuleSelect: BYTE, + pub byRes1: [BYTE; 3usize], + pub struHandleException: NET_DVR_HANDLEEXCEPTION_V30, + pub byRes2: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GSENSORPARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!("Size of: ", stringify!(tagNET_DVR_GSENSORPARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GSENSORPARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GSENSORPARA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAccelerationCfg) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GSENSORPARA), + "::", + stringify!(struAccelerationCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byModuleSelect) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GSENSORPARA), + "::", + stringify!(byModuleSelect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GSENSORPARA), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHandleException) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GSENSORPARA), + "::", + stringify!(struHandleException) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GSENSORPARA), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_GSENSORPARA = tagNET_DVR_GSENSORPARA; +pub type LPNET_DVR_GSENSORPARA = *mut tagNET_DVR_GSENSORPARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MB_DOWNLOADSVRPARA { + pub dwSize: DWORD, + pub struDownloadSvrIp: NET_DVR_IPADDR, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MB_DOWNLOADSVRPARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 212usize, + concat!("Size of: ", stringify!(tagNET_DVR_MB_DOWNLOADSVRPARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MB_DOWNLOADSVRPARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_DOWNLOADSVRPARA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDownloadSvrIp) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_DOWNLOADSVRPARA), + "::", + stringify!(struDownloadSvrIp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_DOWNLOADSVRPARA), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MB_DOWNLOADSVRPARA = tagNET_DVR_MB_DOWNLOADSVRPARA; +pub type LPNET_DVR_MB_DOWNLOADSVRPARA = *mut tagNET_DVR_MB_DOWNLOADSVRPARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLATERECOG_PARA { + pub dwSize: DWORD, + pub byPrMode: BYTE, + pub byPrScene: BYTE, + pub byPrDetRect: BYTE, + pub byPrPicQuality: BYTE, + pub byPrPicMode: BYTE, + pub byPlateOsdDisplay: BYTE, + pub byPrProvCharIndex: BYTE, + pub byPrProvCharIndex1: BYTE, + pub byPrProvCharIndex2: BYTE, + pub byRes: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLATERECOG_PARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLATERECOG_PARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PLATERECOG_PARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATERECOG_PARA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPrMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATERECOG_PARA), + "::", + stringify!(byPrMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPrScene) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATERECOG_PARA), + "::", + stringify!(byPrScene) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPrDetRect) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATERECOG_PARA), + "::", + stringify!(byPrDetRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPrPicQuality) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATERECOG_PARA), + "::", + stringify!(byPrPicQuality) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPrPicMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATERECOG_PARA), + "::", + stringify!(byPrPicMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateOsdDisplay) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATERECOG_PARA), + "::", + stringify!(byPlateOsdDisplay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPrProvCharIndex) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATERECOG_PARA), + "::", + stringify!(byPrProvCharIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPrProvCharIndex1) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATERECOG_PARA), + "::", + stringify!(byPrProvCharIndex1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPrProvCharIndex2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATERECOG_PARA), + "::", + stringify!(byPrProvCharIndex2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATERECOG_PARA), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PLATERECOG_PARA = tagNET_DVR_PLATERECOG_PARA; +pub type LPNET_DVR_PLATERECOG_PARA = *mut tagNET_DVR_PLATERECOG_PARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SPEEDLMT_PARA { + pub bStartMaxSpeedLimit: BYTE, + pub bStartMinSpeedLimit: BYTE, + pub byRes: [BYTE; 6usize], + pub dwMaxSpeedLimit: DWORD, + pub dwMinSpeedLimit: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SPEEDLMT_PARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_SPEEDLMT_PARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SPEEDLMT_PARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bStartMaxSpeedLimit) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPEEDLMT_PARA), + "::", + stringify!(bStartMaxSpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bStartMinSpeedLimit) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPEEDLMT_PARA), + "::", + stringify!(bStartMinSpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPEEDLMT_PARA), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxSpeedLimit) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPEEDLMT_PARA), + "::", + stringify!(dwMaxSpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMinSpeedLimit) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPEEDLMT_PARA), + "::", + stringify!(dwMinSpeedLimit) + ) + ); +} +pub type NET_DVR_SPEEDLMT_PARA = tagNET_DVR_SPEEDLMT_PARA; +pub type LPNET_DVR_SPEEDLMT_PARA = *mut tagNET_DVR_SPEEDLMT_PARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLATECHECK_PARA { + pub bAlarmWhenChecked: BYTE, + pub bInformWhenChecked: BYTE, + pub byRes: [BYTE; 6usize], + pub struBlockFtpServer: NET_DVR_IPADDR, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLATECHECK_PARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 152usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLATECHECK_PARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PLATECHECK_PARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bAlarmWhenChecked) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATECHECK_PARA), + "::", + stringify!(bAlarmWhenChecked) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bInformWhenChecked) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATECHECK_PARA), + "::", + stringify!(bInformWhenChecked) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATECHECK_PARA), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBlockFtpServer) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATECHECK_PARA), + "::", + stringify!(struBlockFtpServer) + ) + ); +} +pub type NET_DVR_PLATECHECK_PARA = tagNET_DVR_PLATECHECK_PARA; +pub type LPNET_DVR_PLATECHECK_PARA = *mut tagNET_DVR_PLATECHECK_PARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ENFORCESYS_PARA { + pub dwSize: DWORD, + pub struSpeedLmtPara: NET_DVR_SPEEDLMT_PARA, + pub struPlateCheckPara: NET_DVR_PLATECHECK_PARA, + pub bySelPeccType: BYTE, + pub byEnfOptHabit: BYTE, + pub byAdjPrevFpsMode: BYTE, + pub byRes1: BYTE, + pub struUploadServerIp: NET_DVR_IPADDR, + pub wUploadServerPort: WORD, + pub byRes2: [BYTE; 18usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ENFORCESYS_PARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 340usize, + concat!("Size of: ", stringify!(tagNET_DVR_ENFORCESYS_PARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ENFORCESYS_PARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENFORCESYS_PARA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSpeedLmtPara) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENFORCESYS_PARA), + "::", + stringify!(struSpeedLmtPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateCheckPara) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENFORCESYS_PARA), + "::", + stringify!(struPlateCheckPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySelPeccType) as usize - ptr as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENFORCESYS_PARA), + "::", + stringify!(bySelPeccType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnfOptHabit) as usize - ptr as usize }, + 173usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENFORCESYS_PARA), + "::", + stringify!(byEnfOptHabit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAdjPrevFpsMode) as usize - ptr as usize }, + 174usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENFORCESYS_PARA), + "::", + stringify!(byAdjPrevFpsMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 175usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENFORCESYS_PARA), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struUploadServerIp) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENFORCESYS_PARA), + "::", + stringify!(struUploadServerIp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wUploadServerPort) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENFORCESYS_PARA), + "::", + stringify!(wUploadServerPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 322usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENFORCESYS_PARA), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ENFORCESYS_PARA = tagNET_DVR_ENFORCESYS_PARA; +pub type LPNET_DVR_ENFORCESYS_PARA = *mut tagNET_DVR_ENFORCESYS_PARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PUSHMODEPARAM { + pub byUdpPreviewMode: BYTE, + pub byVoiceWorkMode: BYTE, + pub byRes: [BYTE; 18usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PUSHMODEPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_PUSHMODEPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PUSHMODEPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUdpPreviewMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHMODEPARAM), + "::", + stringify!(byUdpPreviewMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVoiceWorkMode) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHMODEPARAM), + "::", + stringify!(byVoiceWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHMODEPARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PUSHMODEPARAM = tagNET_DVR_PUSHMODEPARAM; +pub type LPNET_DVR_PUSHMODEPARAM = *mut tagNET_DVR_PUSHMODEPARAM; +pub const tagSENSOR_TYPE_SENSOR_TYPE_NONE: tagSENSOR_TYPE = 0; +pub const tagSENSOR_TYPE_SENSOR_TYPE_TEMPERATURE: tagSENSOR_TYPE = 1; +pub const tagSENSOR_TYPE_SENSOR_TYPE_HUMIDITY: tagSENSOR_TYPE = 2; +pub const tagSENSOR_TYPE_SENSOR_TYPE_WINDSPEED: tagSENSOR_TYPE = 3; +pub const tagSENSOR_TYPE_SENSOR_TYPE_GAS: tagSENSOR_TYPE = 4; +pub const tagSENSOR_TYPE_SENSOR_AC_VOLTAGE: tagSENSOR_TYPE = 5; +pub const tagSENSOR_TYPE_SENSOR_AC_CURRENT: tagSENSOR_TYPE = 6; +pub const tagSENSOR_TYPE_SENSOR_DC_VOLTAGE: tagSENSOR_TYPE = 7; +pub const tagSENSOR_TYPE_SENSOR_DC_CURRENT: tagSENSOR_TYPE = 8; +pub const tagSENSOR_TYPE_SENSOR_WATER_PRESSURE: tagSENSOR_TYPE = 9; +pub const tagSENSOR_TYPE_SENSOR_PRESSURE_TRANSMITTER: tagSENSOR_TYPE = 10; +pub const tagSENSOR_TYPE_SENSOR_FLOW_TRANSMITTER: tagSENSOR_TYPE = 11; +pub const tagSENSOR_TYPE_SENSOR_WATER_LEAKAGE: tagSENSOR_TYPE = 12; +pub const tagSENSOR_TYPE_SENSOR_INTERGRATED_TEMPERATURE_DETECTOR: tagSENSOR_TYPE = 13; +pub const tagSENSOR_TYPE_SENSOR_ISOLATION_TEMPERATURE_DETECTOR: tagSENSOR_TYPE = 14; +pub const tagSENSOR_TYPE_SENSOR_RESIDUAL_CHLORINE: tagSENSOR_TYPE = 15; +pub const tagSENSOR_TYPE_SENSOR_TYPE_AC_TERMINAL: tagSENSOR_TYPE = 16; +pub const tagSENSOR_TYPE_SENSOR_TYPE_AC_SOCKET: tagSENSOR_TYPE = 17; +pub const tagSENSOR_TYPE_SENSOR_TYPE_HUMITURE: tagSENSOR_TYPE = 18; +pub const tagSENSOR_TYPE_SENSOR_TYPE_FLOW: tagSENSOR_TYPE = 19; +pub const tagSENSOR_TYPE_SENSOR_LIQUID_LEVEL: tagSENSOR_TYPE = 20; +pub const tagSENSOR_TYPE_SENSOR_TYPE_ARC: tagSENSOR_TYPE = 21; +pub const tagSENSOR_TYPE_SENSOR_TYPE_UNKNOW: tagSENSOR_TYPE = 255; +pub type tagSENSOR_TYPE = ::std::os::raw::c_uint; +pub use self::tagSENSOR_TYPE as SENSOR_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SENSOR_INFO { + pub dwSize: DWORD, + pub byName: [BYTE; 32usize], + pub byEnable: BYTE, + pub byValid: BYTE, + pub byType: BYTE, + pub byAlarmMode: BYTE, + pub fMeasureHigh: f32, + pub fMeasureLow: f32, + pub fAlarm1: f32, + pub fAlarm2: f32, + pub fAlarm3: f32, + pub fAlarm4: f32, + pub dwOsdCfg: DWORD, + pub fSensitive: f32, + pub bySensorStandard: BYTE, + pub byChan: BYTE, + pub byRes3: [BYTE; 114usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SENSOR_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 188usize, + concat!("Size of: ", stringify!(tagNET_DVR_SENSOR_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SENSOR_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmMode) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO), + "::", + stringify!(byAlarmMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fMeasureHigh) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO), + "::", + stringify!(fMeasureHigh) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fMeasureLow) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO), + "::", + stringify!(fMeasureLow) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fAlarm1) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO), + "::", + stringify!(fAlarm1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fAlarm2) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO), + "::", + stringify!(fAlarm2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fAlarm3) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO), + "::", + stringify!(fAlarm3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fAlarm4) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO), + "::", + stringify!(fAlarm4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOsdCfg) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO), + "::", + stringify!(dwOsdCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fSensitive) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO), + "::", + stringify!(fSensitive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensorStandard) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO), + "::", + stringify!(bySensorStandard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChan) as usize - ptr as usize }, + 73usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO), + "::", + stringify!(byChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 74usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_SENSOR_INFO = tagNET_DVR_SENSOR_INFO; +pub type LPNET_DVR_SENSOR_INFO = *mut tagNET_DVR_SENSOR_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SIREN_PARAM { + pub dwSize: DWORD, + pub byName: [BYTE; 32usize], + pub wDelay: WORD, + pub byRes1: [BYTE; 2usize], + pub dwOverallEventJointSirenOn: DWORD, + pub dwSubsystemEventJointSirenOn: [DWORD; 32usize], + pub byRes2: [BYTE; 448usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SIREN_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 620usize, + concat!("Size of: ", stringify!(tagNET_DVR_SIREN_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SIREN_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIREN_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIREN_PARAM), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDelay) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIREN_PARAM), + "::", + stringify!(wDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIREN_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOverallEventJointSirenOn) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIREN_PARAM), + "::", + stringify!(dwOverallEventJointSirenOn) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).dwSubsystemEventJointSirenOn) as usize - ptr as usize + }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIREN_PARAM), + "::", + stringify!(dwSubsystemEventJointSirenOn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIREN_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SIREN_PARAM = tagNET_DVR_SIREN_PARAM; +pub type LPNET_DVR_SIREN_PARAM = *mut tagNET_DVR_SIREN_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AIR_CONDITION_PARAM { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byMode: BYTE, + pub byTemperature: BYTE, + pub byAirConditionNo: BYTE, + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AIR_CONDITION_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_AIR_CONDITION_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AIR_CONDITION_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AIR_CONDITION_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AIR_CONDITION_PARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AIR_CONDITION_PARAM), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTemperature) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AIR_CONDITION_PARAM), + "::", + stringify!(byTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAirConditionNo) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AIR_CONDITION_PARAM), + "::", + stringify!(byAirConditionNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AIR_CONDITION_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AIR_CONDITION_PARAM = tagNET_DVR_AIR_CONDITION_PARAM; +pub type LPNET_DVR_AIR_CONDITION_PARAM = *mut tagNET_DVR_AIR_CONDITION_PARAM; +pub const tagDETECTOR_TYPE_PANIC_BUTTON: tagDETECTOR_TYPE = 0; +pub const tagDETECTOR_TYPE_MAGNETIC_CONTACT: tagDETECTOR_TYPE = 1; +pub const tagDETECTOR_TYPE_SMOKE_DETECTOR: tagDETECTOR_TYPE = 2; +pub const tagDETECTOR_TYPE_ACTIVE_INFRARED_DETECTOR: tagDETECTOR_TYPE = 3; +pub const tagDETECTOR_TYPE_PASSIVE_INFRARED_DETECTOR: tagDETECTOR_TYPE = 4; +pub const tagDETECTOR_TYPE_GLASS_BREAK_DETECTOR: tagDETECTOR_TYPE = 5; +pub const tagDETECTOR_TYPE_VIBRATION_DETECTOR: tagDETECTOR_TYPE = 6; +pub const tagDETECTOR_TYPE_DUAL_TECHNOLOGY_PIR_DETECTOR: tagDETECTOR_TYPE = 7; +pub const tagDETECTOR_TYPE_TRIPLE_TECHNOLOGY_PIR_DETECTOR: tagDETECTOR_TYPE = 8; +pub const tagDETECTOR_TYPE_HUMIDITY_DETECTOR: tagDETECTOR_TYPE = 9; +pub const tagDETECTOR_TYPE_TEMPERATURE_DETECTOR: tagDETECTOR_TYPE = 10; +pub const tagDETECTOR_TYPE_COMBUSTIBLE_GAS_DETECTOR: tagDETECTOR_TYPE = 11; +pub const tagDETECTOR_TYPE_DYNAMIC_SWITCH: tagDETECTOR_TYPE = 12; +pub const tagDETECTOR_TYPE_CONTROL_SWITCH: tagDETECTOR_TYPE = 13; +pub const tagDETECTOR_TYPE_SMART_LOCK: tagDETECTOR_TYPE = 14; +pub const tagDETECTOR_TYPE_WATER_DETECTOR: tagDETECTOR_TYPE = 15; +pub const tagDETECTOR_TYPE_DISPLACEMENT_DETECTOR: tagDETECTOR_TYPE = 16; +pub const tagDETECTOR_TYPE_SINGLE_INFRARED_DETECTOR: tagDETECTOR_TYPE = 17; +pub const tagDETECTOR_TYPE_SINGLE_ZONE_MODULE: tagDETECTOR_TYPE = 18; +pub const tagDETECTOR_TYPE_CURTAIN_INFRARED_DETECTOR: tagDETECTOR_TYPE = 19; +pub const tagDETECTOR_TYPE_UNKNOWN: tagDETECTOR_TYPE = 20; +pub const tagDETECTOR_TYPE_DOORBELL_SWITCH: tagDETECTOR_TYPE = 21; +pub const tagDETECTOR_TYPE_MEDICAL_HELP_BUTTON: tagDETECTOR_TYPE = 22; +pub const tagDETECTOR_TYPE_OUTDOOR_DUAL_TECH: tagDETECTOR_TYPE = 23; +pub const tagDETECTOR_TYPE_OTHER_DETECTOR: tagDETECTOR_TYPE = 65535; +pub type tagDETECTOR_TYPE = ::std::os::raw::c_uint; +pub use self::tagDETECTOR_TYPE as DETECTOR_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMIN_PARAM { + pub dwSize: DWORD, + pub byName: [BYTE; 32usize], + pub wDetectorType: WORD, + pub byType: BYTE, + pub byUploadAlarmRecoveryReport: BYTE, + pub dwParam: DWORD, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 4usize]; 7usize], + pub byAssociateAlarmOut: [BYTE; 512usize], + pub byAssociateSirenOut: [BYTE; 8usize], + pub bySensitivityParam: BYTE, + pub byArrayBypass: BYTE, + pub byJointSubSystem: BYTE, + pub byModuleStatus: BYTE, + pub wModuleAddress: WORD, + pub byModuleChan: BYTE, + pub byModuleType: BYTE, + pub wZoneIndex: WORD, + pub wInDelay: WORD, + pub wOutDelay: WORD, + pub byAlarmType: BYTE, + pub byZoneResistor: BYTE, + pub fZoneResistorManual: f32, + pub byDetectorSerialNo: [BYTE; 9usize], + pub byZoneSignalType: BYTE, + pub byDisableDetectorTypeCfg: BYTE, + pub byTimeOutRange: BYTE, + pub byAssociateLampOut: [BYTE; 8usize], + pub wTimeOut: WORD, + pub byDetectorSignalIntensity: BYTE, + pub byTimeOutMethod: BYTE, + pub byRes3: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMIN_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 728usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMIN_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMIN_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDetectorType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(wDetectorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUploadAlarmRecoveryReport) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(byUploadAlarmRecoveryReport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwParam) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(dwParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAssociateAlarmOut) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(byAssociateAlarmOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAssociateSirenOut) as usize - ptr as usize }, + 668usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(byAssociateSirenOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivityParam) as usize - ptr as usize }, + 676usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(bySensitivityParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byArrayBypass) as usize - ptr as usize }, + 677usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(byArrayBypass) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJointSubSystem) as usize - ptr as usize }, + 678usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(byJointSubSystem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byModuleStatus) as usize - ptr as usize }, + 679usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(byModuleStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wModuleAddress) as usize - ptr as usize }, + 680usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(wModuleAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byModuleChan) as usize - ptr as usize }, + 682usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(byModuleChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byModuleType) as usize - ptr as usize }, + 683usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(byModuleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wZoneIndex) as usize - ptr as usize }, + 684usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(wZoneIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInDelay) as usize - ptr as usize }, + 686usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(wInDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wOutDelay) as usize - ptr as usize }, + 688usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(wOutDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 690usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZoneResistor) as usize - ptr as usize }, + 691usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(byZoneResistor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fZoneResistorManual) as usize - ptr as usize }, + 692usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(fZoneResistorManual) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectorSerialNo) as usize - ptr as usize }, + 696usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(byDetectorSerialNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZoneSignalType) as usize - ptr as usize }, + 705usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(byZoneSignalType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDisableDetectorTypeCfg) as usize - ptr as usize }, + 706usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(byDisableDetectorTypeCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeOutRange) as usize - ptr as usize }, + 707usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(byTimeOutRange) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAssociateLampOut) as usize - ptr as usize }, + 708usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(byAssociateLampOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTimeOut) as usize - ptr as usize }, + 716usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(wTimeOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectorSignalIntensity) as usize - ptr as usize }, + 718usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(byDetectorSignalIntensity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeOutMethod) as usize - ptr as usize }, + 719usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(byTimeOutMethod) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 720usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_ALARMIN_PARAM = tagNET_DVR_ALARMIN_PARAM; +pub type LPNET_DVR_ALARMIN_PARAM = *mut tagNET_DVR_ALARMIN_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMIN_PARAM_V50 { + pub dwSize: DWORD, + pub byName: [BYTE; 32usize], + pub wDetectorType: WORD, + pub byType: BYTE, + pub byUploadAlarmRecoveryReport: BYTE, + pub dwParam: DWORD, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 4usize]; 7usize], + pub byAssociateAlarmOut: [BYTE; 512usize], + pub byAssociateSirenOut: [BYTE; 8usize], + pub bySensitivityParam: BYTE, + pub byArrayBypass: BYTE, + pub byJointSubSystem: BYTE, + pub byModuleStatus: BYTE, + pub wModuleAddress: WORD, + pub byModuleChan: BYTE, + pub byModuleType: BYTE, + pub wZoneIndex: WORD, + pub wInDelay: WORD, + pub wOutDelay: WORD, + pub byAlarmType: BYTE, + pub byZoneResistor: BYTE, + pub fZoneResistorManual: f32, + pub byDetectorSerialNo: [BYTE; 16usize], + pub byZoneSignalType: BYTE, + pub byDisableDetectorTypeCfg: BYTE, + pub wTimeOut: WORD, + pub byAssociateLampOut: [BYTE; 8usize], + pub byVoiceFileName: [BYTE; 32usize], + pub byTimeOutRange: BYTE, + pub byDetectorSignalIntensity: BYTE, + pub byTimeOutMethod: BYTE, + pub byAssociateFlashLamp: BYTE, + pub byStayAwayEnabled: BYTE, + pub bySilentModeEnabled: BYTE, + pub byRelativeChannel: [BYTE; 2usize], + pub byDetectorVersion: [BYTE; 32usize], + pub byDetectorMAC: [BYTE; 6usize], + pub byLinkageAlarmType: BYTE, + pub byRes3: [BYTE; 465usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMIN_PARAM_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1268usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMIN_PARAM_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMIN_PARAM_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDetectorType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(wDetectorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUploadAlarmRecoveryReport) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byUploadAlarmRecoveryReport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwParam) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(dwParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAssociateAlarmOut) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byAssociateAlarmOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAssociateSirenOut) as usize - ptr as usize }, + 668usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byAssociateSirenOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivityParam) as usize - ptr as usize }, + 676usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(bySensitivityParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byArrayBypass) as usize - ptr as usize }, + 677usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byArrayBypass) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJointSubSystem) as usize - ptr as usize }, + 678usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byJointSubSystem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byModuleStatus) as usize - ptr as usize }, + 679usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byModuleStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wModuleAddress) as usize - ptr as usize }, + 680usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(wModuleAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byModuleChan) as usize - ptr as usize }, + 682usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byModuleChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byModuleType) as usize - ptr as usize }, + 683usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byModuleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wZoneIndex) as usize - ptr as usize }, + 684usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(wZoneIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInDelay) as usize - ptr as usize }, + 686usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(wInDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wOutDelay) as usize - ptr as usize }, + 688usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(wOutDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 690usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZoneResistor) as usize - ptr as usize }, + 691usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byZoneResistor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fZoneResistorManual) as usize - ptr as usize }, + 692usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(fZoneResistorManual) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectorSerialNo) as usize - ptr as usize }, + 696usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byDetectorSerialNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZoneSignalType) as usize - ptr as usize }, + 712usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byZoneSignalType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDisableDetectorTypeCfg) as usize - ptr as usize }, + 713usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byDisableDetectorTypeCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTimeOut) as usize - ptr as usize }, + 714usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(wTimeOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAssociateLampOut) as usize - ptr as usize }, + 716usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byAssociateLampOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVoiceFileName) as usize - ptr as usize }, + 724usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byVoiceFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeOutRange) as usize - ptr as usize }, + 756usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byTimeOutRange) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectorSignalIntensity) as usize - ptr as usize }, + 757usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byDetectorSignalIntensity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeOutMethod) as usize - ptr as usize }, + 758usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byTimeOutMethod) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAssociateFlashLamp) as usize - ptr as usize }, + 759usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byAssociateFlashLamp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStayAwayEnabled) as usize - ptr as usize }, + 760usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byStayAwayEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySilentModeEnabled) as usize - ptr as usize }, + 761usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(bySilentModeEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelativeChannel) as usize - ptr as usize }, + 762usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byRelativeChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectorVersion) as usize - ptr as usize }, + 764usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byDetectorVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectorMAC) as usize - ptr as usize }, + 796usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byDetectorMAC) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLinkageAlarmType) as usize - ptr as usize }, + 802usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byLinkageAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 803usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_V50), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_ALARMIN_PARAM_V50 = tagNET_DVR_ALARMIN_PARAM_V50; +pub type LPNET_DVR_ALARMIN_PARAM_V50 = *mut tagNET_DVR_ALARMIN_PARAM_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MULTI_ALARMIN_COND { + pub dwSize: DWORD, + pub iZoneNo: [::std::os::raw::c_int; 64usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MULTI_ALARMIN_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 516usize, + concat!("Size of: ", stringify!(tagNET_DVR_MULTI_ALARMIN_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MULTI_ALARMIN_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_ALARMIN_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iZoneNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_ALARMIN_COND), + "::", + stringify!(iZoneNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_ALARMIN_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MULTI_ALARMIN_COND = tagNET_DVR_MULTI_ALARMIN_COND; +pub type LPNET_DVR_MULTI_ALARMIN_COND = *mut tagNET_DVR_MULTI_ALARMIN_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SINGLE_ALARMIN_PARAM { + pub dwSize: DWORD, + pub wZoneNo: WORD, + pub byJointSubSystem: BYTE, + pub byType: BYTE, + pub byName: [BYTE; 32usize], + pub wDetectorType: WORD, + pub wInDelay: WORD, + pub wOutDelay: WORD, + pub byAlarmType: BYTE, + pub byZoneSignalType: BYTE, + pub byDetectorSerialNo: [BYTE; 9usize], + pub byDisableDetectorTypeCfg: BYTE, + pub byTimeOutRange: BYTE, + pub byDetectorSignalIntensity: BYTE, + pub wTimeOut: WORD, + pub byTimeOutMethod: BYTE, + pub byAssociateFlashLamp: BYTE, + pub byStayAwayEnabled: BYTE, + pub bySilentModeEnabled: BYTE, + pub byRes2: [BYTE; 110usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SINGLE_ALARMIN_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 176usize, + concat!("Size of: ", stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wZoneNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM), + "::", + stringify!(wZoneNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJointSubSystem) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM), + "::", + stringify!(byJointSubSystem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDetectorType) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM), + "::", + stringify!(wDetectorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInDelay) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM), + "::", + stringify!(wInDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wOutDelay) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM), + "::", + stringify!(wOutDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 46usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZoneSignalType) as usize - ptr as usize }, + 47usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM), + "::", + stringify!(byZoneSignalType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectorSerialNo) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM), + "::", + stringify!(byDetectorSerialNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDisableDetectorTypeCfg) as usize - ptr as usize }, + 57usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM), + "::", + stringify!(byDisableDetectorTypeCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeOutRange) as usize - ptr as usize }, + 58usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM), + "::", + stringify!(byTimeOutRange) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectorSignalIntensity) as usize - ptr as usize }, + 59usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM), + "::", + stringify!(byDetectorSignalIntensity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTimeOut) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM), + "::", + stringify!(wTimeOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeOutMethod) as usize - ptr as usize }, + 62usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM), + "::", + stringify!(byTimeOutMethod) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAssociateFlashLamp) as usize - ptr as usize }, + 63usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM), + "::", + stringify!(byAssociateFlashLamp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStayAwayEnabled) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM), + "::", + stringify!(byStayAwayEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySilentModeEnabled) as usize - ptr as usize }, + 65usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM), + "::", + stringify!(bySilentModeEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 66usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SINGLE_ALARMIN_PARAM = tagNET_DVR_SINGLE_ALARMIN_PARAM; +pub type LPNET_DVR_SINGLE_ALARMIN_PARAM = *mut tagNET_DVR_SINGLE_ALARMIN_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SINGLE_ALARMIN_PARAM_V50 { + pub dwSize: DWORD, + pub wZoneNo: WORD, + pub byJointSubSystem: BYTE, + pub byType: BYTE, + pub byName: [BYTE; 32usize], + pub wDetectorType: WORD, + pub wInDelay: WORD, + pub wOutDelay: WORD, + pub byAlarmType: BYTE, + pub byZoneSignalType: BYTE, + pub byDetectorSerialNo: [BYTE; 9usize], + pub byDisableDetectorTypeCfg: BYTE, + pub byTimeOutRange: BYTE, + pub byDetectorSignalIntensity: BYTE, + pub wTimeOut: WORD, + pub byTimeOutMethod: BYTE, + pub byAssociateFlashLamp: BYTE, + pub byStayAwayEnabled: BYTE, + pub bySilentModeEnabled: BYTE, + pub byRes3: [BYTE; 2usize], + pub byAssociateAlarmOut: [BYTE; 512usize], + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SINGLE_ALARMIN_PARAM_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 708usize, + concat!("Size of: ", stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wZoneNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM_V50), + "::", + stringify!(wZoneNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJointSubSystem) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM_V50), + "::", + stringify!(byJointSubSystem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM_V50), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM_V50), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDetectorType) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM_V50), + "::", + stringify!(wDetectorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInDelay) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM_V50), + "::", + stringify!(wInDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wOutDelay) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM_V50), + "::", + stringify!(wOutDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 46usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM_V50), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZoneSignalType) as usize - ptr as usize }, + 47usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM_V50), + "::", + stringify!(byZoneSignalType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectorSerialNo) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM_V50), + "::", + stringify!(byDetectorSerialNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDisableDetectorTypeCfg) as usize - ptr as usize }, + 57usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM_V50), + "::", + stringify!(byDisableDetectorTypeCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeOutRange) as usize - ptr as usize }, + 58usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM_V50), + "::", + stringify!(byTimeOutRange) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectorSignalIntensity) as usize - ptr as usize }, + 59usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM_V50), + "::", + stringify!(byDetectorSignalIntensity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTimeOut) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM_V50), + "::", + stringify!(wTimeOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeOutMethod) as usize - ptr as usize }, + 62usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM_V50), + "::", + stringify!(byTimeOutMethod) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAssociateFlashLamp) as usize - ptr as usize }, + 63usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM_V50), + "::", + stringify!(byAssociateFlashLamp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStayAwayEnabled) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM_V50), + "::", + stringify!(byStayAwayEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySilentModeEnabled) as usize - ptr as usize }, + 65usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM_V50), + "::", + stringify!(bySilentModeEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 66usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM_V50), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAssociateAlarmOut) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM_V50), + "::", + stringify!(byAssociateAlarmOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 580usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ALARMIN_PARAM_V50), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SINGLE_ALARMIN_PARAM_V50 = tagNET_DVR_SINGLE_ALARMIN_PARAM_V50; +pub type LPNET_DVR_SINGLE_ALARMIN_PARAM_V50 = *mut tagNET_DVR_SINGLE_ALARMIN_PARAM_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMIN_PARAM_LIST { + pub dwSize: DWORD, + pub struSingleAlarmInParam: [NET_DVR_SINGLE_ALARMIN_PARAM; 64usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMIN_PARAM_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 11396usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMIN_PARAM_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMIN_PARAM_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSingleAlarmInParam) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_LIST), + "::", + stringify!(struSingleAlarmInParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 11268usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_LIST), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMIN_PARAM_LIST = tagNET_DVR_ALARMIN_PARAM_LIST; +pub type LPNET_DVR_ALARMIN_PARAM_LIST = *mut tagNET_DVR_ALARMIN_PARAM_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMIN_PARAM_LIST_V50 { + pub dwSize: DWORD, + pub struSingleAlarmInParam: [NET_DVR_SINGLE_ALARMIN_PARAM_V50; 64usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMIN_PARAM_LIST_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 45444usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMIN_PARAM_LIST_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMIN_PARAM_LIST_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_LIST_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSingleAlarmInParam) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_LIST_V50), + "::", + stringify!(struSingleAlarmInParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 45316usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_PARAM_LIST_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMIN_PARAM_LIST_V50 = tagNET_DVR_ALARMIN_PARAM_LIST_V50; +pub type LPNET_DVR_ALARMIN_PARAM_LIST_V50 = *mut tagNET_DVR_ALARMIN_PARAM_LIST_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMOUT_PARAM { + pub dwSize: DWORD, + pub byName: [BYTE; 32usize], + pub wDelay: WORD, + pub wTriggerIndex: WORD, + pub byAssociateAlarmIn: [BYTE; 512usize], + pub byModuleType: BYTE, + pub byModuleStatus: BYTE, + pub wModuleAddress: WORD, + pub byModuleChan: BYTE, + pub byWorkMode: BYTE, + pub byAlarmOutMode: BYTE, + pub byTimeOn: BYTE, + pub byTimeOff: BYTE, + pub byDurationConstOutputEnable: BYTE, + pub byRes2: [BYTE; 50usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMOUT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 612usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMOUT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMOUT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMOUT_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMOUT_PARAM), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDelay) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMOUT_PARAM), + "::", + stringify!(wDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTriggerIndex) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMOUT_PARAM), + "::", + stringify!(wTriggerIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAssociateAlarmIn) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMOUT_PARAM), + "::", + stringify!(byAssociateAlarmIn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byModuleType) as usize - ptr as usize }, + 552usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMOUT_PARAM), + "::", + stringify!(byModuleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byModuleStatus) as usize - ptr as usize }, + 553usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMOUT_PARAM), + "::", + stringify!(byModuleStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wModuleAddress) as usize - ptr as usize }, + 554usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMOUT_PARAM), + "::", + stringify!(wModuleAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byModuleChan) as usize - ptr as usize }, + 556usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMOUT_PARAM), + "::", + stringify!(byModuleChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkMode) as usize - ptr as usize }, + 557usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMOUT_PARAM), + "::", + stringify!(byWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutMode) as usize - ptr as usize }, + 558usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMOUT_PARAM), + "::", + stringify!(byAlarmOutMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeOn) as usize - ptr as usize }, + 559usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMOUT_PARAM), + "::", + stringify!(byTimeOn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeOff) as usize - ptr as usize }, + 560usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMOUT_PARAM), + "::", + stringify!(byTimeOff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDurationConstOutputEnable) as usize - ptr as usize }, + 561usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMOUT_PARAM), + "::", + stringify!(byDurationConstOutputEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 562usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMOUT_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ALARMOUT_PARAM = tagNET_DVR_ALARMOUT_PARAM; +pub type LPNET_DVR_ALARMOUT_PARAM = *mut tagNET_DVR_ALARMOUT_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMIN_SETUP { + pub byAssiciateAlarmIn: [BYTE; 512usize], + pub byRes: [BYTE; 100usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMIN_SETUP() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 612usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMIN_SETUP)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMIN_SETUP)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAssiciateAlarmIn) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_SETUP), + "::", + stringify!(byAssiciateAlarmIn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 512usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_SETUP), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMIN_SETUP = tagNET_DVR_ALARMIN_SETUP; +pub type LPNET_DVR_ALARMIN_SETUP = *mut tagNET_DVR_ALARMIN_SETUP; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_MAIN_STATUS { + pub dwSize: DWORD, + pub bySetupAlarmStatus: [BYTE; 512usize], + pub byAlarmInStatus: [BYTE; 512usize], + pub byAlarmOutStatus: [BYTE; 512usize], + pub byBypassStatus: [BYTE; 512usize], + pub bySubSystemGuardStatus: [BYTE; 32usize], + pub byAlarmInFaultStatus: [BYTE; 512usize], + pub byRes: [BYTE; 56usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_MAIN_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2652usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySetupAlarmStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS), + "::", + stringify!(bySetupAlarmStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInStatus) as usize - ptr as usize }, + 516usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS), + "::", + stringify!(byAlarmInStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutStatus) as usize - ptr as usize }, + 1028usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS), + "::", + stringify!(byAlarmOutStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBypassStatus) as usize - ptr as usize }, + 1540usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS), + "::", + stringify!(byBypassStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemGuardStatus) as usize - ptr as usize }, + 2052usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS), + "::", + stringify!(bySubSystemGuardStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInFaultStatus) as usize - ptr as usize }, + 2084usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS), + "::", + stringify!(byAlarmInFaultStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2596usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_MAIN_STATUS = tagNET_DVR_ALARMHOST_MAIN_STATUS; +pub type LPNET_DVR_ALARMHOST_MAIN_STATUS = *mut tagNET_DVR_ALARMHOST_MAIN_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_MAIN_STATUS_V40 { + pub dwSize: DWORD, + pub bySetupAlarmStatus: [BYTE; 512usize], + pub byAlarmInStatus: [BYTE; 512usize], + pub byAlarmOutStatus: [BYTE; 512usize], + pub byBypassStatus: [BYTE; 512usize], + pub bySubSystemGuardStatus: [BYTE; 32usize], + pub byAlarmInFaultStatus: [BYTE; 512usize], + pub byAlarmInMemoryStatus: [BYTE; 512usize], + pub byAlarmInTamperStatus: [BYTE; 512usize], + pub byEnableSubSystem: [BYTE; 32usize], + pub bySubSystemGuardType: [BYTE; 32usize], + pub byRes: [BYTE; 448usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_MAIN_STATUS_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4132usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V40) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V40) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySetupAlarmStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V40), + "::", + stringify!(bySetupAlarmStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInStatus) as usize - ptr as usize }, + 516usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V40), + "::", + stringify!(byAlarmInStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutStatus) as usize - ptr as usize }, + 1028usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V40), + "::", + stringify!(byAlarmOutStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBypassStatus) as usize - ptr as usize }, + 1540usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V40), + "::", + stringify!(byBypassStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemGuardStatus) as usize - ptr as usize }, + 2052usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V40), + "::", + stringify!(bySubSystemGuardStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInFaultStatus) as usize - ptr as usize }, + 2084usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V40), + "::", + stringify!(byAlarmInFaultStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInMemoryStatus) as usize - ptr as usize }, + 2596usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V40), + "::", + stringify!(byAlarmInMemoryStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInTamperStatus) as usize - ptr as usize }, + 3108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V40), + "::", + stringify!(byAlarmInTamperStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableSubSystem) as usize - ptr as usize }, + 3620usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V40), + "::", + stringify!(byEnableSubSystem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemGuardType) as usize - ptr as usize }, + 3652usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V40), + "::", + stringify!(bySubSystemGuardType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3684usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_MAIN_STATUS_V40 = tagNET_DVR_ALARMHOST_MAIN_STATUS_V40; +pub type LPNET_DVR_ALARMHOST_MAIN_STATUS_V40 = *mut tagNET_DVR_ALARMHOST_MAIN_STATUS_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_MAIN_STATUS_V51 { + pub dwSize: DWORD, + pub bySetupAlarmStatus: [BYTE; 512usize], + pub byAlarmInStatus: [BYTE; 512usize], + pub byAlarmOutStatus: [BYTE; 512usize], + pub byBypassStatus: [BYTE; 512usize], + pub bySubSystemGuardStatus: [BYTE; 32usize], + pub byAlarmInFaultStatus: [BYTE; 512usize], + pub byAlarmInMemoryStatus: [BYTE; 512usize], + pub byAlarmInTamperStatus: [BYTE; 512usize], + pub byEnableSubSystem: [BYTE; 32usize], + pub bySubSystemGuardType: [BYTE; 32usize], + pub bySubSystemAlarm: [BYTE; 32usize], + pub byAlarmOutCharge: [BYTE; 512usize], + pub byAlarmOutTamperStatus: [BYTE; 512usize], + pub byAlarmInShieldedStatus: [BYTE; 512usize], + pub byAlarmOutLinkage: [BYTE; 512usize], + pub byRes: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_MAIN_STATUS_V51() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 6276usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V51) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V51) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V51), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySetupAlarmStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V51), + "::", + stringify!(bySetupAlarmStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInStatus) as usize - ptr as usize }, + 516usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V51), + "::", + stringify!(byAlarmInStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutStatus) as usize - ptr as usize }, + 1028usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V51), + "::", + stringify!(byAlarmOutStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBypassStatus) as usize - ptr as usize }, + 1540usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V51), + "::", + stringify!(byBypassStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemGuardStatus) as usize - ptr as usize }, + 2052usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V51), + "::", + stringify!(bySubSystemGuardStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInFaultStatus) as usize - ptr as usize }, + 2084usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V51), + "::", + stringify!(byAlarmInFaultStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInMemoryStatus) as usize - ptr as usize }, + 2596usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V51), + "::", + stringify!(byAlarmInMemoryStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInTamperStatus) as usize - ptr as usize }, + 3108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V51), + "::", + stringify!(byAlarmInTamperStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableSubSystem) as usize - ptr as usize }, + 3620usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V51), + "::", + stringify!(byEnableSubSystem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemGuardType) as usize - ptr as usize }, + 3652usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V51), + "::", + stringify!(bySubSystemGuardType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemAlarm) as usize - ptr as usize }, + 3684usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V51), + "::", + stringify!(bySubSystemAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutCharge) as usize - ptr as usize }, + 3716usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V51), + "::", + stringify!(byAlarmOutCharge) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutTamperStatus) as usize - ptr as usize }, + 4228usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V51), + "::", + stringify!(byAlarmOutTamperStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInShieldedStatus) as usize - ptr as usize }, + 4740usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V51), + "::", + stringify!(byAlarmInShieldedStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutLinkage) as usize - ptr as usize }, + 5252usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V51), + "::", + stringify!(byAlarmOutLinkage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5764usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MAIN_STATUS_V51), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_MAIN_STATUS_V51 = tagNET_DVR_ALARMHOST_MAIN_STATUS_V51; +pub type LPNET_DVR_ALARMHOST_MAIN_STATUS_V51 = *mut tagNET_DVR_ALARMHOST_MAIN_STATUS_V51; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_OTHER_STATUS { + pub dwSize: DWORD, + pub bySirenStatus: [BYTE; 8usize], + pub byRes: [BYTE; 92usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_OTHER_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 104usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySirenStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS), + "::", + stringify!(bySirenStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_OTHER_STATUS = tagNET_DVR_ALARMHOST_OTHER_STATUS; +pub type LPNET_DVR_ALARMHOST_OTHER_STATUS = *mut tagNET_DVR_ALARMHOST_OTHER_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_OTHER_STATUS_V50 { + pub dwSize: DWORD, + pub bySirenStatus: [BYTE; 8usize], + pub byDetetorPower: [BYTE; 128usize], + pub byDetetorConnection: [BYTE; 128usize], + pub bySirenPower: [BYTE; 8usize], + pub bySirenTamperStatus: [BYTE; 8usize], + pub byPowerStausEnabled: [BYTE; 16usize], + pub byDetetorPowerStatus: [BYTE; 16usize], + pub byDetetorPowerType: BYTE, + pub byRes: [BYTE; 975usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_OTHER_STATUS_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1292usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V50) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySirenStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V50), + "::", + stringify!(bySirenStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetetorPower) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V50), + "::", + stringify!(byDetetorPower) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetetorConnection) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V50), + "::", + stringify!(byDetetorConnection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySirenPower) as usize - ptr as usize }, + 268usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V50), + "::", + stringify!(bySirenPower) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySirenTamperStatus) as usize - ptr as usize }, + 276usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V50), + "::", + stringify!(bySirenTamperStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPowerStausEnabled) as usize - ptr as usize }, + 284usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V50), + "::", + stringify!(byPowerStausEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetetorPowerStatus) as usize - ptr as usize }, + 300usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V50), + "::", + stringify!(byDetetorPowerStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetetorPowerType) as usize - ptr as usize }, + 316usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V50), + "::", + stringify!(byDetetorPowerType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 317usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_OTHER_STATUS_V50 = tagNET_DVR_ALARMHOST_OTHER_STATUS_V50; +pub type LPNET_DVR_ALARMHOST_OTHER_STATUS_V50 = *mut tagNET_DVR_ALARMHOST_OTHER_STATUS_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_OTHER_STATUS_V51 { + pub dwSize: DWORD, + pub bySirenStatus: [BYTE; 8usize], + pub byDetetorPower: [BYTE; 256usize], + pub byDetetorConnection: [BYTE; 256usize], + pub bySirenPower: [BYTE; 8usize], + pub bySirenTamperStatus: [BYTE; 8usize], + pub byPowerStausEnabled: [BYTE; 32usize], + pub byDetetorPowerStatus: [BYTE; 32usize], + pub byDetetorPowerType: BYTE, + pub byRes2: [BYTE; 3usize], + pub byRepeaterStatus: [BYTE; 16usize], + pub byRepeaterTamperStatus: [BYTE; 2usize], + pub byAlarmOutTamperStatus: [BYTE; 64usize], + pub byOutputModuleTamperStatus: [BYTE; 8usize], + pub byElectricLockStatus: [BYTE; 64usize], + pub byRes: [BYTE; 274usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_OTHER_STATUS_V51() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1036usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V51) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V51) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V51), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySirenStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V51), + "::", + stringify!(bySirenStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetetorPower) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V51), + "::", + stringify!(byDetetorPower) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetetorConnection) as usize - ptr as usize }, + 268usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V51), + "::", + stringify!(byDetetorConnection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySirenPower) as usize - ptr as usize }, + 524usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V51), + "::", + stringify!(bySirenPower) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySirenTamperStatus) as usize - ptr as usize }, + 532usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V51), + "::", + stringify!(bySirenTamperStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPowerStausEnabled) as usize - ptr as usize }, + 540usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V51), + "::", + stringify!(byPowerStausEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetetorPowerStatus) as usize - ptr as usize }, + 572usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V51), + "::", + stringify!(byDetetorPowerStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetetorPowerType) as usize - ptr as usize }, + 604usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V51), + "::", + stringify!(byDetetorPowerType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 605usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V51), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRepeaterStatus) as usize - ptr as usize }, + 608usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V51), + "::", + stringify!(byRepeaterStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRepeaterTamperStatus) as usize - ptr as usize }, + 624usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V51), + "::", + stringify!(byRepeaterTamperStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutTamperStatus) as usize - ptr as usize }, + 626usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V51), + "::", + stringify!(byAlarmOutTamperStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutputModuleTamperStatus) as usize - ptr as usize }, + 690usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V51), + "::", + stringify!(byOutputModuleTamperStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byElectricLockStatus) as usize - ptr as usize }, + 698usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V51), + "::", + stringify!(byElectricLockStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 762usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_OTHER_STATUS_V51), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_OTHER_STATUS_V51 = tagNET_DVR_ALARMHOST_OTHER_STATUS_V51; +pub type LPNET_DVR_ALARMHOST_OTHER_STATUS_V51 = *mut tagNET_DVR_ALARMHOST_OTHER_STATUS_V51; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_ENABLECFG { + pub dwSize: DWORD, + pub byAudioOutEnable: [BYTE; 32usize], + pub byElectroLockEnable: [BYTE; 32usize], + pub byMobileGateEnable: [BYTE; 32usize], + pub bySirenEnable: [BYTE; 8usize], + pub bySerialPurpose: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_ENABLECFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 172usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMHOST_ENABLECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMHOST_ENABLECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ENABLECFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioOutEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ENABLECFG), + "::", + stringify!(byAudioOutEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byElectroLockEnable) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ENABLECFG), + "::", + stringify!(byElectroLockEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMobileGateEnable) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ENABLECFG), + "::", + stringify!(byMobileGateEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySirenEnable) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ENABLECFG), + "::", + stringify!(bySirenEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySerialPurpose) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ENABLECFG), + "::", + stringify!(bySerialPurpose) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 109usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ENABLECFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_ENABLECFG = tagNET_DVR_ALARMHOST_ENABLECFG; +pub type LPNET_DVR_ALARMHOST_ENABLECFG = *mut tagNET_DVR_ALARMHOST_ENABLECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_ABILITY { + pub dwSize: DWORD, + pub wTotalAlarmInNum: WORD, + pub wLocalAlarmInNum: WORD, + pub wExpandAlarmInNum: WORD, + pub wTotalAlarmOutNum: WORD, + pub wLocalAlarmOutNum: WORD, + pub wExpandAlarmOutNum: WORD, + pub wTotalRs485Num: WORD, + pub wLocalRs485Num: WORD, + pub wExpandRs485Num: WORD, + pub wFullDuplexRs485Num: WORD, + pub wTotalSensorNum: WORD, + pub wLocalSensorNum: WORD, + pub wExpandSensorNum: WORD, + pub wAudioOutNum: WORD, + pub wGatewayNum: WORD, + pub wElectroLockNum: WORD, + pub wSirenNum: WORD, + pub wSubSystemNum: WORD, + pub wNetUserNum: WORD, + pub wKeyboardNum: WORD, + pub wOperatorUserNum: WORD, + pub bySupportDetector: BYTE, + pub bySupportSensitivity: BYTE, + pub bySupportArrayBypass: BYTE, + pub bySupportAlarmInDelay: BYTE, + pub bySupportAlarmInType: [BYTE; 16usize], + pub byTelNum: BYTE, + pub byCenterGroupNum: BYTE, + pub byGPRSNum: BYTE, + pub byNetNum: BYTE, + pub byAudioNum: BYTE, + pub by3GNum: BYTE, + pub byAnalogVideoChanNum: BYTE, + pub byDigitalVideoChanNum: BYTE, + pub bySubSystemArmType: BYTE, + pub byPublicSubSystemNum: BYTE, + pub dwSupport1: DWORD, + pub dwSubSystemEvent: DWORD, + pub dwOverallEvent: DWORD, + pub dwFaultType: DWORD, + pub byPublicSubsystemAssociateSubsystemNum: BYTE, + pub byOverallKeyboard: BYTE, + pub wSafetyCabinSupport: WORD, + pub by485SlotNum: BYTE, + pub bySubSystemAttributeAbility: BYTE, + pub wKeyboardAddrNum: WORD, + pub byAlarmLampNum: BYTE, + pub byRes: [BYTE; 117usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_ABILITY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 220usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMHOST_ABILITY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMHOST_ABILITY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTotalAlarmInNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(wTotalAlarmInNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalAlarmInNum) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(wLocalAlarmInNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wExpandAlarmInNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(wExpandAlarmInNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTotalAlarmOutNum) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(wTotalAlarmOutNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalAlarmOutNum) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(wLocalAlarmOutNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wExpandAlarmOutNum) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(wExpandAlarmOutNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTotalRs485Num) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(wTotalRs485Num) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalRs485Num) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(wLocalRs485Num) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wExpandRs485Num) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(wExpandRs485Num) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFullDuplexRs485Num) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(wFullDuplexRs485Num) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTotalSensorNum) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(wTotalSensorNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalSensorNum) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(wLocalSensorNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wExpandSensorNum) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(wExpandSensorNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAudioOutNum) as usize - ptr as usize }, + 30usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(wAudioOutNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wGatewayNum) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(wGatewayNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wElectroLockNum) as usize - ptr as usize }, + 34usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(wElectroLockNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSirenNum) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(wSirenNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSubSystemNum) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(wSubSystemNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wNetUserNum) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(wNetUserNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wKeyboardNum) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(wKeyboardNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wOperatorUserNum) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(wOperatorUserNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportDetector) as usize - ptr as usize }, + 46usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(bySupportDetector) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportSensitivity) as usize - ptr as usize }, + 47usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(bySupportSensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportArrayBypass) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(bySupportArrayBypass) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportAlarmInDelay) as usize - ptr as usize }, + 49usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(bySupportAlarmInDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportAlarmInType) as usize - ptr as usize }, + 50usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(bySupportAlarmInType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTelNum) as usize - ptr as usize }, + 66usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(byTelNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCenterGroupNum) as usize - ptr as usize }, + 67usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(byCenterGroupNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGPRSNum) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(byGPRSNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetNum) as usize - ptr as usize }, + 69usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(byNetNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioNum) as usize - ptr as usize }, + 70usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(byAudioNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).by3GNum) as usize - ptr as usize }, + 71usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(by3GNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAnalogVideoChanNum) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(byAnalogVideoChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDigitalVideoChanNum) as usize - ptr as usize }, + 73usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(byDigitalVideoChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemArmType) as usize - ptr as usize }, + 74usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(bySubSystemArmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPublicSubSystemNum) as usize - ptr as usize }, + 75usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(byPublicSubSystemNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSupport1) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(dwSupport1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSubSystemEvent) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(dwSubSystemEvent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOverallEvent) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(dwOverallEvent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFaultType) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(dwFaultType) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byPublicSubsystemAssociateSubsystemNum) as usize + - ptr as usize + }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(byPublicSubsystemAssociateSubsystemNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverallKeyboard) as usize - ptr as usize }, + 93usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(byOverallKeyboard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSafetyCabinSupport) as usize - ptr as usize }, + 94usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(wSafetyCabinSupport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).by485SlotNum) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(by485SlotNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemAttributeAbility) as usize - ptr as usize }, + 97usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(bySubSystemAttributeAbility) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wKeyboardAddrNum) as usize - ptr as usize }, + 98usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(wKeyboardAddrNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmLampNum) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(byAlarmLampNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 101usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ABILITY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_ABILITY = tagNET_DVR_ALARMHOST_ABILITY; +pub type LPNET_DVR_ALARMHOST_ABILITY = *mut tagNET_DVR_ALARMHOST_ABILITY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_485_SLOT_LIST_INFO { + pub dwSize: DWORD, + pub byAll: BYTE, + pub byres: [BYTE; 3usize], + pub byIndex: [BYTE; 256usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_485_SLOT_LIST_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 328usize, + concat!("Size of: ", stringify!(tagNET_DVR_485_SLOT_LIST_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_485_SLOT_LIST_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_485_SLOT_LIST_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAll) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_485_SLOT_LIST_INFO), + "::", + stringify!(byAll) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byres) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_485_SLOT_LIST_INFO), + "::", + stringify!(byres) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIndex) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_485_SLOT_LIST_INFO), + "::", + stringify!(byIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_485_SLOT_LIST_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_485_SLOT_LIST_INFO = tagNET_DVR_485_SLOT_LIST_INFO; +pub type LPNET_DVR_485_SLOT_LIST_INFO = *mut tagNET_DVR_485_SLOT_LIST_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_485LIST_INFO { + pub dwSize: DWORD, + pub byAll: BYTE, + pub byres: [BYTE; 3usize], + pub byIndex: [BYTE; 256usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_485LIST_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 328usize, + concat!("Size of: ", stringify!(tagNET_DVR_485LIST_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_485LIST_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_485LIST_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAll) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_485LIST_INFO), + "::", + stringify!(byAll) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byres) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_485LIST_INFO), + "::", + stringify!(byres) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIndex) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_485LIST_INFO), + "::", + stringify!(byIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_485LIST_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_485LIST_INFO = tagNET_DVR_485LIST_INFO; +pub type LPNET_DVR_485LIST_INFO = *mut tagNET_DVR_485LIST_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARM_RS485CFG { + pub dwSize: DWORD, + pub sDeviceName: [BYTE; 32usize], + pub wDeviceType: WORD, + pub wDeviceProtocol: WORD, + pub dwBaudRate: DWORD, + pub byDataBit: BYTE, + pub byStopBit: BYTE, + pub byParity: BYTE, + pub byFlowcontrol: BYTE, + pub byDuplex: BYTE, + pub byWorkMode: BYTE, + pub byChannel: BYTE, + pub bySerialType: BYTE, + pub byMode: BYTE, + pub byOutputDataType: BYTE, + pub byAddress: BYTE, + pub byStairsOutputDataType: BYTE, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARM_RS485CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARM_RS485CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARM_RS485CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RS485CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDeviceName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RS485CFG), + "::", + stringify!(sDeviceName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDeviceType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RS485CFG), + "::", + stringify!(wDeviceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDeviceProtocol) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RS485CFG), + "::", + stringify!(wDeviceProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBaudRate) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RS485CFG), + "::", + stringify!(dwBaudRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataBit) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RS485CFG), + "::", + stringify!(byDataBit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStopBit) as usize - ptr as usize }, + 45usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RS485CFG), + "::", + stringify!(byStopBit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParity) as usize - ptr as usize }, + 46usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RS485CFG), + "::", + stringify!(byParity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlowcontrol) as usize - ptr as usize }, + 47usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RS485CFG), + "::", + stringify!(byFlowcontrol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDuplex) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RS485CFG), + "::", + stringify!(byDuplex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkMode) as usize - ptr as usize }, + 49usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RS485CFG), + "::", + stringify!(byWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 50usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RS485CFG), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySerialType) as usize - ptr as usize }, + 51usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RS485CFG), + "::", + stringify!(bySerialType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RS485CFG), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutputDataType) as usize - ptr as usize }, + 53usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RS485CFG), + "::", + stringify!(byOutputDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddress) as usize - ptr as usize }, + 54usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RS485CFG), + "::", + stringify!(byAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStairsOutputDataType) as usize - ptr as usize }, + 55usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RS485CFG), + "::", + stringify!(byStairsOutputDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RS485CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARM_RS485CFG = tagNET_DVR_ALARM_RS485CFG; +pub type LPNET_DVR_ALARM_RS485CFG = *mut tagNET_DVR_ALARM_RS485CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEVICE_PROTO_LIST { + pub dwSize: DWORD, + pub dwProtoNum: DWORD, + pub struProtoType: [NET_DVR_PROTO_TYPE; 256usize], + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEVICE_PROTO_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 5140usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEVICE_PROTO_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEVICE_PROTO_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_PROTO_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwProtoNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_PROTO_LIST), + "::", + stringify!(dwProtoNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struProtoType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_PROTO_LIST), + "::", + stringify!(struProtoType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_PROTO_LIST), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DEVICE_PROTO_LIST = tagNET_DVR_DEVICE_PROTO_LIST; +pub type LPNET_DVR_DEVICE_PROTO_LIST = *mut tagNET_DVR_DEVICE_PROTO_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEVICE_TYPE { + pub dwType: DWORD, + pub byDescribe: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEVICE_TYPE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEVICE_TYPE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEVICE_TYPE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_TYPE), + "::", + stringify!(dwType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDescribe) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_TYPE), + "::", + stringify!(byDescribe) + ) + ); +} +pub type NET_DVR_DEVICE_TYPE = tagNET_DVR_DEVICE_TYPE; +pub type LPNET_DVR_DEVICE_TYPE = *mut tagNET_DVR_DEVICE_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEVICE_TYPE_LIST { + pub dwSize: DWORD, + pub dwTypeNum: DWORD, + pub struDeviceType: [NET_DVR_DEVICE_TYPE; 256usize], + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEVICE_TYPE_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 5140usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEVICE_TYPE_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEVICE_TYPE_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_TYPE_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTypeNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_TYPE_LIST), + "::", + stringify!(dwTypeNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDeviceType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_TYPE_LIST), + "::", + stringify!(struDeviceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_TYPE_LIST), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DEVICE_TYPE_LIST = tagNET_DVR_DEVICE_TYPE_LIST; +pub type LPNET_DVR_DEVICE_TYPE_LIST = *mut tagNET_DVR_DEVICE_TYPE_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARM_DEVICE_USER { + pub dwSize: DWORD, + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub struUserIP: NET_DVR_IPADDR, + pub byMACAddr: [BYTE; 6usize], + pub byUserType: BYTE, + pub byAlarmOnRight: BYTE, + pub byAlarmOffRight: BYTE, + pub byBypassRight: BYTE, + pub byOtherRight: [BYTE; 32usize], + pub byNetPreviewRight: [BYTE; 8usize], + pub byNetRecordRight: [BYTE; 8usize], + pub byNetPlaybackRight: [BYTE; 8usize], + pub byNetPTZRight: [BYTE; 8usize], + pub sOriginalPassword: [BYTE; 16usize], + pub sKeypadPassword: [BYTE; 16usize], + pub byUserEnabled: BYTE, + pub byRes2: [BYTE; 135usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARM_DEVICE_USER() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 440usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARM_DEVICE_USER)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARM_DEVICE_USER)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_DEVICE_USER), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_DEVICE_USER), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_DEVICE_USER), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struUserIP) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_DEVICE_USER), + "::", + stringify!(struUserIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMACAddr) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_DEVICE_USER), + "::", + stringify!(byMACAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUserType) as usize - ptr as usize }, + 202usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_DEVICE_USER), + "::", + stringify!(byUserType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOnRight) as usize - ptr as usize }, + 203usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_DEVICE_USER), + "::", + stringify!(byAlarmOnRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOffRight) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_DEVICE_USER), + "::", + stringify!(byAlarmOffRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBypassRight) as usize - ptr as usize }, + 205usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_DEVICE_USER), + "::", + stringify!(byBypassRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOtherRight) as usize - ptr as usize }, + 206usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_DEVICE_USER), + "::", + stringify!(byOtherRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetPreviewRight) as usize - ptr as usize }, + 238usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_DEVICE_USER), + "::", + stringify!(byNetPreviewRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetRecordRight) as usize - ptr as usize }, + 246usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_DEVICE_USER), + "::", + stringify!(byNetRecordRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetPlaybackRight) as usize - ptr as usize }, + 254usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_DEVICE_USER), + "::", + stringify!(byNetPlaybackRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetPTZRight) as usize - ptr as usize }, + 262usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_DEVICE_USER), + "::", + stringify!(byNetPTZRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sOriginalPassword) as usize - ptr as usize }, + 270usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_DEVICE_USER), + "::", + stringify!(sOriginalPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sKeypadPassword) as usize - ptr as usize }, + 286usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_DEVICE_USER), + "::", + stringify!(sKeypadPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUserEnabled) as usize - ptr as usize }, + 302usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_DEVICE_USER), + "::", + stringify!(byUserEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 303usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_DEVICE_USER), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ALARM_DEVICE_USER = tagNET_DVR_ALARM_DEVICE_USER; +pub type LPNET_DVR_ALARM_DEVICE_USER = *mut tagNET_DVR_ALARM_DEVICE_USER; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_KEYBOARD_USER { + pub dwSize: DWORD, + pub dwID: DWORD, + pub byDefanceArea: [BYTE; 512usize], + pub byRes: [BYTE; 560usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_KEYBOARD_USER() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1080usize, + concat!("Size of: ", stringify!(tagNET_DVR_KEYBOARD_USER)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_KEYBOARD_USER)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_KEYBOARD_USER), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_KEYBOARD_USER), + "::", + stringify!(dwID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDefanceArea) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_KEYBOARD_USER), + "::", + stringify!(byDefanceArea) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 520usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_KEYBOARD_USER), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_KEYBOARD_USER = tagNET_DVR_KEYBOARD_USER; +pub type LPNET_DVR_KEYBOARD_USER = *mut tagNET_DVR_KEYBOARD_USER; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OPERATE_USER { + pub dwSize: DWORD, + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub bySubSystemPermission: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OPERATE_USER() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 116usize, + concat!("Size of: ", stringify!(tagNET_DVR_OPERATE_USER)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OPERATE_USER)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_USER), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_USER), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_USER), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemPermission) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_USER), + "::", + stringify!(bySubSystemPermission) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 53usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_USER), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_OPERATE_USER = tagNET_DVR_OPERATE_USER; +pub type LPNET_DVR_OPERATE_USER = *mut tagNET_DVR_OPERATE_USER; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GATEWAY_CFG { + pub dwSize: DWORD, + pub byName: [BYTE; 32usize], + pub byEnable: BYTE, + pub byLocalEnable: BYTE, + pub wDelayTime: WORD, + pub byLockWorkMode: BYTE, + pub byRes: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GATEWAY_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_GATEWAY_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GATEWAY_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATEWAY_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATEWAY_CFG), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATEWAY_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalEnable) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATEWAY_CFG), + "::", + stringify!(byLocalEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDelayTime) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATEWAY_CFG), + "::", + stringify!(wDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLockWorkMode) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATEWAY_CFG), + "::", + stringify!(byLockWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATEWAY_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GATEWAY_CFG = tagNET_DVR_GATEWAY_CFG; +pub type LPNET_DVR_GATEWAY_CFG = *mut tagNET_DVR_GATEWAY_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SENSOR_ALARM { + pub dwSize: DWORD, + pub dwAbsTime: DWORD, + pub byName: [BYTE; 32usize], + pub bySensorChannel: BYTE, + pub byType: BYTE, + pub byAlarmType: BYTE, + pub byAlarmMode: BYTE, + pub fValue: f32, + pub fOriginalValue: f32, + pub byRes2: [BYTE; 28usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SENSOR_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_SENSOR_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SENSOR_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ALARM), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ALARM), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensorChannel) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ALARM), + "::", + stringify!(bySensorChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ALARM), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ALARM), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmMode) as usize - ptr as usize }, + 43usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ALARM), + "::", + stringify!(byAlarmMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fValue) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ALARM), + "::", + stringify!(fValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fOriginalValue) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ALARM), + "::", + stringify!(fOriginalValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ALARM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SENSOR_ALARM = tagNET_DVR_SENSOR_ALARM; +pub type LPNET_DVR_SENSOR_ALARM = *mut tagNET_DVR_SENSOR_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RS485_PROTOCOL_VERSION { + pub dwSize: DWORD, + pub byProtocleVersion: [BYTE; 32usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RS485_PROTOCOL_VERSION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 164usize, + concat!("Size of: ", stringify!(tagNET_DVR_RS485_PROTOCOL_VERSION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_RS485_PROTOCOL_VERSION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RS485_PROTOCOL_VERSION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProtocleVersion) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RS485_PROTOCOL_VERSION), + "::", + stringify!(byProtocleVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RS485_PROTOCOL_VERSION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RS485_PROTOCOL_VERSION = tagNET_DVR_RS485_PROTOCOL_VERSION; +pub type LPNET_DVR_RS485_PROTOCOL_VESRION = *mut tagNET_DVR_RS485_PROTOCOL_VERSION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_ALARMHOST_ALARMINFO { + pub dwAlarmType: DWORD, + pub byAlarmInputNumber: [BYTE; 512usize], + pub byRes: [BYTE; 160usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_ALARMHOST_ALARMINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 676usize, + concat!("Size of: ", stringify!(NET_DVR_ALARMHOST_ALARMINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_ALARMHOST_ALARMINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMHOST_ALARMINFO), + "::", + stringify!(dwAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInputNumber) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMHOST_ALARMINFO), + "::", + stringify!(byAlarmInputNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 516usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ALARMHOST_ALARMINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_ALARMHOST_ALARMINFO = *mut NET_DVR_ALARMHOST_ALARMINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SWITCH_ALARM { + pub dwSize: DWORD, + pub byName: [BYTE; 32usize], + pub wSwitchChannel: WORD, + pub byAlarmType: BYTE, + pub byRes: [BYTE; 41usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SWITCH_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_SWITCH_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SWITCH_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_ALARM), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSwitchChannel) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_ALARM), + "::", + stringify!(wSwitchChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_ALARM), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SWITCH_ALARM = tagNET_DVR_SWITCH_ALARM; +pub type LPNET_DVR_SWITCH_ALARM = *mut tagNET_DVR_SWITCH_ALARM; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_ALARMHOST_EXCEPTION_PARAM { + pub dwUnionSize: [DWORD; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_EXCEPTION_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_EXCEPTION_PARAM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_EXCEPTION_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwUnionSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_EXCEPTION_PARAM), + "::", + stringify!(dwUnionSize) + ) + ); +} +pub type NET_DVR_ALARMHOST_EXCEPTION_PARAM = tagNET_DVR_ALARMHOST_EXCEPTION_PARAM; +pub type LPNET_DVR_ALARMHOST_EXCEPTION_PARAM = *mut tagNET_DVR_ALARMHOST_EXCEPTION_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_EXCEPTION_ALARM { + pub dwSize: DWORD, + pub dwExceptionType: DWORD, + pub byRes: [BYTE; 36usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_EXCEPTION_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_EXCEPTION_ALARM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_EXCEPTION_ALARM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_EXCEPTION_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwExceptionType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_EXCEPTION_ALARM), + "::", + stringify!(dwExceptionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_EXCEPTION_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_EXCEPTION_ALARM = tagNET_DVR_ALARMHOST_EXCEPTION_ALARM; +pub type LPNET_DVR_ALARMHOST_EXCEPTION_ALARM = *mut tagNET_DVR_ALARMHOST_EXCEPTION_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PHONECENTERDIALCFG { + pub sCenterName: [BYTE; 32usize], + pub byPhoneNum: [BYTE; 32usize], + pub byRepeatCall: BYTE, + pub byPstnProtocol: BYTE, + pub byDialDelay: BYTE, + pub byPstnTransMode: BYTE, + pub byEnable: BYTE, + pub byRes1: [BYTE; 5usize], + pub byReceiverId: [BYTE; 6usize], + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PHONECENTERDIALCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 112usize, + concat!("Size of: ", stringify!(tagNET_DVR_PHONECENTERDIALCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PHONECENTERDIALCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCenterName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONECENTERDIALCFG), + "::", + stringify!(sCenterName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPhoneNum) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONECENTERDIALCFG), + "::", + stringify!(byPhoneNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRepeatCall) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONECENTERDIALCFG), + "::", + stringify!(byRepeatCall) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPstnProtocol) as usize - ptr as usize }, + 65usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONECENTERDIALCFG), + "::", + stringify!(byPstnProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDialDelay) as usize - ptr as usize }, + 66usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONECENTERDIALCFG), + "::", + stringify!(byDialDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPstnTransMode) as usize - ptr as usize }, + 67usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONECENTERDIALCFG), + "::", + stringify!(byPstnTransMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONECENTERDIALCFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 69usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONECENTERDIALCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReceiverId) as usize - ptr as usize }, + 74usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONECENTERDIALCFG), + "::", + stringify!(byReceiverId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONECENTERDIALCFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PHONECENTERDIALCFG = tagNET_DVR_PHONECENTERDIALCFG; +pub type LPNET_DVR_PHONECENTERDIALCFG = *mut tagNET_DVR_PHONECENTERDIALCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOSTDIALCFG { + pub dwSize: DWORD, + pub struPhoneCenterParam: [NET_DVR_PHONECENTERDIALCFG; 4usize], + pub wReportPeriod: WORD, + pub wFirstReportTime: WORD, + pub byReportValid: BYTE, + pub byRes: [BYTE; 19usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOSTDIALCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 476usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMHOSTDIALCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMHOSTDIALCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOSTDIALCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPhoneCenterParam) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOSTDIALCFG), + "::", + stringify!(struPhoneCenterParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wReportPeriod) as usize - ptr as usize }, + 452usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOSTDIALCFG), + "::", + stringify!(wReportPeriod) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFirstReportTime) as usize - ptr as usize }, + 454usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOSTDIALCFG), + "::", + stringify!(wFirstReportTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReportValid) as usize - ptr as usize }, + 456usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOSTDIALCFG), + "::", + stringify!(byReportValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 457usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOSTDIALCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOSTDIALCFG = tagNET_DVR_ALARMHOSTDIALCFG; +pub type LPNET_DVR_ALARMHOSTDIALCFG = *mut tagNET_DVR_ALARMHOSTDIALCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOSTDIALSETUPMODE { + pub dwSize: DWORD, + pub byEnableMode: BYTE, + pub byCallType: BYTE, + pub byRes1: [BYTE; 14usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOSTDIALSETUPMODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMHOSTDIALSETUPMODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOSTDIALSETUPMODE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOSTDIALSETUPMODE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOSTDIALSETUPMODE), + "::", + stringify!(byEnableMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCallType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOSTDIALSETUPMODE), + "::", + stringify!(byCallType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOSTDIALSETUPMODE), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_ALARMHOSTDIALSETUPMODE = tagNET_DVR_ALARMHOSTDIALSETUPMODE; +pub type LPNET_DVR_ALARMHOSTDIALSETUPMODE = *mut tagNET_DVR_ALARMHOSTDIALSETUPMODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PU_CHAN_INFO { + pub struIpAddr: NET_DVR_IPADDR, + pub wPort: WORD, + pub wChannel: WORD, + pub byRes: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PU_CHAN_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 172usize, + concat!("Size of: ", stringify!(tagNET_DVR_PU_CHAN_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PU_CHAN_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIpAddr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_CHAN_INFO), + "::", + stringify!(struIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_CHAN_INFO), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wChannel) as usize - ptr as usize }, + 146usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_CHAN_INFO), + "::", + stringify!(wChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_CHAN_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PU_CHAN_INFO = tagNET_DVR_PU_CHAN_INFO; +pub type LPNET_DVR_PU_CHAN_INFO = *mut tagNET_DVR_PU_CHAN_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PU_CHAN_LIST { + pub dwSize: DWORD, + pub dwNum: DWORD, + pub struPuChanInfo: [NET_DVR_PU_CHAN_INFO; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PU_CHAN_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88072usize, + concat!("Size of: ", stringify!(tagNET_DVR_PU_CHAN_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PU_CHAN_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_CHAN_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_CHAN_LIST), + "::", + stringify!(dwNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPuChanInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_CHAN_LIST), + "::", + stringify!(struPuChanInfo) + ) + ); +} +pub type NET_DVR_PU_CHAN_LIST = tagNET_DVR_PU_CHAN_LIST; +pub type LPNET_DVR_PU_CHAN_LIST = *mut tagNET_DVR_PU_CHAN_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZ_CTRL { + pub byEnable: BYTE, + pub byType: BYTE, + pub byPtzNo: BYTE, + pub byRes: [BYTE; 5usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZ_CTRL() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZ_CTRL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZ_CTRL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_CTRL), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_CTRL), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPtzNo) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_CTRL), + "::", + stringify!(byPtzNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_CTRL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PTZ_CTRL = tagNET_DVR_PTZ_CTRL; +pub type LPNET_DVR_PTZ_CTRL = *mut tagNET_DVR_PTZ_CTRL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARM_CAM_INFO { + pub dwCamID: DWORD, + pub dwRecordTime: DWORD, + pub dwMonID: DWORD, + pub dwResidentTime: DWORD, + pub struPtzCtrl: NET_DVR_PTZ_CTRL, + pub byAlarmOffMode: BYTE, + pub byDevType: BYTE, + pub byDecChan: BYTE, + pub byRes: [BYTE; 17usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARM_CAM_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARM_CAM_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARM_CAM_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCamID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_CAM_INFO), + "::", + stringify!(dwCamID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_CAM_INFO), + "::", + stringify!(dwRecordTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMonID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_CAM_INFO), + "::", + stringify!(dwMonID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwResidentTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_CAM_INFO), + "::", + stringify!(dwResidentTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPtzCtrl) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_CAM_INFO), + "::", + stringify!(struPtzCtrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOffMode) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_CAM_INFO), + "::", + stringify!(byAlarmOffMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevType) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_CAM_INFO), + "::", + stringify!(byDevType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecChan) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_CAM_INFO), + "::", + stringify!(byDecChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 27usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_CAM_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARM_CAM_INFO = tagNET_DVR_ALARM_CAM_INFO; +pub type LPNET_DVR_ALARM_CAM_INFO = *mut tagNET_DVR_ALARM_CAM_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARM_CAM_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes: [BYTE; 7usize], + pub dwNum: DWORD, + pub struAlarmCam: [NET_DVR_ALARM_CAM_INFO; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARM_CAM_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1424usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARM_CAM_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARM_CAM_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_CAM_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_CAM_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_CAM_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNum) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_CAM_CFG), + "::", + stringify!(dwNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmCam) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_CAM_CFG), + "::", + stringify!(struAlarmCam) + ) + ); +} +pub type NET_DVR_ALARM_CAM_CFG = tagNET_DVR_ALARM_CAM_CFG; +pub type LPNET_DVR_ALARM_CAM_CFG = *mut tagNET_DVR_ALARM_CAM_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_AUDIO_ASSOCIATE_ALARM { + pub dwSize: DWORD, + pub byEnterDoor: [BYTE; 8usize], + pub byExitDoor: [BYTE; 8usize], + pub byAlarmIn: [BYTE; 512usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_AUDIO_ASSOCIATE_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 660usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_AUDIO_ASSOCIATE_ALARM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_AUDIO_ASSOCIATE_ALARM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_AUDIO_ASSOCIATE_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnterDoor) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_AUDIO_ASSOCIATE_ALARM), + "::", + stringify!(byEnterDoor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExitDoor) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_AUDIO_ASSOCIATE_ALARM), + "::", + stringify!(byExitDoor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmIn) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_AUDIO_ASSOCIATE_ALARM), + "::", + stringify!(byAlarmIn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 532usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_AUDIO_ASSOCIATE_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_AUDIO_ASSOCIATE_ALARM = tagNET_DVR_ALARMHOST_AUDIO_ASSOCIATE_ALARM; +pub type LPNET_DVR_ALARMHOST_AUDIO_ASSOCIATE_ALARM = + *mut tagNET_DVR_ALARMHOST_AUDIO_ASSOCIATE_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_UPLOAD_PARAM { + pub dwSize: DWORD, + pub byUploadType: BYTE, + pub byDataType: BYTE, + pub byDataNum: BYTE, + pub byAudioType: BYTE, + pub sFileName: [::std::os::raw::c_char; 260usize], + pub lpBuffer: *mut ::std::os::raw::c_char, + pub dwBufferSize: DWORD, + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_UPLOAD_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 416usize, + concat!("Size of: ", stringify!(tagNET_DVR_UPLOAD_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_UPLOAD_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUploadType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_PARAM), + "::", + stringify!(byUploadType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_PARAM), + "::", + stringify!(byDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataNum) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_PARAM), + "::", + stringify!(byDataNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioType) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_PARAM), + "::", + stringify!(byAudioType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_PARAM), + "::", + stringify!(sFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpBuffer) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_PARAM), + "::", + stringify!(lpBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBufferSize) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_PARAM), + "::", + stringify!(dwBufferSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 284usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_UPLOAD_PARAM = tagNET_DVR_UPLOAD_PARAM; +pub type LPNET_DVR_UPLOAD_PARAM = *mut tagNET_DVR_UPLOAD_PARAM; +pub type DATADOWNLOAD = ::std::option::Option< + unsafe extern "C" fn( + nDownloadHandle: LONG, + dwDataType: DWORD, + pBuffer: *mut ::std::os::raw::c_void, + dwBufSize: DWORD, + pUser: *mut ::std::os::raw::c_void, + ), +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_PARAM { + pub dwSize: DWORD, + pub byDownType: BYTE, + pub byDataType: BYTE, + pub byDataNum: BYTE, + pub byRes1: BYTE, + pub sFileName: [::std::os::raw::c_char; 260usize], + pub lpDataCallBack: DATADOWNLOAD, + pub pUserData: *mut ::std::os::raw::c_void, + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 416usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMHOST_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMHOST_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDownType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_PARAM), + "::", + stringify!(byDownType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_PARAM), + "::", + stringify!(byDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataNum) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_PARAM), + "::", + stringify!(byDataNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_PARAM), + "::", + stringify!(sFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpDataCallBack) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_PARAM), + "::", + stringify!(lpDataCallBack) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pUserData) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_PARAM), + "::", + stringify!(pUserData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DOWNLOAD_PARAM = tagNET_DVR_ALARMHOST_PARAM; +pub type LPNET_DVR_DOWNLOAD_PARAM = *mut tagNET_DVR_ALARMHOST_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_DOWNLOAD_PARAM { + pub dwSize: DWORD, + pub byDownType: BYTE, + pub byDataType: BYTE, + pub byDataNum: BYTE, + pub byRes1: BYTE, + pub sFileName: [::std::os::raw::c_char; 260usize], + pub lpDataCallBack: DATADOWNLOAD, + pub pUserData: *mut ::std::os::raw::c_void, + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_DOWNLOAD_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 416usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMHOST_DOWNLOAD_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_DOWNLOAD_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_DOWNLOAD_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDownType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_DOWNLOAD_PARAM), + "::", + stringify!(byDownType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_DOWNLOAD_PARAM), + "::", + stringify!(byDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataNum) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_DOWNLOAD_PARAM), + "::", + stringify!(byDataNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_DOWNLOAD_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_DOWNLOAD_PARAM), + "::", + stringify!(sFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpDataCallBack) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_DOWNLOAD_PARAM), + "::", + stringify!(lpDataCallBack) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pUserData) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_DOWNLOAD_PARAM), + "::", + stringify!(pUserData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_DOWNLOAD_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ALARMHOST_DOWNLOAD_PARAM = tagNET_DVR_ALARMHOST_DOWNLOAD_PARAM; +pub type LPNET_DVR_ALARMHOST_DOWNLOAD_PARAM = *mut tagNET_DVR_ALARMHOST_DOWNLOAD_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_SCREEN_CFG { + pub dwSize: DWORD, + pub sLEDName: [BYTE; 32usize], + pub byTransMode: BYTE, + pub byProtocolType: BYTE, + pub byLEDColor: BYTE, + pub byDataPolarity: BYTE, + pub byOEPolarity: BYTE, + pub byScanMode: BYTE, + pub byRes1: [BYTE; 2usize], + pub wLEDWidth: WORD, + pub wLEDHeight: WORD, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_SCREEN_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 112usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_SCREEN_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LED_SCREEN_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_SCREEN_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLEDName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_SCREEN_CFG), + "::", + stringify!(sLEDName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransMode) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_SCREEN_CFG), + "::", + stringify!(byTransMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProtocolType) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_SCREEN_CFG), + "::", + stringify!(byProtocolType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLEDColor) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_SCREEN_CFG), + "::", + stringify!(byLEDColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataPolarity) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_SCREEN_CFG), + "::", + stringify!(byDataPolarity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOEPolarity) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_SCREEN_CFG), + "::", + stringify!(byOEPolarity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScanMode) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_SCREEN_CFG), + "::", + stringify!(byScanMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_SCREEN_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLEDWidth) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_SCREEN_CFG), + "::", + stringify!(wLEDWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLEDHeight) as usize - ptr as usize }, + 46usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_SCREEN_CFG), + "::", + stringify!(wLEDHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_SCREEN_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_LED_SCREEN_CFG = tagNET_DVR_LED_SCREEN_CFG; +pub type LPNET_DVR_LED_SCREEN_CFG = *mut tagNET_DVR_LED_SCREEN_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_CONTENT_CFG { + pub dwSize: DWORD, + pub sLEDContent: [BYTE; 512usize], + pub byContentAct: BYTE, + pub byContentSpeed: BYTE, + pub byContentStayTime: BYTE, + pub byRes: [BYTE; 33usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_CONTENT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 552usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_CONTENT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LED_CONTENT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_CONTENT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLEDContent) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_CONTENT_CFG), + "::", + stringify!(sLEDContent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byContentAct) as usize - ptr as usize }, + 516usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_CONTENT_CFG), + "::", + stringify!(byContentAct) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byContentSpeed) as usize - ptr as usize }, + 517usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_CONTENT_CFG), + "::", + stringify!(byContentSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byContentStayTime) as usize - ptr as usize }, + 518usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_CONTENT_CFG), + "::", + stringify!(byContentStayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 519usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_CONTENT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LED_CONTENT_CFG = tagNET_DVR_LED_CONTENT_CFG; +pub type LPNET_DVR_LED_CONTENT_CFG = *mut tagNET_DVR_LED_CONTENT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SWITCH_TIME { + pub byValid: BYTE, + pub byRes: [BYTE; 3usize], + pub struTimeOn: NET_DVR_TIME_EX, + pub struTimeOff: NET_DVR_TIME_EX, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SWITCH_TIME() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_SWITCH_TIME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SWITCH_TIME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_TIME), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_TIME), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTimeOn) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_TIME), + "::", + stringify!(struTimeOn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTimeOff) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_TIME), + "::", + stringify!(struTimeOff) + ) + ); +} +pub type NET_DVR_SWITCH_TIME = tagNET_DVR_SWITCH_TIME; +pub type LPNET_DVR_SWITCH_TIME = *mut tagNET_DVR_SWITCH_TIME; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_SWITCH_TIME { + pub dwSize: DWORD, + pub struTimer: [NET_DVR_SWITCH_TIME; 3usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_SWITCH_TIME() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_SWITCH_TIME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LED_SWITCH_TIME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_SWITCH_TIME), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTimer) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_SWITCH_TIME), + "::", + stringify!(struTimer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_SWITCH_TIME), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LED_SWITCH_TIME = tagNET_DVR_LED_SWITCH_TIME; +pub type LPNET_DVR_LED_SWITCH_TIME = *mut tagNET_DVR_LED_SWITCH_TIME; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_BRIGHTNESS_STEP { + pub dwSize: DWORD, + pub byValid: BYTE, + pub byRes1: [BYTE; 3usize], + pub byBrightnessStep: [BYTE; 48usize], + pub byRes2: [BYTE; 48usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_BRIGHTNESS_STEP() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 104usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_BRIGHTNESS_STEP)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LED_BRIGHTNESS_STEP)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_BRIGHTNESS_STEP), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_BRIGHTNESS_STEP), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_BRIGHTNESS_STEP), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrightnessStep) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_BRIGHTNESS_STEP), + "::", + stringify!(byBrightnessStep) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_BRIGHTNESS_STEP), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_LED_BRIGHTNESS_STEP = tagNET_DVR_LED_BRIGHTNESS_STEP; +pub type LPNET_DVR_LED_BRIGHTNESS_STEP = *mut tagNET_DVR_LED_BRIGHTNESS_STEP; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_STATUS { + pub dwSize: DWORD, + pub bySwitchState: BYTE, + pub byBrightness: BYTE, + pub byRes: [BYTE; 62usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LED_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySwitchState) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_STATUS), + "::", + stringify!(bySwitchState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrightness) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_STATUS), + "::", + stringify!(byBrightness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LED_STATUS = tagNET_DVR_LED_STATUS; +pub type LPNET_DVR_LED_STATUS = *mut tagNET_DVR_LED_STATUS; +pub const _HD_DISPLAY_FORMAT_HD_DISPLAY_FORMAT_INVALID: _HD_DISPLAY_FORMAT = 0; +pub const _HD_DISPLAY_FORMAT_HD_DISPLAY_FORMAT_CVBS: _HD_DISPLAY_FORMAT = 1; +pub const _HD_DISPLAY_FORMAT_HD_DISPLAY_FORMAT_DVI: _HD_DISPLAY_FORMAT = 2; +pub const _HD_DISPLAY_FORMAT_HD_DISPLAY_FORMAT_VGA: _HD_DISPLAY_FORMAT = 4; +pub const _HD_DISPLAY_FORMAT_HD_DISPLAY_FORMAT_HDMI: _HD_DISPLAY_FORMAT = 8; +pub const _HD_DISPLAY_FORMAT_HD_DISPLAY_FORMAT_YPbPr: _HD_DISPLAY_FORMAT = 16; +#[doc = "������뿨���ģʽ�궨��"] +pub type _HD_DISPLAY_FORMAT = ::std::os::raw::c_uint; +#[doc = "������뿨���ģʽ�궨��"] +pub use self::_HD_DISPLAY_FORMAT as HD_DISPLAY_FORMAT; +#[doc = "������뿨���ģʽ�궨��"] +pub type LPHD_DISPLAY_FORMAT = *mut _HD_DISPLAY_FORMAT; +#[doc = "������뿨���ģʽ�궨��"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DECCARD_ABILITY { + pub byCardType: BYTE, + pub byDecNums: BYTE, + pub byDispNums: BYTE, + pub byDecStartIdx: BYTE, + pub byDispStartIdx: BYTE, + pub byDispResolution: [BYTE; 80usize], + pub byDispFormat: [BYTE; 8usize], + pub byWindowMode: [[BYTE; 8usize]; 4usize], + pub byRes: [BYTE; 35usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DECCARD_ABILITY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 160usize, + concat!("Size of: ", stringify!(tagNET_DVR_DECCARD_ABILITY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DECCARD_ABILITY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECCARD_ABILITY), + "::", + stringify!(byCardType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecNums) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECCARD_ABILITY), + "::", + stringify!(byDecNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispNums) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECCARD_ABILITY), + "::", + stringify!(byDispNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecStartIdx) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECCARD_ABILITY), + "::", + stringify!(byDecStartIdx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispStartIdx) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECCARD_ABILITY), + "::", + stringify!(byDispStartIdx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispResolution) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECCARD_ABILITY), + "::", + stringify!(byDispResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispFormat) as usize - ptr as usize }, + 85usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECCARD_ABILITY), + "::", + stringify!(byDispFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWindowMode) as usize - ptr as usize }, + 93usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECCARD_ABILITY), + "::", + stringify!(byWindowMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 125usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECCARD_ABILITY), + "::", + stringify!(byRes) + ) + ); +} +#[doc = "������뿨���ģʽ�궨��"] +pub type NET_DVR_DECCARD_ABILITY = tagNET_DVR_DECCARD_ABILITY; +#[doc = "������뿨���ģʽ�궨��"] +pub type LPNET_DVR_DECCARD_ABILITY = *mut tagNET_DVR_DECCARD_ABILITY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DECODESVR_ABILITY { + pub dwSize: DWORD, + pub byCardNums: BYTE, + pub byStartChan: BYTE, + pub byRes1: [BYTE; 2usize], + pub struDecCardAbility: [NET_DVR_DECCARD_ABILITY; 6usize], + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DECODESVR_ABILITY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1032usize, + concat!("Size of: ", stringify!(tagNET_DVR_DECODESVR_ABILITY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DECODESVR_ABILITY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODESVR_ABILITY), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNums) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODESVR_ABILITY), + "::", + stringify!(byCardNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartChan) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODESVR_ABILITY), + "::", + stringify!(byStartChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODESVR_ABILITY), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDecCardAbility) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODESVR_ABILITY), + "::", + stringify!(struDecCardAbility) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 968usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODESVR_ABILITY), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DECODESVR_ABILITY = tagNET_DVR_DECODESVR_ABILITY; +pub type LPNET_DVR_DECODESVR_ABILITY = *mut tagNET_DVR_DECODESVR_ABILITY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_MATRIX_DEV_CHAN_INFO { + pub struIP: NET_DVR_IPADDR, + pub wDVRPort: WORD, + pub byChannel: BYTE, + pub byTransProtocol: BYTE, + pub byTransMode: BYTE, + pub byFactoryType: BYTE, + pub byUsedSlotNum: BYTE, + pub bySlotNum: BYTE, + pub byRes: [BYTE; 68usize], + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_MATRIX_DEV_CHAN_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 268usize, + concat!("Size of: ", stringify!(tagNET_MATRIX_DEV_CHAN_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_MATRIX_DEV_CHAN_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_DEV_CHAN_INFO), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDVRPort) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_DEV_CHAN_INFO), + "::", + stringify!(wDVRPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 146usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_DEV_CHAN_INFO), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransProtocol) as usize - ptr as usize }, + 147usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_DEV_CHAN_INFO), + "::", + stringify!(byTransProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransMode) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_DEV_CHAN_INFO), + "::", + stringify!(byTransMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFactoryType) as usize - ptr as usize }, + 149usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_DEV_CHAN_INFO), + "::", + stringify!(byFactoryType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUsedSlotNum) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_DEV_CHAN_INFO), + "::", + stringify!(byUsedSlotNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySlotNum) as usize - ptr as usize }, + 151usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_DEV_CHAN_INFO), + "::", + stringify!(bySlotNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_DEV_CHAN_INFO), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_DEV_CHAN_INFO), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 252usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_DEV_CHAN_INFO), + "::", + stringify!(sPassword) + ) + ); +} +pub type NET_MATRIX_DEV_CHAN_INFO = tagNET_MATRIX_DEV_CHAN_INFO; +pub type LPNET_MATRIX_DEV_CHAN_INFO = *mut tagNET_MATRIX_DEV_CHAN_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_MATRIX_PU_STREAM_CFG { + pub dwSize: DWORD, + pub struStreamMediaSvrCfg: NET_DVR_STREAM_MEDIA_SERVER_CFG, + pub struDevChanInfo: NET_MATRIX_DEV_CHAN_INFO, +} +#[test] +fn bindgen_test_layout_tagNET_MATRIX_PU_STREAM_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 492usize, + concat!("Size of: ", stringify!(tagNET_MATRIX_PU_STREAM_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_MATRIX_PU_STREAM_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_PU_STREAM_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamMediaSvrCfg) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_PU_STREAM_CFG), + "::", + stringify!(struStreamMediaSvrCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevChanInfo) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_PU_STREAM_CFG), + "::", + stringify!(struDevChanInfo) + ) + ); +} +pub type NET_MATRIX_PU_STREAM_CFG = tagNET_MATRIX_PU_STREAM_CFG; +pub type LPNET_MATRIX_PU_STREAM_CFG = tagNET_MATRIX_PU_STREAM_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIX_CAMERACFG { + pub dwGlobalIndex: DWORD, + pub dwInterIndex: DWORD, + pub sCamName: [BYTE; 32usize], + pub struPuStreamCfg: NET_MATRIX_PU_STREAM_CFG, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_CAMERACFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 532usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIX_CAMERACFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIX_CAMERACFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGlobalIndex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_CAMERACFG), + "::", + stringify!(dwGlobalIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInterIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_CAMERACFG), + "::", + stringify!(dwInterIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCamName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_CAMERACFG), + "::", + stringify!(sCamName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPuStreamCfg) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_CAMERACFG), + "::", + stringify!(struPuStreamCfg) + ) + ); +} +pub type NET_DVR_MATRIX_CAMERACFG = tagNET_DVR_MATRIX_CAMERACFG; +pub type LPNET_DVR_MATRIX_CAMERACFG = *mut tagNET_DVR_MATRIX_CAMERACFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIX_CAMERALIST { + pub dwSize: DWORD, + pub byRes: [BYTE; 12usize], + pub dwCamNum: DWORD, + pub pBuffer: *mut BYTE, + pub dwBufLen: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_CAMERALIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIX_CAMERALIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIX_CAMERALIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_CAMERALIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_CAMERALIST), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCamNum) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_CAMERALIST), + "::", + stringify!(dwCamNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_CAMERALIST), + "::", + stringify!(pBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBufLen) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_CAMERALIST), + "::", + stringify!(dwBufLen) + ) + ); +} +pub type NET_DVR_MATRIX_CAMERALIST = tagNET_DVR_MATRIX_CAMERALIST; +pub type LPNET_DVR_MATRIX_CAMERALIST = *mut tagNET_DVR_MATRIX_CAMERALIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DISP_CHAN_INFO { + pub struIP: NET_DVR_IPADDR, + pub wDVRPort: WORD, + pub byDispChannel: BYTE, + pub byUsedSlotNum: BYTE, + pub bySlotNum: BYTE, + pub byRes: [BYTE; 7usize], + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DISP_CHAN_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 204usize, + concat!("Size of: ", stringify!(tagNET_DVR_DISP_CHAN_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DISP_CHAN_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_CHAN_INFO), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDVRPort) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_CHAN_INFO), + "::", + stringify!(wDVRPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispChannel) as usize - ptr as usize }, + 146usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_CHAN_INFO), + "::", + stringify!(byDispChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUsedSlotNum) as usize - ptr as usize }, + 147usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_CHAN_INFO), + "::", + stringify!(byUsedSlotNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySlotNum) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_CHAN_INFO), + "::", + stringify!(bySlotNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 149usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_CHAN_INFO), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_CHAN_INFO), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_CHAN_INFO), + "::", + stringify!(sPassword) + ) + ); +} +pub type NET_DVR_DISP_CHAN_INFO = tagNET_DVR_DISP_CHAN_INFO; +pub type LPNET_DVR_DISP_CHAN_INFO = *mut tagNET_DVR_DISP_CHAN_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIX_MONITORCFG { + pub dwGlobalIndex: DWORD, + pub dwInterIndex: DWORD, + pub sMonName: [BYTE; 32usize], + pub struDispChanCfg: NET_DVR_DISP_CHAN_INFO, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_MONITORCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 244usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIX_MONITORCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIX_MONITORCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGlobalIndex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_MONITORCFG), + "::", + stringify!(dwGlobalIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInterIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_MONITORCFG), + "::", + stringify!(dwInterIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sMonName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_MONITORCFG), + "::", + stringify!(sMonName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDispChanCfg) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_MONITORCFG), + "::", + stringify!(struDispChanCfg) + ) + ); +} +pub type NET_DVR_MATRIX_MONITORCFG = tagNET_DVR_MATRIX_MONITORCFG; +pub type LPNET_DVR_MATRIX_MONITORCFG = *mut tagNET_DVR_MATRIX_MONITORCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIX_MONITORLIST { + pub dwSize: DWORD, + pub byRes: [BYTE; 12usize], + pub dwMonNum: DWORD, + pub pBuffer: *mut BYTE, + pub dwBufLen: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_MONITORLIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIX_MONITORLIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIX_MONITORLIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_MONITORLIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_MONITORLIST), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMonNum) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_MONITORLIST), + "::", + stringify!(dwMonNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_MONITORLIST), + "::", + stringify!(pBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBufLen) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_MONITORLIST), + "::", + stringify!(dwBufLen) + ) + ); +} +pub type NET_DVR_MATRIX_MONITORLIST = tagNET_DVR_MATRIX_MONITORLIST; +pub type LPNET_DVR_MATRIX_MONITORLIST = *mut tagNET_DVR_MATRIX_MONITORLIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SUBMATRIXINFO { + pub byMainMatrix: BYTE, + pub bySubMatrixSequence: BYTE, + pub byLoginType: BYTE, + pub byRes1: [BYTE; 9usize], + pub struSubMatrixIP: NET_DVR_IPADDR, + pub wSubMatrixPort: WORD, + pub byRes2: [BYTE; 6usize], + pub struSubMatrixIPMask: NET_DVR_IPADDR, + pub struGatewayIpAddr: NET_DVR_IPADDR, + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub sDomainName: [::std::os::raw::c_char; 64usize], + pub sDnsAddress: [::std::os::raw::c_char; 64usize], + pub sSerialNumber: [BYTE; 48usize], + pub byRes3: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUBMATRIXINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 692usize, + concat!("Size of: ", stringify!(tagNET_DVR_SUBMATRIXINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SUBMATRIXINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainMatrix) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBMATRIXINFO), + "::", + stringify!(byMainMatrix) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubMatrixSequence) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBMATRIXINFO), + "::", + stringify!(bySubMatrixSequence) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLoginType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBMATRIXINFO), + "::", + stringify!(byLoginType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBMATRIXINFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSubMatrixIP) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBMATRIXINFO), + "::", + stringify!(struSubMatrixIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSubMatrixPort) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBMATRIXINFO), + "::", + stringify!(wSubMatrixPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 158usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBMATRIXINFO), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSubMatrixIPMask) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBMATRIXINFO), + "::", + stringify!(struSubMatrixIPMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGatewayIpAddr) as usize - ptr as usize }, + 308usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBMATRIXINFO), + "::", + stringify!(struGatewayIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 452usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBMATRIXINFO), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 484usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBMATRIXINFO), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDomainName) as usize - ptr as usize }, + 500usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBMATRIXINFO), + "::", + stringify!(sDomainName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDnsAddress) as usize - ptr as usize }, + 564usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBMATRIXINFO), + "::", + stringify!(sDnsAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSerialNumber) as usize - ptr as usize }, + 628usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBMATRIXINFO), + "::", + stringify!(sSerialNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 676usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBMATRIXINFO), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_SUBMATRIXINFO = tagNET_DVR_SUBMATRIXINFO; +pub type LPNET_DVR_SUBMATRIXINFO = *mut tagNET_DVR_SUBMATRIXINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALLUNITEDMATRIXINFO { + pub dwSize: DWORD, + pub struSubMatrixInfo: [NET_DVR_SUBMATRIXINFO; 8usize], + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALLUNITEDMATRIXINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 5572usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALLUNITEDMATRIXINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALLUNITEDMATRIXINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALLUNITEDMATRIXINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSubMatrixInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALLUNITEDMATRIXINFO), + "::", + stringify!(struSubMatrixInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 5540usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALLUNITEDMATRIXINFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ALLUNITEDMATRIXINFO = tagNET_DVR_ALLUNITEDMATRIXINFO; +pub type LPNET_DVR_ALLUNITEDMATRIXINFO = *mut tagNET_DVR_ALLUNITEDMATRIXINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIXGATEWAYNOTE { + pub wTrunkInToOutAbility: WORD, + pub wTrunkOutToInAbility: WORD, + pub byRes: [BYTE; 4usize], + pub struInputNote: NET_DVR_MATRIXSUBSYSTEMINFO, + pub struOutputNote: NET_DVR_MATRIXSUBSYSTEMINFO, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIXGATEWAYNOTE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIXGATEWAYNOTE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIXGATEWAYNOTE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTrunkInToOutAbility) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXGATEWAYNOTE), + "::", + stringify!(wTrunkInToOutAbility) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTrunkOutToInAbility) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXGATEWAYNOTE), + "::", + stringify!(wTrunkOutToInAbility) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXGATEWAYNOTE), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInputNote) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXGATEWAYNOTE), + "::", + stringify!(struInputNote) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOutputNote) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXGATEWAYNOTE), + "::", + stringify!(struOutputNote) + ) + ); +} +pub type NET_DVR_MATRIXGATEWAYNOTE = tagNET_DVR_MATRIXGATEWAYNOTE; +pub type LPNET_DVR_MATRIXGATEWAYNOTE = *mut tagNET_DVR_MATRIXGATEWAYNOTE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIXGATEWAYINFO { + pub dwSize: DWORD, + pub struGatewayNote: [NET_DVR_MATRIXGATEWAYNOTE; 1024usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIXGATEWAYINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40996usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIXGATEWAYINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIXGATEWAYINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXGATEWAYINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGatewayNote) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXGATEWAYINFO), + "::", + stringify!(struGatewayNote) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 40964usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXGATEWAYINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MATRIXGATEWAYINFO = tagNET_DVR_MATRIXGATEWAYINFO; +pub type LPNET_DVR_MATRIXGATEWAYINFO = *mut tagNET_DVR_MATRIXGATEWAYINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIXCODESYSTEMINFO { + pub byMatrixNum: BYTE, + pub bySubSystemNum: BYTE, + pub byChan: BYTE, + pub byRes: [BYTE; 13usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIXCODESYSTEMINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIXCODESYSTEMINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIXCODESYSTEMINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMatrixNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXCODESYSTEMINFO), + "::", + stringify!(byMatrixNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemNum) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXCODESYSTEMINFO), + "::", + stringify!(bySubSystemNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChan) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXCODESYSTEMINFO), + "::", + stringify!(byChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXCODESYSTEMINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MATRIXCODESYSTEMINFO = tagNET_DVR_MATRIXCODESYSTEMINFO; +pub type LPNET_DVR_MATRIXCODESYSTEMINFO = *mut tagNET_DVR_MATRIXCODESYSTEMINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIXDECODESYSTEMINFO { + pub byMatrixNum: BYTE, + pub bySubSystemNum: BYTE, + pub byDispChan: BYTE, + pub bySubDispChan: BYTE, + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIXDECODESYSTEMINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIXDECODESYSTEMINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MATRIXDECODESYSTEMINFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMatrixNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXDECODESYSTEMINFO), + "::", + stringify!(byMatrixNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemNum) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXDECODESYSTEMINFO), + "::", + stringify!(bySubSystemNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispChan) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXDECODESYSTEMINFO), + "::", + stringify!(byDispChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubDispChan) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXDECODESYSTEMINFO), + "::", + stringify!(bySubDispChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXDECODESYSTEMINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MATRIXDECODESYSTEMINFO = tagNET_DVR_MATRIXDECODESYSTEMINFO; +pub type LPNET_DVR_MATRIXDECODESYSTEMINFO = *mut tagNET_DVR_MATRIXDECODESYSTEMINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIXSWITCH { + pub struInputNote: NET_DVR_MATRIXCODESYSTEMINFO, + pub struOutputNote: NET_DVR_MATRIXDECODESYSTEMINFO, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIXSWITCH() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIXSWITCH)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIXSWITCH)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInputNote) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXSWITCH), + "::", + stringify!(struInputNote) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOutputNote) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXSWITCH), + "::", + stringify!(struOutputNote) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXSWITCH), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MATRIXSWITCH = tagNET_DVR_MATRIXSWITCH; +pub type LPNET_DVR_MATRIXSWITCH = *mut tagNET_DVR_MATRIXSWITCH; +pub const DEV_TYPE_ENC_CARD: DEV_TYPE = 0; +pub const DEV_TYPE_DEC_CARD: DEV_TYPE = 1; +pub const DEV_TYPE_SD_DEC_CARD: DEV_TYPE = 2; +pub const DEV_TYPE_FPGA_CARD: DEV_TYPE = 3; +pub const DEV_TYPE_CS_CARD: DEV_TYPE = 4; +pub const DEV_TYPE_ALERTOR_CARD: DEV_TYPE = 5; +pub const DEV_TYPE_NAT_0: DEV_TYPE = 6; +pub const DEV_TYPE_NAT_1: DEV_TYPE = 7; +pub const DEV_TYPE_VCA_CARD: DEV_TYPE = 8; +pub const DEV_TYPE_VGA_DEC_CARD: DEV_TYPE = 9; +pub const DEV_TYPE_VGA_ENC_CARD: DEV_TYPE = 10; +pub const DEV_TYPE_ERR_CARD: DEV_TYPE = 11; +pub type DEV_TYPE = ::std::os::raw::c_uint; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIXSWITCHCTRL { + pub dwCamId: DWORD, + pub dwMonId: DWORD, + pub bySubWindowNum: BYTE, + pub bySwitchType: BYTE, + pub wAlarmType: WORD, + pub dwResidentTime: DWORD, + pub byVcaDevType: BYTE, + pub byWallNo: BYTE, + pub byRes: [BYTE; 18usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIXSWITCHCTRL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIXSWITCHCTRL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIXSWITCHCTRL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCamId) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXSWITCHCTRL), + "::", + stringify!(dwCamId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMonId) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXSWITCHCTRL), + "::", + stringify!(dwMonId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubWindowNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXSWITCHCTRL), + "::", + stringify!(bySubWindowNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySwitchType) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXSWITCHCTRL), + "::", + stringify!(bySwitchType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAlarmType) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXSWITCHCTRL), + "::", + stringify!(wAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwResidentTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXSWITCHCTRL), + "::", + stringify!(dwResidentTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVcaDevType) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXSWITCHCTRL), + "::", + stringify!(byVcaDevType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWallNo) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXSWITCHCTRL), + "::", + stringify!(byWallNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXSWITCHCTRL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MATRIXSWITCHCTRL = tagNET_DVR_MATRIXSWITCHCTRL; +pub type LPNET_DVR_MATRIXSWITCHCTRL = *mut tagNET_DVR_MATRIXSWITCHCTRL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIXDATABASE { + pub dwDevType: DWORD, + pub dwParam: DWORD, + pub byFileType: BYTE, + pub byRes: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIXDATABASE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIXDATABASE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIXDATABASE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDevType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXDATABASE), + "::", + stringify!(dwDevType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwParam) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXDATABASE), + "::", + stringify!(dwParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXDATABASE), + "::", + stringify!(byFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXDATABASE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MATRIXDATABASE = tagNET_DVR_MATRIXDATABASE; +pub type LPNET_DVR_MATRIXDATABASE = *mut tagNET_DVR_MATRIXDATABASE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SUBSYSTEMINFO_V40 { + pub bySubSystemType: BYTE, + pub byChan: BYTE, + pub byLoginType: BYTE, + pub bySlotNum: BYTE, + pub byRes1: [BYTE; 4usize], + pub struSubSystemIP: NET_DVR_IPADDR, + pub struSubSystemIPMask: NET_DVR_IPADDR, + pub struGatewayIpAddr: NET_DVR_IPADDR, + pub wSubSystemPort: WORD, + pub byRes2: [BYTE; 6usize], + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub sDomainName: [::std::os::raw::c_char; 64usize], + pub sDnsAddress: [::std::os::raw::c_char; 64usize], + pub sSerialNumber: [BYTE; 48usize], + pub byBelongBoard: BYTE, + pub byInterfaceType: BYTE, + pub byInterfaceNums: BYTE, + pub byInterfaceStartNum: BYTE, + pub byDeviceName: [BYTE; 20usize], + pub byAudioChanNums: BYTE, + pub byAudioChanStartNum: BYTE, + pub byAudioChanType: BYTE, + pub byRes3: [BYTE; 33usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUBSYSTEMINFO_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 732usize, + concat!("Size of: ", stringify!(tagNET_DVR_SUBSYSTEMINFO_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SUBSYSTEMINFO_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO_V40), + "::", + stringify!(bySubSystemType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChan) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO_V40), + "::", + stringify!(byChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLoginType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO_V40), + "::", + stringify!(byLoginType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySlotNum) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO_V40), + "::", + stringify!(bySlotNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO_V40), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSubSystemIP) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO_V40), + "::", + stringify!(struSubSystemIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSubSystemIPMask) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO_V40), + "::", + stringify!(struSubSystemIPMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGatewayIpAddr) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO_V40), + "::", + stringify!(struGatewayIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSubSystemPort) as usize - ptr as usize }, + 440usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO_V40), + "::", + stringify!(wSubSystemPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 442usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO_V40), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 448usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO_V40), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 480usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO_V40), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDomainName) as usize - ptr as usize }, + 496usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO_V40), + "::", + stringify!(sDomainName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDnsAddress) as usize - ptr as usize }, + 560usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO_V40), + "::", + stringify!(sDnsAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSerialNumber) as usize - ptr as usize }, + 624usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO_V40), + "::", + stringify!(sSerialNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBelongBoard) as usize - ptr as usize }, + 672usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO_V40), + "::", + stringify!(byBelongBoard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInterfaceType) as usize - ptr as usize }, + 673usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO_V40), + "::", + stringify!(byInterfaceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInterfaceNums) as usize - ptr as usize }, + 674usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO_V40), + "::", + stringify!(byInterfaceNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInterfaceStartNum) as usize - ptr as usize }, + 675usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO_V40), + "::", + stringify!(byInterfaceStartNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceName) as usize - ptr as usize }, + 676usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO_V40), + "::", + stringify!(byDeviceName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioChanNums) as usize - ptr as usize }, + 696usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO_V40), + "::", + stringify!(byAudioChanNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioChanStartNum) as usize - ptr as usize }, + 697usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO_V40), + "::", + stringify!(byAudioChanStartNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioChanType) as usize - ptr as usize }, + 698usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO_V40), + "::", + stringify!(byAudioChanType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 699usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEMINFO_V40), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_SUBSYSTEMINFO_V40 = tagNET_DVR_SUBSYSTEMINFO_V40; +pub type LPNET_DVR_SUBSYSTEMINFO_V40 = *mut tagNET_DVR_SUBSYSTEMINFO_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALLSUBSYSTEMINFO_V40 { + pub dwSize: DWORD, + pub struSubSystemInfo: [NET_DVR_SUBSYSTEMINFO_V40; 120usize], + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALLSUBSYSTEMINFO_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 87852usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALLSUBSYSTEMINFO_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALLSUBSYSTEMINFO_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALLSUBSYSTEMINFO_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSubSystemInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALLSUBSYSTEMINFO_V40), + "::", + stringify!(struSubSystemInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 87844usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALLSUBSYSTEMINFO_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALLSUBSYSTEMINFO_V40 = tagNET_DVR_ALLSUBSYSTEMINFO_V40; +pub type LPNET_DVR_ALLSUBSYSTEMINFO_V40 = *mut tagNET_DVR_ALLSUBSYSTEMINFO_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SUBSYSTEM_BASIC_INFO { + pub dwSize: DWORD, + pub bySubSystemType: BYTE, + pub bySubSystemNo: BYTE, + pub byInterfaceType: BYTE, + pub byRes1: BYTE, + pub dwChan: DWORD, + pub struSubSystemIP: NET_DVR_IPADDR, + pub struSubSystemIPMask: NET_DVR_IPADDR, + pub struGatewayIpAddr: NET_DVR_IPADDR, + pub wSubSystemPort: WORD, + pub byRes2: [BYTE; 6usize], + pub sSerialNumber: [BYTE; 48usize], + pub byBelongBoard: BYTE, + pub byBelongBoardH: BYTE, + pub byRes3: [BYTE; 2usize], + pub byDeviceName: [BYTE; 20usize], + pub dwStartChanNo: DWORD, + pub byDevNo: BYTE, + pub byRes4: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUBSYSTEM_BASIC_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 592usize, + concat!("Size of: ", stringify!(tagNET_DVR_SUBSYSTEM_BASIC_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SUBSYSTEM_BASIC_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_BASIC_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_BASIC_INFO), + "::", + stringify!(bySubSystemType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemNo) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_BASIC_INFO), + "::", + stringify!(bySubSystemNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInterfaceType) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_BASIC_INFO), + "::", + stringify!(byInterfaceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_BASIC_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChan) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_BASIC_INFO), + "::", + stringify!(dwChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSubSystemIP) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_BASIC_INFO), + "::", + stringify!(struSubSystemIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSubSystemIPMask) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_BASIC_INFO), + "::", + stringify!(struSubSystemIPMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGatewayIpAddr) as usize - ptr as usize }, + 300usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_BASIC_INFO), + "::", + stringify!(struGatewayIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSubSystemPort) as usize - ptr as usize }, + 444usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_BASIC_INFO), + "::", + stringify!(wSubSystemPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 446usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_BASIC_INFO), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSerialNumber) as usize - ptr as usize }, + 452usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_BASIC_INFO), + "::", + stringify!(sSerialNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBelongBoard) as usize - ptr as usize }, + 500usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_BASIC_INFO), + "::", + stringify!(byBelongBoard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBelongBoardH) as usize - ptr as usize }, + 501usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_BASIC_INFO), + "::", + stringify!(byBelongBoardH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 502usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_BASIC_INFO), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceName) as usize - ptr as usize }, + 504usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_BASIC_INFO), + "::", + stringify!(byDeviceName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStartChanNo) as usize - ptr as usize }, + 524usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_BASIC_INFO), + "::", + stringify!(dwStartChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevNo) as usize - ptr as usize }, + 528usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_BASIC_INFO), + "::", + stringify!(byDevNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes4) as usize - ptr as usize }, + 529usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_BASIC_INFO), + "::", + stringify!(byRes4) + ) + ); +} +pub type NET_DVR_SUBSYSTEM_BASIC_INFO = tagNET_DVR_SUBSYSTEM_BASIC_INFO; +pub type LPNET_DVR_SUBSYSTEM_BASIC_INFO = *mut tagNET_DVR_SUBSYSTEM_BASIC_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_SUBSYSTEM_BASIC_INFO_RESPONSE { + pub dwSize: DWORD, + pub dwErrorCode: DWORD, + pub byDevNo: BYTE, + pub bySubSystemNo: BYTE, + pub byRes: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_SUBSYSTEM_BASIC_INFO_RESPONSE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!( + "Size of: ", + stringify!(NET_DVR_SUBSYSTEM_BASIC_INFO_RESPONSE) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(NET_DVR_SUBSYSTEM_BASIC_INFO_RESPONSE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SUBSYSTEM_BASIC_INFO_RESPONSE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwErrorCode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SUBSYSTEM_BASIC_INFO_RESPONSE), + "::", + stringify!(dwErrorCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SUBSYSTEM_BASIC_INFO_RESPONSE), + "::", + stringify!(byDevNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemNo) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SUBSYSTEM_BASIC_INFO_RESPONSE), + "::", + stringify!(bySubSystemNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SUBSYSTEM_BASIC_INFO_RESPONSE), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_SUBSYSTEM_BASIC_INFO_RESPONSE = *mut NET_DVR_SUBSYSTEM_BASIC_INFO_RESPONSE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_CAMERA_INFO_RESPONSE { + pub dwErrorCode: DWORD, + pub dwCamId: DWORD, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_CAMERA_INFO_RESPONSE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(NET_DVR_CAMERA_INFO_RESPONSE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_CAMERA_INFO_RESPONSE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwErrorCode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CAMERA_INFO_RESPONSE), + "::", + stringify!(dwErrorCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCamId) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CAMERA_INFO_RESPONSE), + "::", + stringify!(dwCamId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CAMERA_INFO_RESPONSE), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_CAMERA_INFO_RESPONSE = *mut NET_DVR_CAMERA_INFO_RESPONSE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_MONITOR_INFO_RESPONSE { + pub dwErrorCode: DWORD, + pub dwMonId: DWORD, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_MONITOR_INFO_RESPONSE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(NET_DVR_MONITOR_INFO_RESPONSE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_MONITOR_INFO_RESPONSE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwErrorCode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MONITOR_INFO_RESPONSE), + "::", + stringify!(dwErrorCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMonId) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MONITOR_INFO_RESPONSE), + "::", + stringify!(dwMonId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MONITOR_INFO_RESPONSE), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_MONITOR_INFO_RESPONSE = *mut NET_DVR_MONITOR_INFO_RESPONSE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUDIO_INFO { + pub dwSize: DWORD, + pub byAudioChanType: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwAudioNo: DWORD, + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUDIO_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUDIO_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AUDIO_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioChanType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_INFO), + "::", + stringify!(byAudioChanType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAudioNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_INFO), + "::", + stringify!(dwAudioNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_AUDIO_INFO = tagNET_DVR_AUDIO_INFO; +pub type LPNET_DVR_AUDIO_INFO = *mut tagNET_DVR_AUDIO_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SINGLESUBSYSTEMJOININFO_V40 { + pub bySubSystemType: BYTE, + pub byConnectStatus: BYTE, + pub byMatrixNum: BYTE, + pub bySubSystemNum: BYTE, + pub struDecSub: [NET_DVR_DECSUBSYSTEMJIONSTATUS; 4usize], + pub byBindStatus: BYTE, + pub bySlotNum: BYTE, + pub byDecodeAbility: BYTE, + pub byUsedTrunk: BYTE, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SINGLESUBSYSTEMJOININFO_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 104usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO_V40) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO_V40) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO_V40), + "::", + stringify!(bySubSystemType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byConnectStatus) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO_V40), + "::", + stringify!(byConnectStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMatrixNum) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO_V40), + "::", + stringify!(byMatrixNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemNum) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO_V40), + "::", + stringify!(bySubSystemNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDecSub) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO_V40), + "::", + stringify!(struDecSub) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBindStatus) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO_V40), + "::", + stringify!(byBindStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySlotNum) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO_V40), + "::", + stringify!(bySlotNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecodeAbility) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO_V40), + "::", + stringify!(byDecodeAbility) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUsedTrunk) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO_V40), + "::", + stringify!(byUsedTrunk) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SINGLESUBSYSTEMJOININFO_V40 = tagNET_DVR_SINGLESUBSYSTEMJOININFO_V40; +pub type LPNET_DVR_SINGLESUBSYSTEMJOININFO_V40 = tagNET_DVR_SINGLESUBSYSTEMJOININFO_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALLDECSUBSYSTEMJOININFO_V40 { + pub dwSize: DWORD, + pub struSingleSubSystemJoinInfo: [NET_DVR_SINGLESUBSYSTEMJOININFO_V40; 120usize], + pub byRes: [BYTE; 48usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALLDECSUBSYSTEMJOININFO_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12532usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALLDECSUBSYSTEMJOININFO_V40) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALLDECSUBSYSTEMJOININFO_V40) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALLDECSUBSYSTEMJOININFO_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSingleSubSystemJoinInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALLDECSUBSYSTEMJOININFO_V40), + "::", + stringify!(struSingleSubSystemJoinInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12484usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALLDECSUBSYSTEMJOININFO_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALLDECSUBSYSTEMJOININFO_V40 = tagNET_DVR_ALLDECSUBSYSTEMJOININFO_V40; +pub type LPNET_DVR_ALLDECSUBSYSTEMJOININFO_V40 = *mut tagNET_DVR_ALLDECSUBSYSTEMJOININFO_V40; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SUBSYSTEM_ABILITY { + pub bySubSystemType: BYTE, + pub byChanNum: BYTE, + pub byStartChan: BYTE, + pub bySlotNum: BYTE, + pub byRes1: [BYTE; 4usize], + pub struAbility: tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1 { + pub byRes: [BYTE; 200usize], + pub struVACSystemAbility: tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_1, + pub struDecoderSystemAbility: tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_2, + pub struCoderSystemAbility: tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_3, + pub struInputSystemAbility: tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_4, + pub struOutputSystemAbility: tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_5, + pub struCodeSpitterSystemAbility: tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_6, + pub struAlarmHostSystemAbility: tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_7, + pub struInOutputSystemAbility: tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_8, + pub struFiberSwitchSystemAbility: tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_9, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_1 { + pub byDecode: BYTE, + pub byNeedPreAllocDec: BYTE, + pub byVACType: BYTE, + pub byRes: [BYTE; 197usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 200usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byDecode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNeedPreAllocDec) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byNeedPreAllocDec) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVACType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byVACType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_2 { + pub byVGANums: BYTE, + pub byBNCNums: BYTE, + pub byHDMINums: BYTE, + pub byDVINums: BYTE, + pub byLayerNums: BYTE, + pub bySpartan: BYTE, + pub byDecType: BYTE, + pub byOutputSwitch: BYTE, + pub bySDINums: BYTE, + pub byRes1: [BYTE; 38usize], + pub byDecoderType: BYTE, + pub byRes2: [BYTE; 152usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_2, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 200usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVGANums) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byVGANums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBNCNums) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byBNCNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHDMINums) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byHDMINums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDVINums) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byDVINums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLayerNums) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byLayerNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpartan) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(bySpartan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecType) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byDecType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutputSwitch) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byOutputSwitch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySDINums) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(bySDINums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecoderType) as usize - ptr as usize }, + 47usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byDecoderType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byRes2) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_3 { + pub byCoderType: BYTE, + pub byOptical: BYTE, + pub byOpticalSubChan: BYTE, + pub bySupportAVSeparate: BYTE, + pub byRes: [BYTE; 196usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_3() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_3, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 200usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCoderType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byCoderType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOptical) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byOptical) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOpticalSubChan) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byOpticalSubChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportAVSeparate) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(bySupportAVSeparate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_4 { + pub wTrunkAbility: WORD, + pub byOpticalFiberNum: BYTE, + pub byRes: [BYTE; 197usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_4() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_4, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 200usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_4) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTrunkAbility) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(wTrunkAbility) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOpticalFiberNum) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(byOpticalFiberNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_5 { + pub wTrunkAbility: WORD, + pub byOpticalFiberNum: BYTE, + pub byRes: [BYTE; 197usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_5() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_5, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 200usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_5) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_5) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTrunkAbility) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(wTrunkAbility) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOpticalFiberNum) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byOpticalFiberNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_6 { + pub by485Num: BYTE, + pub bySlotNum: BYTE, + pub byRes: [BYTE; 198usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_6() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_6, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 200usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_6) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_6) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).by485Num) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(by485Num) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySlotNum) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(bySlotNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_7 { + pub wAlarmInNums: WORD, + pub wAlarmOutNums: WORD, + pub byAlarmBoxEnable: [[BYTE; 8usize]; 4usize], + pub bySupportContact: BYTE, + pub byRes: [BYTE; 163usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_7() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_7, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 200usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_7) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_7) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAlarmInNums) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(wAlarmInNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAlarmOutNums) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(wAlarmOutNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmBoxEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byAlarmBoxEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportContact) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(bySupportContact) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_8 { + pub byOpticalFiberNum: BYTE, + pub byRes1: [BYTE; 3usize], + pub wTrunkAbility: [WORD; 16usize], + pub byRes2: [BYTE; 164usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_8() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_8, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 200usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_8) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOpticalFiberNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(byOpticalFiberNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTrunkAbility) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(wTrunkAbility) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(byRes2) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_9 { + pub bySupportRingProtocol: BYTE, + pub bySupportRingNums: BYTE, + pub bySupportPortNums: BYTE, + pub byRes: [BYTE; 1usize], + pub dwPortSupportRingProto: DWORD, + pub byRes2: [BYTE; 192usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_9() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_9, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 200usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_9) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_9) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportRingProtocol) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_9), + "::", + stringify!(bySupportRingProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportRingNums) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_9), + "::", + stringify!(bySupportRingNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportPortNums) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_9), + "::", + stringify!(bySupportPortNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_9), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPortSupportRingProto) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_9), + "::", + stringify!(dwPortSupportRingProto) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1__bindgen_ty_9), + "::", + stringify!(byRes2) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 200usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVACSystemAbility) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1), + "::", + stringify!(struVACSystemAbility) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDecoderSystemAbility) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1), + "::", + stringify!(struDecoderSystemAbility) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCoderSystemAbility) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1), + "::", + stringify!(struCoderSystemAbility) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInputSystemAbility) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1), + "::", + stringify!(struInputSystemAbility) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOutputSystemAbility) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1), + "::", + stringify!(struOutputSystemAbility) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).struCodeSpitterSystemAbility) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1), + "::", + stringify!(struCodeSpitterSystemAbility) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmHostSystemAbility) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1), + "::", + stringify!(struAlarmHostSystemAbility) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInOutputSystemAbility) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1), + "::", + stringify!(struInOutputSystemAbility) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).struFiberSwitchSystemAbility) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY__bindgen_ty_1), + "::", + stringify!(struFiberSwitchSystemAbility) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUBSYSTEM_ABILITY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 208usize, + concat!("Size of: ", stringify!(tagNET_DVR_SUBSYSTEM_ABILITY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SUBSYSTEM_ABILITY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY), + "::", + stringify!(bySubSystemType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanNum) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY), + "::", + stringify!(byChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartChan) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY), + "::", + stringify!(byStartChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySlotNum) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY), + "::", + stringify!(bySlotNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAbility) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ABILITY), + "::", + stringify!(struAbility) + ) + ); +} +pub type NET_DVR_SUBSYSTEM_ABILITY = tagNET_DVR_SUBSYSTEM_ABILITY; +pub type LPNET_DVR_SUBSYSTEM_ABILITY = *mut tagNET_DVR_SUBSYSTEM_ABILITY; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_VIDEOPLATFORM_ABILITY_V40 { + pub dwSize: DWORD, + pub byCodeSubSystemNums: BYTE, + pub byDecodeSubSystemNums: BYTE, + pub bySupportNat: BYTE, + pub byInputSubSystemNums: BYTE, + pub byOutputSubSystemNums: BYTE, + pub byCodeSpitterSubSystemNums: BYTE, + pub byAlarmHostSubSystemNums: BYTE, + pub bySupportBigScreenNum: BYTE, + pub byVCASubSystemNums: BYTE, + pub byV6SubSystemNums: BYTE, + pub byV6DecoderSubSystemNums: BYTE, + pub bySupportBigScreenX: BYTE, + pub bySupportBigScreenY: BYTE, + pub bySupportSceneNums: BYTE, + pub byVcaSupportChanMode: BYTE, + pub bySupportScreenNums: BYTE, + pub bySupportLayerNums: BYTE, + pub byNotSupportPreview: BYTE, + pub byNotSupportStorage: BYTE, + pub byUploadLogoMode: BYTE, + pub struSubSystemAbility: [NET_DVR_SUBSYSTEM_ABILITY; 120usize], + pub by485Nums: BYTE, + pub by232Nums: BYTE, + pub bySerieStartChan: BYTE, + pub byScreenMode: BYTE, + pub byDevVersion: BYTE, + pub bySupportBaseMapNums: BYTE, + pub wBaseLengthX: WORD, + pub wBaseLengthY: WORD, + pub bySupportPictureTrans: BYTE, + pub bySupportPreAllocDec: BYTE, + pub bySupportDecAutoManage: BYTE, + pub byTranDevSubSystemNums: BYTE, + pub byFiberSwitchNums: BYTE, + pub byRes2: [BYTE; 625usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEOPLATFORM_ABILITY_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 25624usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCodeSubSystemNums) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(byCodeSubSystemNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecodeSubSystemNums) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(byDecodeSubSystemNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportNat) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(bySupportNat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInputSubSystemNums) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(byInputSubSystemNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutputSubSystemNums) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(byOutputSubSystemNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCodeSpitterSubSystemNums) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(byCodeSpitterSubSystemNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmHostSubSystemNums) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(byAlarmHostSubSystemNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportBigScreenNum) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(bySupportBigScreenNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVCASubSystemNums) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(byVCASubSystemNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byV6SubSystemNums) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(byV6SubSystemNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byV6DecoderSubSystemNums) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(byV6DecoderSubSystemNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportBigScreenX) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(bySupportBigScreenX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportBigScreenY) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(bySupportBigScreenY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportSceneNums) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(bySupportSceneNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVcaSupportChanMode) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(byVcaSupportChanMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportScreenNums) as usize - ptr as usize }, + 19usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(bySupportScreenNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportLayerNums) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(bySupportLayerNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNotSupportPreview) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(byNotSupportPreview) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNotSupportStorage) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(byNotSupportStorage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUploadLogoMode) as usize - ptr as usize }, + 23usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(byUploadLogoMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSubSystemAbility) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(struSubSystemAbility) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).by485Nums) as usize - ptr as usize }, + 24984usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(by485Nums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).by232Nums) as usize - ptr as usize }, + 24985usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(by232Nums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySerieStartChan) as usize - ptr as usize }, + 24986usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(bySerieStartChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScreenMode) as usize - ptr as usize }, + 24987usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(byScreenMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevVersion) as usize - ptr as usize }, + 24988usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(byDevVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportBaseMapNums) as usize - ptr as usize }, + 24989usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(bySupportBaseMapNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBaseLengthX) as usize - ptr as usize }, + 24990usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(wBaseLengthX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBaseLengthY) as usize - ptr as usize }, + 24992usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(wBaseLengthY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportPictureTrans) as usize - ptr as usize }, + 24994usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(bySupportPictureTrans) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportPreAllocDec) as usize - ptr as usize }, + 24995usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(bySupportPreAllocDec) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportDecAutoManage) as usize - ptr as usize }, + 24996usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(bySupportDecAutoManage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTranDevSubSystemNums) as usize - ptr as usize }, + 24997usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(byTranDevSubSystemNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFiberSwitchNums) as usize - ptr as usize }, + 24998usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(byFiberSwitchNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 24999usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY_V40), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_VIDEOPLATFORM_ABILITY_V40 = tagNET_DVR_VIDEOPLATFORM_ABILITY_V40; +pub type LPNET_DVR_VIDEOPLATFORM_ABILITY_V40 = *mut tagNET_DVR_VIDEOPLATFORM_ABILITY_V40; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_VIDEOPLATFORM_ABILITY { + pub dwSize: DWORD, + pub byCodeSubSystemNums: BYTE, + pub byDecodeSubSystemNums: BYTE, + pub bySupportNat: BYTE, + pub byInputSubSystemNums: BYTE, + pub byOutputSubSystemNums: BYTE, + pub byCodeSpitterSubSystemNums: BYTE, + pub byAlarmHostSubSystemNums: BYTE, + pub bySupportBigScreenNum: BYTE, + pub byVCASubSystemNums: BYTE, + pub byRes1: [BYTE; 11usize], + pub struSubSystemAbility: [NET_DVR_SUBSYSTEM_ABILITY; 80usize], + pub by485Nums: BYTE, + pub by232Nums: BYTE, + pub bySerieStartChan: BYTE, + pub byRes2: [BYTE; 637usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEOPLATFORM_ABILITY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 17304usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCodeSubSystemNums) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY), + "::", + stringify!(byCodeSubSystemNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecodeSubSystemNums) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY), + "::", + stringify!(byDecodeSubSystemNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportNat) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY), + "::", + stringify!(bySupportNat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInputSubSystemNums) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY), + "::", + stringify!(byInputSubSystemNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutputSubSystemNums) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY), + "::", + stringify!(byOutputSubSystemNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCodeSpitterSubSystemNums) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY), + "::", + stringify!(byCodeSpitterSubSystemNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmHostSubSystemNums) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY), + "::", + stringify!(byAlarmHostSubSystemNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportBigScreenNum) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY), + "::", + stringify!(bySupportBigScreenNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVCASubSystemNums) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY), + "::", + stringify!(byVCASubSystemNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSubSystemAbility) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY), + "::", + stringify!(struSubSystemAbility) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).by485Nums) as usize - ptr as usize }, + 16664usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY), + "::", + stringify!(by485Nums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).by232Nums) as usize - ptr as usize }, + 16665usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY), + "::", + stringify!(by232Nums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySerieStartChan) as usize - ptr as usize }, + 16666usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY), + "::", + stringify!(bySerieStartChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 16667usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPLATFORM_ABILITY), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_VIDEOPLATFORM_ABILITY = tagNET_DVR_VIDEOPLATFORM_ABILITY; +pub type LPNET_DVR_VIDEOPLATFORM_ABILITY = *mut tagNET_DVR_VIDEOPLATFORM_ABILITY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HOLIDATE_MODEA { + pub byStartMonth: BYTE, + pub byStartDay: BYTE, + pub byEndMonth: BYTE, + pub byEndDay: BYTE, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HOLIDATE_MODEA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_HOLIDATE_MODEA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HOLIDATE_MODEA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartMonth) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDATE_MODEA), + "::", + stringify!(byStartMonth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartDay) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDATE_MODEA), + "::", + stringify!(byStartDay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEndMonth) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDATE_MODEA), + "::", + stringify!(byEndMonth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEndDay) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDATE_MODEA), + "::", + stringify!(byEndDay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDATE_MODEA), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_HOLIDATE_MODEA = tagNET_DVR_HOLIDATE_MODEA; +pub type LPNET_DVR_HOLIDATE_MODEA = *mut tagNET_DVR_HOLIDATE_MODEA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HOLIDATE_MODEB { + pub byStartMonth: BYTE, + pub byStartWeekNum: BYTE, + pub byStartWeekday: BYTE, + pub byEndMonth: BYTE, + pub byEndWeekNum: BYTE, + pub byEndWeekday: BYTE, + pub byRes: [BYTE; 2usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HOLIDATE_MODEB() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_HOLIDATE_MODEB)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HOLIDATE_MODEB)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartMonth) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDATE_MODEB), + "::", + stringify!(byStartMonth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartWeekNum) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDATE_MODEB), + "::", + stringify!(byStartWeekNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartWeekday) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDATE_MODEB), + "::", + stringify!(byStartWeekday) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEndMonth) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDATE_MODEB), + "::", + stringify!(byEndMonth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEndWeekNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDATE_MODEB), + "::", + stringify!(byEndWeekNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEndWeekday) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDATE_MODEB), + "::", + stringify!(byEndWeekday) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDATE_MODEB), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_HOLIDATE_MODEB = tagNET_DVR_HOLIDATE_MODEB; +pub type LPNET_DVR_HOLIDATE_MODEB = *mut tagNET_DVR_HOLIDATE_MODEB; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HOLIDATE_MODEC { + pub wStartYear: WORD, + pub byStartMon: BYTE, + pub byStartDay: BYTE, + pub wEndYear: WORD, + pub byEndMon: BYTE, + pub byEndDay: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HOLIDATE_MODEC() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_HOLIDATE_MODEC)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HOLIDATE_MODEC)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStartYear) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDATE_MODEC), + "::", + stringify!(wStartYear) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartMon) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDATE_MODEC), + "::", + stringify!(byStartMon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartDay) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDATE_MODEC), + "::", + stringify!(byStartDay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wEndYear) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDATE_MODEC), + "::", + stringify!(wEndYear) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEndMon) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDATE_MODEC), + "::", + stringify!(byEndMon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEndDay) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDATE_MODEC), + "::", + stringify!(byEndDay) + ) + ); +} +pub type NET_DVR_HOLIDATE_MODEC = tagNET_DVR_HOLIDATE_MODEC; +pub type LPNET_DVR_HOLIDATE_MODEC = *mut tagNET_DVR_HOLIDATE_MODEC; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_HOLIDATE_UNION { + pub dwSize: [DWORD; 3usize], + pub struModeA: NET_DVR_HOLIDATE_MODEA, + pub struModeB: NET_DVR_HOLIDATE_MODEB, + pub struModeC: NET_DVR_HOLIDATE_MODEC, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HOLIDATE_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_HOLIDATE_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HOLIDATE_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDATE_UNION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struModeA) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDATE_UNION), + "::", + stringify!(struModeA) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struModeB) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDATE_UNION), + "::", + stringify!(struModeB) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struModeC) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDATE_UNION), + "::", + stringify!(struModeC) + ) + ); +} +pub type NET_DVR_HOLIDATE_UNION = tagNET_DVR_HOLIDATE_UNION; +pub type LPNET_DVR_HOLIDATE_UNION = *mut tagNET_DVR_HOLIDATE_UNION; +pub const tagHOLI_DATE_MODE_HOLIDATE_MODEA: tagHOLI_DATE_MODE = 0; +pub const tagHOLI_DATE_MODE_HOLIDATE_MODEB: tagHOLI_DATE_MODE = 1; +pub const tagHOLI_DATE_MODE_HOLIDATE_MODEC: tagHOLI_DATE_MODE = 2; +pub type tagHOLI_DATE_MODE = ::std::os::raw::c_uint; +pub use self::tagHOLI_DATE_MODE as HOLI_DATE_MODE; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_HOLIDAY_PARAM { + pub byEnable: BYTE, + pub byDateMode: BYTE, + pub byRes1: [BYTE; 2usize], + pub uHolidate: NET_DVR_HOLIDATE_UNION, + pub byName: [BYTE; 32usize], + pub byRes2: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HOLIDAY_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_HOLIDAY_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HOLIDAY_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_PARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDateMode) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_PARAM), + "::", + stringify!(byDateMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uHolidate) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_PARAM), + "::", + stringify!(uHolidate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_PARAM), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_HOLIDAY_PARAM = tagNET_DVR_HOLIDAY_PARAM; +pub type LPNET_DVR_HOLIDAY_PARAM = *mut tagNET_DVR_HOLIDAY_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_HOLIDAY_PARAM_CFG { + pub dwSize: DWORD, + pub struHolidayParam: [NET_DVR_HOLIDAY_PARAM; 32usize], + pub byRes: [DWORD; 40usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HOLIDAY_PARAM_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2340usize, + concat!("Size of: ", stringify!(tagNET_DVR_HOLIDAY_PARAM_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HOLIDAY_PARAM_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_PARAM_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHolidayParam) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_PARAM_CFG), + "::", + stringify!(struHolidayParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2180usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_PARAM_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_HOLIDAY_PARAM_CFG = tagNET_DVR_HOLIDAY_PARAM_CFG; +pub type LPNET_DVR_HOLIDAY_PARAM_CFG = *mut tagNET_DVR_HOLIDAY_PARAM_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HOLIDAY_HANDLE { + pub dwSize: DWORD, + pub struAlarmTime: [NET_DVR_SCHEDTIME; 8usize], + pub byRes2: [BYTE; 240usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HOLIDAY_HANDLE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 276usize, + concat!("Size of: ", stringify!(tagNET_DVR_HOLIDAY_HANDLE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HOLIDAY_HANDLE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_HANDLE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_HANDLE), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_HANDLE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_HOLIDAY_HANDLE = tagNET_DVR_HOLIDAY_HANDLE; +pub type LPNET_DVR_HOLIDAY_HANDLE = *mut tagNET_DVR_HOLIDAY_HANDLE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HOLIDAY_HANDLE_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub dwSMDHandleType: DWORD, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HOLIDAY_HANDLE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_HOLIDAY_HANDLE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HOLIDAY_HANDLE_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_HANDLE_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_HANDLE_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSMDHandleType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_HANDLE_COND), + "::", + stringify!(dwSMDHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_HANDLE_COND), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_HOLIDAY_HANDLE_COND = tagNET_DVR_HOLIDAY_HANDLE_COND; +pub type LPNET_DVR_HOLIDAY_HANDLE_COND = *mut tagNET_DVR_HOLIDAY_HANDLE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HOLIDAY_RECORD { + pub dwSize: DWORD, + pub struRecDay: NET_DVR_RECORDDAY, + pub struRecordSched: [NET_DVR_RECORDSCHED; 8usize], + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HOLIDAY_RECORD() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_DVR_HOLIDAY_RECORD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HOLIDAY_RECORD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_RECORD), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRecDay) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_RECORD), + "::", + stringify!(struRecDay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRecordSched) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_RECORD), + "::", + stringify!(struRecordSched) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_RECORD), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_HOLIDAY_RECORD = tagNET_DVR_HOLIDAY_RECORD; +pub type LPNET_DVR_HOLIDAY_RECORD = *mut tagNET_DVR_HOLIDAY_RECORD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ONE_LINK { + pub struIP: NET_DVR_IPADDR, + pub lChannel: LONG, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ONE_LINK() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 180usize, + concat!("Size of: ", stringify!(tagNET_DVR_ONE_LINK)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ONE_LINK)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_LINK), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lChannel) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_LINK), + "::", + stringify!(lChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_LINK), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ONE_LINK = tagNET_DVR_ONE_LINK; +pub type LPNET_DVR_ONE_LINK = *mut tagNET_DVR_ONE_LINK; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LINK_STATUS { + pub dwSize: DWORD, + pub wLinkNum: WORD, + pub byRes1: [BYTE; 2usize], + pub struOneLink: [NET_DVR_ONE_LINK; 128usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LINK_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 23080usize, + concat!("Size of: ", stringify!(tagNET_DVR_LINK_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LINK_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINK_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLinkNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINK_STATUS), + "::", + stringify!(wLinkNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINK_STATUS), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOneLink) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINK_STATUS), + "::", + stringify!(struOneLink) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 23048usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINK_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LINK_STATUS = tagNET_DVR_LINK_STATUS; +pub type LPNET_DVR_LINK_STATUS = *mut tagNET_DVR_LINK_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ONE_BONDING { + pub byMode: BYTE, + pub byUseDhcp: BYTE, + pub byMasterCard: BYTE, + pub byStatus: BYTE, + pub byBond: [BYTE; 4usize], + pub struEtherNet: NET_DVR_ETHERNET_V30, + pub struGatewayIpAddr: NET_DVR_IPADDR, + pub byEnableDNS: BYTE, + pub byBondMode: BYTE, + pub byRes1: [BYTE; 2usize], + pub byBond2: [BYTE; 12usize], + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ONE_BONDING() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 476usize, + concat!("Size of: ", stringify!(tagNET_DVR_ONE_BONDING)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ONE_BONDING)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_BONDING), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseDhcp) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_BONDING), + "::", + stringify!(byUseDhcp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMasterCard) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_BONDING), + "::", + stringify!(byMasterCard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_BONDING), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBond) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_BONDING), + "::", + stringify!(byBond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEtherNet) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_BONDING), + "::", + stringify!(struEtherNet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGatewayIpAddr) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_BONDING), + "::", + stringify!(struGatewayIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableDNS) as usize - ptr as usize }, + 456usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_BONDING), + "::", + stringify!(byEnableDNS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBondMode) as usize - ptr as usize }, + 457usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_BONDING), + "::", + stringify!(byBondMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 458usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_BONDING), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBond2) as usize - ptr as usize }, + 460usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_BONDING), + "::", + stringify!(byBond2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 472usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_BONDING), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ONE_BONDING = tagNET_DVR_ONE_BONDING; +pub type LPNET_DVR_ONE_BONDING = *mut tagNET_DVR_ONE_BONDING; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_NETWORK_BONDING { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byNum: BYTE, + pub byRes1: [BYTE; 2usize], + pub struOneBond: [NET_DVR_ONE_BONDING; 2usize], + pub byRes2: [BYTE; 40usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NETWORK_BONDING() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1000usize, + concat!("Size of: ", stringify!(tagNET_DVR_NETWORK_BONDING)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NETWORK_BONDING)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETWORK_BONDING), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETWORK_BONDING), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNum) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETWORK_BONDING), + "::", + stringify!(byNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETWORK_BONDING), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOneBond) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETWORK_BONDING), + "::", + stringify!(struOneBond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 960usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETWORK_BONDING), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_NETWORK_BONDING = tagNET_DVR_NETWORK_BONDING; +pub type LPNET_DVR_NETWORK_BONDING = *mut tagNET_DVR_NETWORK_BONDING; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DISK_QUOTA { + pub byQuotaType: BYTE, + pub byRes1: [BYTE; 5usize], + pub wStoragePeriod: WORD, + pub dwHCapacity: DWORD, + pub dwLCapacity: DWORD, + pub dwHUsedSpace: DWORD, + pub dwLUsedSpace: DWORD, + pub byQuotaRatio: BYTE, + pub byRes2: [BYTE; 21usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DISK_QUOTA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_DVR_DISK_QUOTA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DISK_QUOTA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byQuotaType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA), + "::", + stringify!(byQuotaType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStoragePeriod) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA), + "::", + stringify!(wStoragePeriod) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHCapacity) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA), + "::", + stringify!(dwHCapacity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLCapacity) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA), + "::", + stringify!(dwLCapacity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHUsedSpace) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA), + "::", + stringify!(dwHUsedSpace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLUsedSpace) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA), + "::", + stringify!(dwLUsedSpace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byQuotaRatio) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA), + "::", + stringify!(byQuotaRatio) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DISK_QUOTA = tagNET_DVR_DISK_QUOTA; +pub type LPNET_DVR_DISK_QUOTA = *mut tagNET_DVR_DISK_QUOTA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DISK_QUOTA_CFG { + pub dwSize: DWORD, + pub struPicQuota: NET_DVR_DISK_QUOTA, + pub struRecordQuota: NET_DVR_DISK_QUOTA, + pub struAddInfoQuota: NET_DVR_DISK_QUOTA, + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DISK_QUOTA_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 160usize, + concat!("Size of: ", stringify!(tagNET_DVR_DISK_QUOTA_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DISK_QUOTA_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPicQuota) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA_CFG), + "::", + stringify!(struPicQuota) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRecordQuota) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA_CFG), + "::", + stringify!(struRecordQuota) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAddInfoQuota) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA_CFG), + "::", + stringify!(struAddInfoQuota) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DISK_QUOTA_CFG = tagNET_DVR_DISK_QUOTA_CFG; +pub type LPNET_DVR_DISK_QUOTA_CFG = *mut tagNET_DVR_DISK_QUOTA_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DISK_QUOTA_V60 { + pub byQuotaType: BYTE, + pub byRes1: [BYTE; 5usize], + pub wStoragePeriod: WORD, + pub dwHCapacity: DWORD, + pub dwLCapacity: DWORD, + pub dwHUsedSpace: DWORD, + pub dwLUsedSpace: DWORD, + pub byQuotaRatio: BYTE, + pub byRes2: [BYTE; 23usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DISK_QUOTA_V60() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_DVR_DISK_QUOTA_V60)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DISK_QUOTA_V60)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byQuotaType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA_V60), + "::", + stringify!(byQuotaType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA_V60), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStoragePeriod) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA_V60), + "::", + stringify!(wStoragePeriod) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHCapacity) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA_V60), + "::", + stringify!(dwHCapacity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLCapacity) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA_V60), + "::", + stringify!(dwLCapacity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHUsedSpace) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA_V60), + "::", + stringify!(dwHUsedSpace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLUsedSpace) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA_V60), + "::", + stringify!(dwLUsedSpace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byQuotaRatio) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA_V60), + "::", + stringify!(byQuotaRatio) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA_V60), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DISK_QUOTA_V60 = tagNET_DVR_DISK_QUOTA_V60; +pub type LPNET_DVR_DISK_QUOTA_V60 = *mut tagNET_DVR_DISK_QUOTA_V60; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DISK_QUOTA_CFG_V60 { + pub dwSize: DWORD, + pub struPicQuota: NET_DVR_DISK_QUOTA_V60, + pub struRecordQuota: NET_DVR_DISK_QUOTA_V60, + pub struAddInfoQuota: NET_DVR_DISK_QUOTA_V60, + pub struPubInfoFile: NET_DVR_DISK_QUOTA_V60, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DISK_QUOTA_CFG_V60() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 452usize, + concat!("Size of: ", stringify!(tagNET_DVR_DISK_QUOTA_CFG_V60)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DISK_QUOTA_CFG_V60)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA_CFG_V60), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPicQuota) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA_CFG_V60), + "::", + stringify!(struPicQuota) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRecordQuota) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA_CFG_V60), + "::", + stringify!(struRecordQuota) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAddInfoQuota) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA_CFG_V60), + "::", + stringify!(struAddInfoQuota) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPubInfoFile) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA_CFG_V60), + "::", + stringify!(struPubInfoFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_QUOTA_CFG_V60), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DISK_QUOTA_CFG_V60 = tagNET_DVR_DISK_QUOTA_CFG_V60; +pub type LPNET_DVR_DISK_QUOTA_CFG_V60 = *mut tagNET_DVR_DISK_QUOTA_CFG_V60; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TIMING_CAPTURE { + pub struJpegPara: NET_DVR_JPEGPARA, + pub dwPicInterval: DWORD, + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TIMING_CAPTURE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_TIMING_CAPTURE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TIMING_CAPTURE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struJpegPara) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIMING_CAPTURE), + "::", + stringify!(struJpegPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicInterval) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIMING_CAPTURE), + "::", + stringify!(dwPicInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIMING_CAPTURE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TIMING_CAPTURE = tagNET_DVR_TIMING_CAPTURE; +pub type LPNET_DVR_TIMING_CAPTURE = *mut tagNET_DVR_TIMING_CAPTURE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REL_CAPTURE_CHAN { + pub byChan: [BYTE; 16usize], + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REL_CAPTURE_CHAN() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_REL_CAPTURE_CHAN)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_REL_CAPTURE_CHAN)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChan) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REL_CAPTURE_CHAN), + "::", + stringify!(byChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REL_CAPTURE_CHAN), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_REL_CAPTURE_CHAN = tagNET_DVR_REL_CAPTURE_CHAN; +pub type LPNET_DVR_REL_CAPTURE_CHAN = *mut tagNET_DVR_REL_CAPTURE_CHAN; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REL_CAPTURE_CHAN_V40 { + pub dwMaxRelCaptureChanNum: DWORD, + pub dwChanNo: [DWORD; 512usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REL_CAPTURE_CHAN_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2084usize, + concat!("Size of: ", stringify!(tagNET_DVR_REL_CAPTURE_CHAN_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_REL_CAPTURE_CHAN_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxRelCaptureChanNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REL_CAPTURE_CHAN_V40), + "::", + stringify!(dwMaxRelCaptureChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChanNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REL_CAPTURE_CHAN_V40), + "::", + stringify!(dwChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2052usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REL_CAPTURE_CHAN_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_REL_CAPTURE_CHAN_V40 = tagNET_DVR_REL_CAPTURE_CHAN_V40; +pub type LPNET_DVR_REL_CAPTURE_CHAN_V40 = *mut tagNET_DVR_REL_CAPTURE_CHAN_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EVENT_CAPTURE_V40 { + pub struJpegPara: NET_DVR_JPEGPARA, + pub dwPicInterval: DWORD, + pub struRelCaptureChan: [NET_DVR_REL_CAPTURE_CHAN_V40; 32usize], + pub struAlarmInCapture: [NET_DVR_REL_CAPTURE_CHAN_V40; 16usize], + pub dwMaxGroupNum: DWORD, + pub byCapTimes: BYTE, + pub byRes: [BYTE; 59usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EVENT_CAPTURE_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 100104usize, + concat!("Size of: ", stringify!(tagNET_DVR_EVENT_CAPTURE_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EVENT_CAPTURE_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struJpegPara) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CAPTURE_V40), + "::", + stringify!(struJpegPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicInterval) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CAPTURE_V40), + "::", + stringify!(dwPicInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRelCaptureChan) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CAPTURE_V40), + "::", + stringify!(struRelCaptureChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmInCapture) as usize - ptr as usize }, + 66696usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CAPTURE_V40), + "::", + stringify!(struAlarmInCapture) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxGroupNum) as usize - ptr as usize }, + 100040usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CAPTURE_V40), + "::", + stringify!(dwMaxGroupNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCapTimes) as usize - ptr as usize }, + 100044usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CAPTURE_V40), + "::", + stringify!(byCapTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 100045usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CAPTURE_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EVENT_CAPTURE_V40 = tagNET_DVR_EVENT_CAPTURE_V40; +pub type LPNET_DVR_EVENT_CAPTURE_V40 = *mut tagNET_DVR_EVENT_CAPTURE_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EVENT_CAPTURE { + pub struJpegPara: NET_DVR_JPEGPARA, + pub dwPicInterval: DWORD, + pub struRelCaptureChan: [NET_DVR_REL_CAPTURE_CHAN; 32usize], + pub struAlarmInCapture: [NET_DVR_REL_CAPTURE_CHAN; 16usize], + pub byCapTimes: BYTE, + pub byRes: [BYTE; 59usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EVENT_CAPTURE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1796usize, + concat!("Size of: ", stringify!(tagNET_DVR_EVENT_CAPTURE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EVENT_CAPTURE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struJpegPara) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CAPTURE), + "::", + stringify!(struJpegPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicInterval) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CAPTURE), + "::", + stringify!(dwPicInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRelCaptureChan) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CAPTURE), + "::", + stringify!(struRelCaptureChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmInCapture) as usize - ptr as usize }, + 1160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CAPTURE), + "::", + stringify!(struAlarmInCapture) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCapTimes) as usize - ptr as usize }, + 1736usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CAPTURE), + "::", + stringify!(byCapTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1737usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CAPTURE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EVENT_CAPTURE = tagNET_DVR_EVENT_CAPTURE; +pub type LPNET_DVR_EVENT_CAPTURE = *mut tagNET_DVR_EVENT_CAPTURE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_JPEG_CAPTURE_CFG_V40 { + pub dwSize: DWORD, + pub struTimingCapture: NET_DVR_TIMING_CAPTURE, + pub struEventCapture: NET_DVR_EVENT_CAPTURE_V40, + pub byStreamType: BYTE, + pub byRes3: [BYTE; 19usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_JPEG_CAPTURE_CFG_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 100148usize, + concat!("Size of: ", stringify!(tagNET_DVR_JPEG_CAPTURE_CFG_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_JPEG_CAPTURE_CFG_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JPEG_CAPTURE_CFG_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTimingCapture) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JPEG_CAPTURE_CFG_V40), + "::", + stringify!(struTimingCapture) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEventCapture) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JPEG_CAPTURE_CFG_V40), + "::", + stringify!(struEventCapture) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 100128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JPEG_CAPTURE_CFG_V40), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 100129usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JPEG_CAPTURE_CFG_V40), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_JPEG_CAPTURE_CFG_V40 = tagNET_DVR_JPEG_CAPTURE_CFG_V40; +pub type LPNET_DVR_JPEG_CAPTURE_CFG_V40 = *mut tagNET_DVR_JPEG_CAPTURE_CFG_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_JPEG_CAPTURE_CFG { + pub dwSize: DWORD, + pub struTimingCapture: NET_DVR_TIMING_CAPTURE, + pub struEventCapture: NET_DVR_EVENT_CAPTURE, + pub byStreamType: BYTE, + pub byRes3: [BYTE; 19usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_JPEG_CAPTURE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1840usize, + concat!("Size of: ", stringify!(tagNET_DVR_JPEG_CAPTURE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_JPEG_CAPTURE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JPEG_CAPTURE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTimingCapture) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JPEG_CAPTURE_CFG), + "::", + stringify!(struTimingCapture) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEventCapture) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JPEG_CAPTURE_CFG), + "::", + stringify!(struEventCapture) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 1820usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JPEG_CAPTURE_CFG), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 1821usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JPEG_CAPTURE_CFG), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_JPEG_CAPTURE_CFG = tagNET_DVR_JPEG_CAPTURE_CFG; +pub type LPNET_DVR_JPEG_CAPTURE_CFG = *mut tagNET_DVR_JPEG_CAPTURE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CAPTURE_DAY { + pub byAllDayCapture: BYTE, + pub byCaptureType: BYTE, + pub byRes: [BYTE; 2usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CAPTURE_DAY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(tagNET_DVR_CAPTURE_DAY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CAPTURE_DAY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAllDayCapture) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_DAY), + "::", + stringify!(byAllDayCapture) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaptureType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_DAY), + "::", + stringify!(byCaptureType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_DAY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CAPTURE_DAY = tagNET_DVR_CAPTURE_DAY; +pub type LPNET_DVR_CAPTURE_DAY = *mut tagNET_DVR_CAPTURE_DAY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CAPTURE_SCHED { + pub struCaptureTime: NET_DVR_SCHEDTIME, + pub byCaptureType: BYTE, + pub byRes: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CAPTURE_SCHED() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_CAPTURE_SCHED)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CAPTURE_SCHED)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCaptureTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_SCHED), + "::", + stringify!(struCaptureTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaptureType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_SCHED), + "::", + stringify!(byCaptureType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_SCHED), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CAPTURE_SCHED = tagNET_DVR_CAPTURE_SCHED; +pub type LPNET_DVR_CAPTURE_SCHED = *mut tagNET_DVR_CAPTURE_SCHED; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCHED_CAPTURECFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub struCaptureDay: [NET_DVR_CAPTURE_DAY; 7usize], + pub struCaptureSched: [[NET_DVR_CAPTURE_SCHED; 8usize]; 7usize], + pub struCaptureHoliday: NET_DVR_CAPTURE_DAY, + pub struHolidaySched: [NET_DVR_CAPTURE_SCHED; 8usize], + pub dwRecorderDuration: DWORD, + pub dwDelayTime: DWORD, + pub byRes: [BYTE; 36usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCHED_CAPTURECFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 596usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCHED_CAPTURECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCHED_CAPTURECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHED_CAPTURECFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHED_CAPTURECFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHED_CAPTURECFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCaptureDay) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHED_CAPTURECFG), + "::", + stringify!(struCaptureDay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCaptureSched) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHED_CAPTURECFG), + "::", + stringify!(struCaptureSched) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCaptureHoliday) as usize - ptr as usize }, + 484usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHED_CAPTURECFG), + "::", + stringify!(struCaptureHoliday) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHolidaySched) as usize - ptr as usize }, + 488usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHED_CAPTURECFG), + "::", + stringify!(struHolidaySched) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecorderDuration) as usize - ptr as usize }, + 552usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHED_CAPTURECFG), + "::", + stringify!(dwRecorderDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDelayTime) as usize - ptr as usize }, + 556usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHED_CAPTURECFG), + "::", + stringify!(dwDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 560usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHED_CAPTURECFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCHED_CAPTURECFG = tagNET_DVR_SCHED_CAPTURECFG; +pub type LPNET_DVR_SCHED_CAPTURECFG = *mut tagNET_DVR_SCHED_CAPTURECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FLOW_TEST_PARAM { + pub dwSize: DWORD, + pub lCardIndex: LONG, + pub dwInterval: DWORD, + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FLOW_TEST_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_FLOW_TEST_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FLOW_TEST_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLOW_TEST_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lCardIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLOW_TEST_PARAM), + "::", + stringify!(lCardIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInterval) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLOW_TEST_PARAM), + "::", + stringify!(dwInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLOW_TEST_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FLOW_TEST_PARAM = tagNET_DVR_FLOW_TEST_PARAM; +pub type LPNET_DVR_FLOW_TEST_PARAM = *mut tagNET_DVR_FLOW_TEST_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FLOW_INFO { + pub dwSize: DWORD, + pub dwSendFlowSize: DWORD, + pub dwRecvFlowSize: DWORD, + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FLOW_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_DVR_FLOW_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FLOW_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLOW_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSendFlowSize) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLOW_INFO), + "::", + stringify!(dwSendFlowSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecvFlowSize) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLOW_INFO), + "::", + stringify!(dwRecvFlowSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLOW_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FLOW_INFO = tagNET_DVR_FLOW_INFO; +pub type LPNET_DVR_FLOW_INFO = *mut tagNET_DVR_FLOW_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECORD_LABEL { + pub dwSize: DWORD, + pub struTimeLabel: NET_DVR_TIME, + pub byQuickAdd: BYTE, + pub byRes1: [BYTE; 3usize], + pub sLabelName: [BYTE; 40usize], + pub byRes2: [BYTE; 40usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECORD_LABEL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 112usize, + concat!("Size of: ", stringify!(tagNET_DVR_RECORD_LABEL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RECORD_LABEL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_LABEL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTimeLabel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_LABEL), + "::", + stringify!(struTimeLabel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byQuickAdd) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_LABEL), + "::", + stringify!(byQuickAdd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 29usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_LABEL), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLabelName) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_LABEL), + "::", + stringify!(sLabelName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_LABEL), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_RECORD_LABEL = tagNET_DVR_RECORD_LABEL; +pub type LPNET_DVR_RECORD_LABEL = *mut tagNET_DVR_RECORD_LABEL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LABEL_IDENTIFY { + pub sLabelIdentify: [BYTE; 64usize], + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LABEL_IDENTIFY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_LABEL_IDENTIFY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LABEL_IDENTIFY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLabelIdentify) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LABEL_IDENTIFY), + "::", + stringify!(sLabelIdentify) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LABEL_IDENTIFY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LABEL_IDENTIFY = tagNET_DVR_LABEL_IDENTIFY; +pub type LPNET_DVR_LABEL_IDENTIFY = *mut tagNET_DVR_LABEL_IDENTIFY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEL_LABEL_PARAM { + pub dwSize: DWORD, + pub byMode: BYTE, + pub byRes1: BYTE, + pub wLabelNum: WORD, + pub struIndentify: [NET_DVR_LABEL_IDENTIFY; 20usize], + pub byRes2: [BYTE; 160usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEL_LABEL_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1608usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEL_LABEL_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEL_LABEL_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_LABEL_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_LABEL_PARAM), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_LABEL_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLabelNum) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_LABEL_PARAM), + "::", + stringify!(wLabelNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIndentify) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_LABEL_PARAM), + "::", + stringify!(struIndentify) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1448usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_LABEL_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DEL_LABEL_PARAM = tagNET_DVR_DEL_LABEL_PARAM; +pub type LPNET_DVR_DEL_LABEL_PARAM = *mut tagNET_DVR_DEL_LABEL_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MOD_LABEL_PARAM { + pub struIndentify: NET_DVR_LABEL_IDENTIFY, + pub byRes1: [BYTE; 24usize], + pub sLabelName: [BYTE; 40usize], + pub byRes2: [BYTE; 40usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MOD_LABEL_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 176usize, + concat!("Size of: ", stringify!(tagNET_DVR_MOD_LABEL_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MOD_LABEL_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIndentify) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOD_LABEL_PARAM), + "::", + stringify!(struIndentify) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOD_LABEL_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLabelName) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOD_LABEL_PARAM), + "::", + stringify!(sLabelName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOD_LABEL_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_MOD_LABEL_PARAM = tagNET_DVR_MOD_LABEL_PARAM; +pub type LPNET_DVR_MOD_LABEL_PARAM = *mut tagNET_DVR_MOD_LABEL_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FIND_LABEL { + pub dwSize: DWORD, + pub lChannel: LONG, + pub struStartTime: NET_DVR_TIME, + pub struStopTime: NET_DVR_TIME, + pub sLabelName: [BYTE; 40usize], + pub byDrawFrame: BYTE, + pub byISO8601: BYTE, + pub cStartTimeDifferenceH: ::std::os::raw::c_char, + pub cStartTimeDifferenceM: ::std::os::raw::c_char, + pub cStopTimeDifferenceH: ::std::os::raw::c_char, + pub cStopTimeDifferenceM: ::std::os::raw::c_char, + pub byRes: [BYTE; 34usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FIND_LABEL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_FIND_LABEL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FIND_LABEL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_LABEL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_LABEL), + "::", + stringify!(lChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_LABEL), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_LABEL), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLabelName) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_LABEL), + "::", + stringify!(sLabelName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDrawFrame) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_LABEL), + "::", + stringify!(byDrawFrame) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byISO8601) as usize - ptr as usize }, + 97usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_LABEL), + "::", + stringify!(byISO8601) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStartTimeDifferenceH) as usize - ptr as usize }, + 98usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_LABEL), + "::", + stringify!(cStartTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStartTimeDifferenceM) as usize - ptr as usize }, + 99usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_LABEL), + "::", + stringify!(cStartTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStopTimeDifferenceH) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_LABEL), + "::", + stringify!(cStopTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStopTimeDifferenceM) as usize - ptr as usize }, + 101usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_LABEL), + "::", + stringify!(cStopTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 102usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_LABEL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FIND_LABEL = tagNET_DVR_FIND_LABEL; +pub type LPNET_DVR_FIND_LABEL = *mut tagNET_DVR_FIND_LABEL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FINDLABEL_DATA { + pub sLabelName: [BYTE; 40usize], + pub struTimeLabel: NET_DVR_TIME, + pub struLabelIdentify: NET_DVR_LABEL_IDENTIFY, + pub byISO8601: BYTE, + pub cTimeDifferenceH: ::std::os::raw::c_char, + pub cTimeDifferenceM: ::std::os::raw::c_char, + pub byRes: [BYTE; 29usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FINDLABEL_DATA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 168usize, + concat!("Size of: ", stringify!(tagNET_DVR_FINDLABEL_DATA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FINDLABEL_DATA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLabelName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDLABEL_DATA), + "::", + stringify!(sLabelName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTimeLabel) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDLABEL_DATA), + "::", + stringify!(struTimeLabel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLabelIdentify) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDLABEL_DATA), + "::", + stringify!(struLabelIdentify) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byISO8601) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDLABEL_DATA), + "::", + stringify!(byISO8601) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceH) as usize - ptr as usize }, + 137usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDLABEL_DATA), + "::", + stringify!(cTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceM) as usize - ptr as usize }, + 138usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDLABEL_DATA), + "::", + stringify!(cTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 139usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDLABEL_DATA), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FINDLABEL_DATA = tagNET_DVR_FINDLABEL_DATA; +pub type LPNET_DVR_FINDLABEL_DATA = *mut tagNET_DVR_FINDLABEL_DATA; +pub const _COUNTRY_INDEX__COUNTRY_NONSUPPORT: _COUNTRY_INDEX_ = 0; +pub const _COUNTRY_INDEX__COUNTRY_CZE: _COUNTRY_INDEX_ = 1; +pub const _COUNTRY_INDEX__COUNTRY_FRA: _COUNTRY_INDEX_ = 2; +pub const _COUNTRY_INDEX__COUNTRY_DEU: _COUNTRY_INDEX_ = 3; +pub const _COUNTRY_INDEX__COUNTRY_ESP: _COUNTRY_INDEX_ = 4; +pub const _COUNTRY_INDEX__COUNTRY_ITA: _COUNTRY_INDEX_ = 5; +pub const _COUNTRY_INDEX__COUNTRY_NLD: _COUNTRY_INDEX_ = 6; +pub const _COUNTRY_INDEX__COUNTRY_POL: _COUNTRY_INDEX_ = 7; +pub const _COUNTRY_INDEX__COUNTRY_SVK: _COUNTRY_INDEX_ = 8; +pub const _COUNTRY_INDEX__COUNTRY_BLR: _COUNTRY_INDEX_ = 9; +pub const _COUNTRY_INDEX__COUNTRY_MDA: _COUNTRY_INDEX_ = 10; +pub const _COUNTRY_INDEX__COUNTRY_RUS: _COUNTRY_INDEX_ = 11; +pub const _COUNTRY_INDEX__COUNTRY_UKR: _COUNTRY_INDEX_ = 12; +pub const _COUNTRY_INDEX__COUNTRY_BEL: _COUNTRY_INDEX_ = 13; +pub const _COUNTRY_INDEX__COUNTRY_BGR: _COUNTRY_INDEX_ = 14; +pub const _COUNTRY_INDEX__COUNTRY_DNK: _COUNTRY_INDEX_ = 15; +pub const _COUNTRY_INDEX__COUNTRY_FIN: _COUNTRY_INDEX_ = 16; +pub const _COUNTRY_INDEX__COUNTRY_GBR: _COUNTRY_INDEX_ = 17; +pub const _COUNTRY_INDEX__COUNTRY_GRC: _COUNTRY_INDEX_ = 18; +pub const _COUNTRY_INDEX__COUNTRY_HRV: _COUNTRY_INDEX_ = 19; +pub const _COUNTRY_INDEX__COUNTRY_HUN: _COUNTRY_INDEX_ = 20; +pub const _COUNTRY_INDEX__COUNTRY_ISR: _COUNTRY_INDEX_ = 21; +pub const _COUNTRY_INDEX__COUNTRY_LUX: _COUNTRY_INDEX_ = 22; +pub const _COUNTRY_INDEX__COUNTRY_MKD: _COUNTRY_INDEX_ = 23; +pub const _COUNTRY_INDEX__COUNTRY_NOR: _COUNTRY_INDEX_ = 24; +pub const _COUNTRY_INDEX__COUNTRY_PRT: _COUNTRY_INDEX_ = 25; +pub const _COUNTRY_INDEX__COUNTRY_ROU: _COUNTRY_INDEX_ = 26; +pub const _COUNTRY_INDEX__COUNTRY_SRB: _COUNTRY_INDEX_ = 27; +pub const _COUNTRY_INDEX__COUNTRY_AZE: _COUNTRY_INDEX_ = 28; +pub const _COUNTRY_INDEX__COUNTRY_GEO: _COUNTRY_INDEX_ = 29; +pub const _COUNTRY_INDEX__COUNTRY_KAZ: _COUNTRY_INDEX_ = 30; +pub const _COUNTRY_INDEX__COUNTRY_LTU: _COUNTRY_INDEX_ = 31; +pub const _COUNTRY_INDEX__COUNTRY_TKM: _COUNTRY_INDEX_ = 32; +pub const _COUNTRY_INDEX__COUNTRY_UZB: _COUNTRY_INDEX_ = 33; +pub const _COUNTRY_INDEX__COUNTRY_LVA: _COUNTRY_INDEX_ = 34; +pub const _COUNTRY_INDEX__COUNTRY_EST: _COUNTRY_INDEX_ = 35; +pub const _COUNTRY_INDEX__COUNTRY_ALB: _COUNTRY_INDEX_ = 36; +pub const _COUNTRY_INDEX__COUNTRY_AUT: _COUNTRY_INDEX_ = 37; +pub const _COUNTRY_INDEX__COUNTRY_BIH: _COUNTRY_INDEX_ = 38; +pub const _COUNTRY_INDEX__COUNTRY_IRL: _COUNTRY_INDEX_ = 39; +pub const _COUNTRY_INDEX__COUNTRY_ISL: _COUNTRY_INDEX_ = 40; +pub const _COUNTRY_INDEX__COUNTRY_VAT: _COUNTRY_INDEX_ = 41; +pub const _COUNTRY_INDEX__COUNTRY_MLT: _COUNTRY_INDEX_ = 42; +pub const _COUNTRY_INDEX__COUNTRY_SWE: _COUNTRY_INDEX_ = 43; +pub const _COUNTRY_INDEX__COUNTRY_CHE: _COUNTRY_INDEX_ = 44; +pub const _COUNTRY_INDEX__COUNTRY_CYP: _COUNTRY_INDEX_ = 45; +pub const _COUNTRY_INDEX__COUNTRY_TUR: _COUNTRY_INDEX_ = 46; +pub const _COUNTRY_INDEX__COUNTRY_SVN: _COUNTRY_INDEX_ = 47; +pub const _COUNTRY_INDEX__COUNTRY_MTG: _COUNTRY_INDEX_ = 48; +pub const _COUNTRY_INDEX__COUNTRY_KOV: _COUNTRY_INDEX_ = 49; +pub const _COUNTRY_INDEX__COUNTRY_ADR: _COUNTRY_INDEX_ = 50; +pub const _COUNTRY_INDEX__COUNTRY_ARM: _COUNTRY_INDEX_ = 51; +pub const _COUNTRY_INDEX__COUNTRY_MON: _COUNTRY_INDEX_ = 52; +pub const _COUNTRY_INDEX__COUNTRY_LIE: _COUNTRY_INDEX_ = 53; +pub const _COUNTRY_INDEX__COUNTRY_SMO: _COUNTRY_INDEX_ = 54; +pub const _COUNTRY_INDEX__COUNTRY_ORN: _COUNTRY_INDEX_ = 55; +pub const _COUNTRY_INDEX__COUNTRY_RES2: _COUNTRY_INDEX_ = 56; +pub const _COUNTRY_INDEX__COUNTRY_RES3: _COUNTRY_INDEX_ = 57; +pub const _COUNTRY_INDEX__COUNTRY_RES4: _COUNTRY_INDEX_ = 58; +pub const _COUNTRY_INDEX__COUNTRY_CHI: _COUNTRY_INDEX_ = 59; +pub const _COUNTRY_INDEX__COUNTRY_IBN: _COUNTRY_INDEX_ = 60; +pub const _COUNTRY_INDEX__COUNTRY_SKR: _COUNTRY_INDEX_ = 61; +pub const _COUNTRY_INDEX__COUNTRY_LEB: _COUNTRY_INDEX_ = 62; +pub const _COUNTRY_INDEX__COUNTRY_NEP: _COUNTRY_INDEX_ = 63; +pub const _COUNTRY_INDEX__COUNTRY_THA: _COUNTRY_INDEX_ = 64; +pub const _COUNTRY_INDEX__COUNTRY_PAK: _COUNTRY_INDEX_ = 65; +pub const _COUNTRY_INDEX__COUNTRY_EMI: _COUNTRY_INDEX_ = 66; +pub const _COUNTRY_INDEX__COUNTRY_BHU: _COUNTRY_INDEX_ = 67; +pub const _COUNTRY_INDEX__COUNTRY_OMA: _COUNTRY_INDEX_ = 68; +pub const _COUNTRY_INDEX__COUNTRY_KOR: _COUNTRY_INDEX_ = 69; +pub const _COUNTRY_INDEX__COUNTRY_PHI: _COUNTRY_INDEX_ = 70; +pub const _COUNTRY_INDEX__COUNTRY_CAM: _COUNTRY_INDEX_ = 71; +pub const _COUNTRY_INDEX__COUNTRY_QAT: _COUNTRY_INDEX_ = 72; +pub const _COUNTRY_INDEX__COUNTRY_KYR: _COUNTRY_INDEX_ = 73; +pub const _COUNTRY_INDEX__COUNTRY_MAL: _COUNTRY_INDEX_ = 74; +pub const _COUNTRY_INDEX__COUNTRY_MLY: _COUNTRY_INDEX_ = 75; +pub const _COUNTRY_INDEX__COUNTRY_MOG: _COUNTRY_INDEX_ = 76; +pub const _COUNTRY_INDEX__COUNTRY_ARA: _COUNTRY_INDEX_ = 77; +pub const _COUNTRY_INDEX__COUNTRY_BRU: _COUNTRY_INDEX_ = 78; +pub const _COUNTRY_INDEX__COUNTRY_LAO: _COUNTRY_INDEX_ = 79; +pub const _COUNTRY_INDEX__COUNTRY_JAP: _COUNTRY_INDEX_ = 80; +pub const _COUNTRY_INDEX__COUNTRY_RES19: _COUNTRY_INDEX_ = 81; +pub const _COUNTRY_INDEX__COUNTRY_PAS: _COUNTRY_INDEX_ = 82; +pub const _COUNTRY_INDEX__COUNTRY_TAJ: _COUNTRY_INDEX_ = 83; +pub const _COUNTRY_INDEX__COUNTRY_KUW: _COUNTRY_INDEX_ = 84; +pub const _COUNTRY_INDEX__COUNTRY_SYR: _COUNTRY_INDEX_ = 85; +pub const _COUNTRY_INDEX__COUNTRY_IND: _COUNTRY_INDEX_ = 86; +pub const _COUNTRY_INDEX__COUNTRY_ISA: _COUNTRY_INDEX_ = 87; +pub const _COUNTRY_INDEX__COUNTRY_AFG: _COUNTRY_INDEX_ = 88; +pub const _COUNTRY_INDEX__COUNTRY_LAN: _COUNTRY_INDEX_ = 89; +pub const _COUNTRY_INDEX__COUNTRY_IRQ: _COUNTRY_INDEX_ = 90; +pub const _COUNTRY_INDEX__COUNTRY_VIE: _COUNTRY_INDEX_ = 91; +pub const _COUNTRY_INDEX__COUNTRY_IRA: _COUNTRY_INDEX_ = 92; +pub const _COUNTRY_INDEX__COUNTRY_YEM: _COUNTRY_INDEX_ = 93; +pub const _COUNTRY_INDEX__COUNTRY_JOR: _COUNTRY_INDEX_ = 94; +pub const _COUNTRY_INDEX__COUNTRY_BUR: _COUNTRY_INDEX_ = 95; +pub const _COUNTRY_INDEX__COUNTRY_SIK: _COUNTRY_INDEX_ = 96; +pub const _COUNTRY_INDEX__COUNTRY_BAN: _COUNTRY_INDEX_ = 97; +pub const _COUNTRY_INDEX__COUNTRY_SGA: _COUNTRY_INDEX_ = 98; +pub const _COUNTRY_INDEX__COUNTRY_EAT: _COUNTRY_INDEX_ = 99; +pub const _COUNTRY_INDEX__COUNTRY_RES5: _COUNTRY_INDEX_ = 100; +pub const _COUNTRY_INDEX__COUNTRY_RES6: _COUNTRY_INDEX_ = 101; +pub const _COUNTRY_INDEX__COUNTRY_RES7: _COUNTRY_INDEX_ = 102; +pub const _COUNTRY_INDEX__COUNTRY_RES8: _COUNTRY_INDEX_ = 103; +pub const _COUNTRY_INDEX__COUNTRY_EGT: _COUNTRY_INDEX_ = 104; +pub const _COUNTRY_INDEX__COUNTRY_LIY: _COUNTRY_INDEX_ = 105; +pub const _COUNTRY_INDEX__COUNTRY_SUA: _COUNTRY_INDEX_ = 106; +pub const _COUNTRY_INDEX__COUNTRY_TUN: _COUNTRY_INDEX_ = 107; +pub const _COUNTRY_INDEX__COUNTRY_ALG: _COUNTRY_INDEX_ = 108; +pub const _COUNTRY_INDEX__COUNTRY_MCC: _COUNTRY_INDEX_ = 109; +pub const _COUNTRY_INDEX__COUNTRY_ETH: _COUNTRY_INDEX_ = 110; +pub const _COUNTRY_INDEX__COUNTRY_ERI: _COUNTRY_INDEX_ = 111; +pub const _COUNTRY_INDEX__COUNTRY_SDE: _COUNTRY_INDEX_ = 112; +pub const _COUNTRY_INDEX__COUNTRY_DJI: _COUNTRY_INDEX_ = 113; +pub const _COUNTRY_INDEX__COUNTRY_KEN: _COUNTRY_INDEX_ = 114; +pub const _COUNTRY_INDEX__COUNTRY_TAI: _COUNTRY_INDEX_ = 115; +pub const _COUNTRY_INDEX__COUNTRY_UGA: _COUNTRY_INDEX_ = 116; +pub const _COUNTRY_INDEX__COUNTRY_RWA: _COUNTRY_INDEX_ = 117; +pub const _COUNTRY_INDEX__COUNTRY_BUD: _COUNTRY_INDEX_ = 118; +pub const _COUNTRY_INDEX__COUNTRY_SEY: _COUNTRY_INDEX_ = 119; +pub const _COUNTRY_INDEX__COUNTRY_CHA: _COUNTRY_INDEX_ = 120; +pub const _COUNTRY_INDEX__COUNTRY_CEA: _COUNTRY_INDEX_ = 121; +pub const _COUNTRY_INDEX__COUNTRY_CON: _COUNTRY_INDEX_ = 122; +pub const _COUNTRY_INDEX__COUNTRY_EQG: _COUNTRY_INDEX_ = 123; +pub const _COUNTRY_INDEX__COUNTRY_GAB: _COUNTRY_INDEX_ = 124; +pub const _COUNTRY_INDEX__COUNTRY_TCO: _COUNTRY_INDEX_ = 125; +pub const _COUNTRY_INDEX__COUNTRY_DRC: _COUNTRY_INDEX_ = 126; +pub const _COUNTRY_INDEX__COUNTRY_STP: _COUNTRY_INDEX_ = 127; +pub const _COUNTRY_INDEX__COUNTRY_MAN: _COUNTRY_INDEX_ = 128; +pub const _COUNTRY_INDEX__COUNTRY_WSA: _COUNTRY_INDEX_ = 129; +pub const _COUNTRY_INDEX__COUNTRY_SEL: _COUNTRY_INDEX_ = 130; +pub const _COUNTRY_INDEX__COUNTRY_TGA: _COUNTRY_INDEX_ = 131; +pub const _COUNTRY_INDEX__COUNTRY_MAI: _COUNTRY_INDEX_ = 132; +pub const _COUNTRY_INDEX__COUNTRY_BUF: _COUNTRY_INDEX_ = 133; +pub const _COUNTRY_INDEX__COUNTRY_GUI: _COUNTRY_INDEX_ = 134; +pub const _COUNTRY_INDEX__COUNTRY_GUB: _COUNTRY_INDEX_ = 135; +pub const _COUNTRY_INDEX__COUNTRY_CAV: _COUNTRY_INDEX_ = 136; +pub const _COUNTRY_INDEX__COUNTRY_SLE: _COUNTRY_INDEX_ = 137; +pub const _COUNTRY_INDEX__COUNTRY_LIR: _COUNTRY_INDEX_ = 138; +pub const _COUNTRY_INDEX__COUNTRY_IVC: _COUNTRY_INDEX_ = 139; +pub const _COUNTRY_INDEX__COUNTRY_GHA: _COUNTRY_INDEX_ = 140; +pub const _COUNTRY_INDEX__COUNTRY_TGO: _COUNTRY_INDEX_ = 141; +pub const _COUNTRY_INDEX__COUNTRY_BEN: _COUNTRY_INDEX_ = 142; +pub const _COUNTRY_INDEX__COUNTRY_NIG: _COUNTRY_INDEX_ = 143; +pub const _COUNTRY_INDEX__COUNTRY_ZAB: _COUNTRY_INDEX_ = 144; +pub const _COUNTRY_INDEX__COUNTRY_ANG: _COUNTRY_INDEX_ = 145; +pub const _COUNTRY_INDEX__COUNTRY_ZBE: _COUNTRY_INDEX_ = 146; +pub const _COUNTRY_INDEX__COUNTRY_MAW: _COUNTRY_INDEX_ = 147; +pub const _COUNTRY_INDEX__COUNTRY_MOQ: _COUNTRY_INDEX_ = 148; +pub const _COUNTRY_INDEX__COUNTRY_BOT: _COUNTRY_INDEX_ = 149; +pub const _COUNTRY_INDEX__COUNTRY_NAM: _COUNTRY_INDEX_ = 150; +pub const _COUNTRY_INDEX__COUNTRY_SAF: _COUNTRY_INDEX_ = 151; +pub const _COUNTRY_INDEX__COUNTRY_SWD: _COUNTRY_INDEX_ = 152; +pub const _COUNTRY_INDEX__COUNTRY_LES: _COUNTRY_INDEX_ = 153; +pub const _COUNTRY_INDEX__COUNTRY_MAG: _COUNTRY_INDEX_ = 154; +pub const _COUNTRY_INDEX__COUNTRY_UOC: _COUNTRY_INDEX_ = 155; +pub const _COUNTRY_INDEX__COUNTRY_MAT: _COUNTRY_INDEX_ = 156; +pub const _COUNTRY_INDEX__COUNTRY_NGE: _COUNTRY_INDEX_ = 157; +pub const _COUNTRY_INDEX__COUNTRY_SSD: _COUNTRY_INDEX_ = 158; +pub const _COUNTRY_INDEX__COUNTRY_SAH: _COUNTRY_INDEX_ = 159; +pub const _COUNTRY_INDEX__COUNTRY_MYT: _COUNTRY_INDEX_ = 160; +pub const _COUNTRY_INDEX__COUNTRY_REN: _COUNTRY_INDEX_ = 161; +pub const _COUNTRY_INDEX__COUNTRY_CAI: _COUNTRY_INDEX_ = 162; +pub const _COUNTRY_INDEX__COUNTRY_AZO: _COUNTRY_INDEX_ = 163; +pub const _COUNTRY_INDEX__COUNTRY_MAD: _COUNTRY_INDEX_ = 164; +pub const _COUNTRY_INDEX__COUNTRY_RES9: _COUNTRY_INDEX_ = 165; +pub const _COUNTRY_INDEX__COUNTRY_RES10: _COUNTRY_INDEX_ = 166; +pub const _COUNTRY_INDEX__COUNTRY_RES11: _COUNTRY_INDEX_ = 167; +pub const _COUNTRY_INDEX__COUNTRY_RES12: _COUNTRY_INDEX_ = 168; +pub const _COUNTRY_INDEX__COUNTRY_CAD: _COUNTRY_INDEX_ = 169; +pub const _COUNTRY_INDEX__COUNTRY_GRE: _COUNTRY_INDEX_ = 170; +pub const _COUNTRY_INDEX__COUNTRY_PIE: _COUNTRY_INDEX_ = 171; +pub const _COUNTRY_INDEX__COUNTRY_USA: _COUNTRY_INDEX_ = 172; +pub const _COUNTRY_INDEX__COUNTRY_BER: _COUNTRY_INDEX_ = 173; +pub const _COUNTRY_INDEX__COUNTRY_MEX: _COUNTRY_INDEX_ = 174; +pub const _COUNTRY_INDEX__COUNTRY_GUA: _COUNTRY_INDEX_ = 175; +pub const _COUNTRY_INDEX__COUNTRY_BLI: _COUNTRY_INDEX_ = 176; +pub const _COUNTRY_INDEX__COUNTRY_SAR: _COUNTRY_INDEX_ = 177; +pub const _COUNTRY_INDEX__COUNTRY_HOR: _COUNTRY_INDEX_ = 178; +pub const _COUNTRY_INDEX__COUNTRY_NIC: _COUNTRY_INDEX_ = 179; +pub const _COUNTRY_INDEX__COUNTRY_COR: _COUNTRY_INDEX_ = 180; +pub const _COUNTRY_INDEX__COUNTRY_PAN: _COUNTRY_INDEX_ = 181; +pub const _COUNTRY_INDEX__COUNTRY_TBM: _COUNTRY_INDEX_ = 182; +pub const _COUNTRY_INDEX__COUNTRY_TCI: _COUNTRY_INDEX_ = 183; +pub const _COUNTRY_INDEX__COUNTRY_CUB: _COUNTRY_INDEX_ = 184; +pub const _COUNTRY_INDEX__COUNTRY_JAM: _COUNTRY_INDEX_ = 185; +pub const _COUNTRY_INDEX__COUNTRY_CAY: _COUNTRY_INDEX_ = 186; +pub const _COUNTRY_INDEX__COUNTRY_HAT: _COUNTRY_INDEX_ = 187; +pub const _COUNTRY_INDEX__COUNTRY_TDO: _COUNTRY_INDEX_ = 188; +pub const _COUNTRY_INDEX__COUNTRY_PUR: _COUNTRY_INDEX_ = 189; +pub const _COUNTRY_INDEX__COUNTRY_VIL: _COUNTRY_INDEX_ = 190; +pub const _COUNTRY_INDEX__COUNTRY_BVI: _COUNTRY_INDEX_ = 191; +pub const _COUNTRY_INDEX__COUNTRY_ATV: _COUNTRY_INDEX_ = 192; +pub const _COUNTRY_INDEX__COUNTRY_ANB: _COUNTRY_INDEX_ = 193; +pub const _COUNTRY_INDEX__COUNTRY_CSM: _COUNTRY_INDEX_ = 194; +pub const _COUNTRY_INDEX__COUNTRY_ACY: _COUNTRY_INDEX_ = 195; +pub const _COUNTRY_INDEX__COUNTRY_SBY: _COUNTRY_INDEX_ = 196; +pub const _COUNTRY_INDEX__COUNTRY_SKN: _COUNTRY_INDEX_ = 197; +pub const _COUNTRY_INDEX__COUNTRY_MOT: _COUNTRY_INDEX_ = 198; +pub const _COUNTRY_INDEX__COUNTRY_GLP: _COUNTRY_INDEX_ = 199; +pub const _COUNTRY_INDEX__COUNTRY_DOM: _COUNTRY_INDEX_ = 200; +pub const _COUNTRY_INDEX__COUNTRY_MTE: _COUNTRY_INDEX_ = 201; +pub const _COUNTRY_INDEX__COUNTRY_LUC: _COUNTRY_INDEX_ = 202; +pub const _COUNTRY_INDEX__COUNTRY_SVG: _COUNTRY_INDEX_ = 203; +pub const _COUNTRY_INDEX__COUNTRY_GRD: _COUNTRY_INDEX_ = 204; +pub const _COUNTRY_INDEX__COUNTRY_BAR: _COUNTRY_INDEX_ = 205; +pub const _COUNTRY_INDEX__COUNTRY_TRT: _COUNTRY_INDEX_ = 206; +pub const _COUNTRY_INDEX__COUNTRY_CUR: _COUNTRY_INDEX_ = 207; +pub const _COUNTRY_INDEX__COUNTRY_ARB: _COUNTRY_INDEX_ = 208; +pub const _COUNTRY_INDEX__COUNTRY_NEA: _COUNTRY_INDEX_ = 209; +pub const _COUNTRY_INDEX__COUNTRY_COL: _COUNTRY_INDEX_ = 210; +pub const _COUNTRY_INDEX__COUNTRY_VEN: _COUNTRY_INDEX_ = 211; +pub const _COUNTRY_INDEX__COUNTRY_GUY: _COUNTRY_INDEX_ = 212; +pub const _COUNTRY_INDEX__COUNTRY_SUR: _COUNTRY_INDEX_ = 213; +pub const _COUNTRY_INDEX__COUNTRY_FRN: _COUNTRY_INDEX_ = 214; +pub const _COUNTRY_INDEX__COUNTRY_ECU: _COUNTRY_INDEX_ = 215; +pub const _COUNTRY_INDEX__COUNTRY_PER: _COUNTRY_INDEX_ = 216; +pub const _COUNTRY_INDEX__COUNTRY_BOL: _COUNTRY_INDEX_ = 217; +pub const _COUNTRY_INDEX__COUNTRY_PAR: _COUNTRY_INDEX_ = 218; +pub const _COUNTRY_INDEX__COUNTRY_CLE: _COUNTRY_INDEX_ = 219; +pub const _COUNTRY_INDEX__COUNTRY_BRA: _COUNTRY_INDEX_ = 220; +pub const _COUNTRY_INDEX__COUNTRY_UGY: _COUNTRY_INDEX_ = 221; +pub const _COUNTRY_INDEX__COUNTRY_ARG: _COUNTRY_INDEX_ = 222; +pub const _COUNTRY_INDEX__COUNTRY_RES13: _COUNTRY_INDEX_ = 223; +pub const _COUNTRY_INDEX__COUNTRY_RES14: _COUNTRY_INDEX_ = 224; +pub const _COUNTRY_INDEX__COUNTRY_RES15: _COUNTRY_INDEX_ = 225; +pub const _COUNTRY_INDEX__COUNTRY_RES16: _COUNTRY_INDEX_ = 226; +pub const _COUNTRY_INDEX__COUNTRY_ATN: _COUNTRY_INDEX_ = 227; +pub const _COUNTRY_INDEX__COUNTRY_NED: _COUNTRY_INDEX_ = 228; +pub const _COUNTRY_INDEX__COUNTRY_PNG: _COUNTRY_INDEX_ = 229; +pub const _COUNTRY_INDEX__COUNTRY_SAN: _COUNTRY_INDEX_ = 230; +pub const _COUNTRY_INDEX__COUNTRY_VAU: _COUNTRY_INDEX_ = 231; +pub const _COUNTRY_INDEX__COUNTRY_NCN: _COUNTRY_INDEX_ = 232; +pub const _COUNTRY_INDEX__COUNTRY_PAU: _COUNTRY_INDEX_ = 233; +pub const _COUNTRY_INDEX__COUNTRY_FSM: _COUNTRY_INDEX_ = 234; +pub const _COUNTRY_INDEX__COUNTRY_MRI: _COUNTRY_INDEX_ = 235; +pub const _COUNTRY_INDEX__COUNTRY_CNM: _COUNTRY_INDEX_ = 236; +pub const _COUNTRY_INDEX__COUNTRY_TEG: _COUNTRY_INDEX_ = 237; +pub const _COUNTRY_INDEX__COUNTRY_NUR: _COUNTRY_INDEX_ = 238; +pub const _COUNTRY_INDEX__COUNTRY_KIB: _COUNTRY_INDEX_ = 239; +pub const _COUNTRY_INDEX__COUNTRY_FID: _COUNTRY_INDEX_ = 240; +pub const _COUNTRY_INDEX__COUNTRY_TNG: _COUNTRY_INDEX_ = 241; +pub const _COUNTRY_INDEX__COUNTRY_TUV: _COUNTRY_INDEX_ = 242; +pub const _COUNTRY_INDEX__COUNTRY_WEF: _COUNTRY_INDEX_ = 243; +pub const _COUNTRY_INDEX__COUNTRY_TIS: _COUNTRY_INDEX_ = 244; +pub const _COUNTRY_INDEX__COUNTRY_EAS: _COUNTRY_INDEX_ = 245; +pub const _COUNTRY_INDEX__COUNTRY_TOE: _COUNTRY_INDEX_ = 246; +pub const _COUNTRY_INDEX__COUNTRY_NUE: _COUNTRY_INDEX_ = 247; +pub const _COUNTRY_INDEX__COUNTRY_TCD: _COUNTRY_INDEX_ = 248; +pub const _COUNTRY_INDEX__COUNTRY_PFP: _COUNTRY_INDEX_ = 249; +pub const _COUNTRY_INDEX__COUNTRY_PID: _COUNTRY_INDEX_ = 250; +pub const _COUNTRY_INDEX__COUNTRY_HAW: _COUNTRY_INDEX_ = 251; +pub const _COUNTRY_INDEX__COUNTRY_RES17: _COUNTRY_INDEX_ = 252; +pub const _COUNTRY_INDEX__COUNTRY_INVALID: _COUNTRY_INDEX_ = 253; +pub const _COUNTRY_INDEX__COUNTRY_UNRECOGNIZED: _COUNTRY_INDEX_ = 254; +pub const _COUNTRY_INDEX__COUNTRY_ALL: _COUNTRY_INDEX_ = 255; +pub type _COUNTRY_INDEX_ = ::std::os::raw::c_uint; +pub use self::_COUNTRY_INDEX_ as COUNTRY_INDEX; +pub const _CR_INDEX__CR_NONSUPPORT: _CR_INDEX_ = 0; +pub const _CR_INDEX__CR_CZE: _CR_INDEX_ = 1; +pub const _CR_INDEX__CR_FRA: _CR_INDEX_ = 2; +pub const _CR_INDEX__CR_DEU: _CR_INDEX_ = 3; +pub const _CR_INDEX__CR_ESP: _CR_INDEX_ = 4; +pub const _CR_INDEX__CR_ITA: _CR_INDEX_ = 5; +pub const _CR_INDEX__CR_NLD: _CR_INDEX_ = 6; +pub const _CR_INDEX__CR_POL: _CR_INDEX_ = 7; +pub const _CR_INDEX__CR_SVK: _CR_INDEX_ = 8; +pub const _CR_INDEX__CR_BLR: _CR_INDEX_ = 9; +pub const _CR_INDEX__CR_MDA: _CR_INDEX_ = 10; +pub const _CR_INDEX__CR_RUS: _CR_INDEX_ = 11; +pub const _CR_INDEX__CR_UKR: _CR_INDEX_ = 12; +pub const _CR_INDEX__CR_BEL: _CR_INDEX_ = 13; +pub const _CR_INDEX__CR_BGR: _CR_INDEX_ = 14; +pub const _CR_INDEX__CR_DNK: _CR_INDEX_ = 15; +pub const _CR_INDEX__CR_FIN: _CR_INDEX_ = 16; +pub const _CR_INDEX__CR_GBR: _CR_INDEX_ = 17; +pub const _CR_INDEX__CR_GRC: _CR_INDEX_ = 18; +pub const _CR_INDEX__CR_HRV: _CR_INDEX_ = 19; +pub const _CR_INDEX__CR_HUN: _CR_INDEX_ = 20; +pub const _CR_INDEX__CR_ISR: _CR_INDEX_ = 21; +pub const _CR_INDEX__CR_LUX: _CR_INDEX_ = 22; +pub const _CR_INDEX__CR_MKD: _CR_INDEX_ = 23; +pub const _CR_INDEX__CR_NOR: _CR_INDEX_ = 24; +pub const _CR_INDEX__CR_PRT: _CR_INDEX_ = 25; +pub const _CR_INDEX__CR_ROU: _CR_INDEX_ = 26; +pub const _CR_INDEX__CR_SRB: _CR_INDEX_ = 27; +pub const _CR_INDEX__CR_AZE: _CR_INDEX_ = 28; +pub const _CR_INDEX__CR_GEO: _CR_INDEX_ = 29; +pub const _CR_INDEX__CR_KAZ: _CR_INDEX_ = 30; +pub const _CR_INDEX__CR_LTU: _CR_INDEX_ = 31; +pub const _CR_INDEX__CR_TKM: _CR_INDEX_ = 32; +pub const _CR_INDEX__CR_UZB: _CR_INDEX_ = 33; +pub const _CR_INDEX__CR_LVA: _CR_INDEX_ = 34; +pub const _CR_INDEX__CR_EST: _CR_INDEX_ = 35; +pub const _CR_INDEX__CR_ALB: _CR_INDEX_ = 36; +pub const _CR_INDEX__CR_AUT: _CR_INDEX_ = 37; +pub const _CR_INDEX__CR_BIH: _CR_INDEX_ = 38; +pub const _CR_INDEX__CR_IRL: _CR_INDEX_ = 39; +pub const _CR_INDEX__CR_ISL: _CR_INDEX_ = 40; +pub const _CR_INDEX__CR_VAT: _CR_INDEX_ = 41; +pub const _CR_INDEX__CR_MLT: _CR_INDEX_ = 42; +pub const _CR_INDEX__CR_SWE: _CR_INDEX_ = 43; +pub const _CR_INDEX__CR_CHE: _CR_INDEX_ = 44; +pub const _CR_INDEX__CR_CYP: _CR_INDEX_ = 45; +pub const _CR_INDEX__CR_TUR: _CR_INDEX_ = 46; +pub const _CR_INDEX__CR_SVN: _CR_INDEX_ = 47; +pub const _CR_INDEX__CR_MTG: _CR_INDEX_ = 48; +pub const _CR_INDEX__CR_KOV: _CR_INDEX_ = 49; +pub const _CR_INDEX__CR_ADR: _CR_INDEX_ = 50; +pub const _CR_INDEX__CR_ARM: _CR_INDEX_ = 51; +pub const _CR_INDEX__CR_MON: _CR_INDEX_ = 52; +pub const _CR_INDEX__CR_LIE: _CR_INDEX_ = 53; +pub const _CR_INDEX__CR_SMO: _CR_INDEX_ = 54; +pub const _CR_INDEX__CR_ORN: _CR_INDEX_ = 55; +pub const _CR_INDEX__CR_RES2: _CR_INDEX_ = 56; +pub const _CR_INDEX__CR_RES3: _CR_INDEX_ = 57; +pub const _CR_INDEX__CR_RES4: _CR_INDEX_ = 58; +pub const _CR_INDEX__CR_CHI: _CR_INDEX_ = 59; +pub const _CR_INDEX__CR_IBN: _CR_INDEX_ = 60; +pub const _CR_INDEX__CR_SKR: _CR_INDEX_ = 61; +pub const _CR_INDEX__CR_LEB: _CR_INDEX_ = 62; +pub const _CR_INDEX__CR_NEP: _CR_INDEX_ = 63; +pub const _CR_INDEX__CR_THA: _CR_INDEX_ = 64; +pub const _CR_INDEX__CR_PAK: _CR_INDEX_ = 65; +pub const _CR_INDEX__CR_EMI: _CR_INDEX_ = 66; +pub const _CR_INDEX__CR_BHU: _CR_INDEX_ = 67; +pub const _CR_INDEX__CR_OMA: _CR_INDEX_ = 68; +pub const _CR_INDEX__CR_KOR: _CR_INDEX_ = 69; +pub const _CR_INDEX__CR_PHI: _CR_INDEX_ = 70; +pub const _CR_INDEX__CR_CAM: _CR_INDEX_ = 71; +pub const _CR_INDEX__CR_QAT: _CR_INDEX_ = 72; +pub const _CR_INDEX__CR_KYR: _CR_INDEX_ = 73; +pub const _CR_INDEX__CR_MAL: _CR_INDEX_ = 74; +pub const _CR_INDEX__CR_MLY: _CR_INDEX_ = 75; +pub const _CR_INDEX__CR_MOG: _CR_INDEX_ = 76; +pub const _CR_INDEX__CR_ARA: _CR_INDEX_ = 77; +pub const _CR_INDEX__CR_BRU: _CR_INDEX_ = 78; +pub const _CR_INDEX__CR_LAO: _CR_INDEX_ = 79; +pub const _CR_INDEX__CR_JAP: _CR_INDEX_ = 80; +pub const _CR_INDEX__CR_RES19: _CR_INDEX_ = 81; +pub const _CR_INDEX__CR_PAS: _CR_INDEX_ = 82; +pub const _CR_INDEX__CR_TAJ: _CR_INDEX_ = 83; +pub const _CR_INDEX__CR_KUW: _CR_INDEX_ = 84; +pub const _CR_INDEX__CR_SYR: _CR_INDEX_ = 85; +pub const _CR_INDEX__CR_IND: _CR_INDEX_ = 86; +pub const _CR_INDEX__CR_ISA: _CR_INDEX_ = 87; +pub const _CR_INDEX__CR_AFG: _CR_INDEX_ = 88; +pub const _CR_INDEX__CR_LAN: _CR_INDEX_ = 89; +pub const _CR_INDEX__CR_IRQ: _CR_INDEX_ = 90; +pub const _CR_INDEX__CR_VIE: _CR_INDEX_ = 91; +pub const _CR_INDEX__CR_IRA: _CR_INDEX_ = 92; +pub const _CR_INDEX__CR_YEM: _CR_INDEX_ = 93; +pub const _CR_INDEX__CR_JOR: _CR_INDEX_ = 94; +pub const _CR_INDEX__CR_BUR: _CR_INDEX_ = 95; +pub const _CR_INDEX__CR_SIK: _CR_INDEX_ = 96; +pub const _CR_INDEX__CR_BAN: _CR_INDEX_ = 97; +pub const _CR_INDEX__CR_SGA: _CR_INDEX_ = 98; +pub const _CR_INDEX__CR_EAT: _CR_INDEX_ = 99; +pub const _CR_INDEX__CR_RES5: _CR_INDEX_ = 100; +pub const _CR_INDEX__CR_RES6: _CR_INDEX_ = 101; +pub const _CR_INDEX__CR_RES7: _CR_INDEX_ = 102; +pub const _CR_INDEX__CR_RES8: _CR_INDEX_ = 103; +pub const _CR_INDEX__CR_EGT: _CR_INDEX_ = 104; +pub const _CR_INDEX__CR_LIY: _CR_INDEX_ = 105; +pub const _CR_INDEX__CR_SUA: _CR_INDEX_ = 106; +pub const _CR_INDEX__CR_TUN: _CR_INDEX_ = 107; +pub const _CR_INDEX__CR_ALG: _CR_INDEX_ = 108; +pub const _CR_INDEX__CR_MCC: _CR_INDEX_ = 109; +pub const _CR_INDEX__CR_ETH: _CR_INDEX_ = 110; +pub const _CR_INDEX__CR_ERI: _CR_INDEX_ = 111; +pub const _CR_INDEX__CR_SDE: _CR_INDEX_ = 112; +pub const _CR_INDEX__CR_DJI: _CR_INDEX_ = 113; +pub const _CR_INDEX__CR_KEN: _CR_INDEX_ = 114; +pub const _CR_INDEX__CR_TAI: _CR_INDEX_ = 115; +pub const _CR_INDEX__CR_UGA: _CR_INDEX_ = 116; +pub const _CR_INDEX__CR_RWA: _CR_INDEX_ = 117; +pub const _CR_INDEX__CR_BUD: _CR_INDEX_ = 118; +pub const _CR_INDEX__CR_SEY: _CR_INDEX_ = 119; +pub const _CR_INDEX__CR_CHA: _CR_INDEX_ = 120; +pub const _CR_INDEX__CR_CEA: _CR_INDEX_ = 121; +pub const _CR_INDEX__CR_CON: _CR_INDEX_ = 122; +pub const _CR_INDEX__CR_EQG: _CR_INDEX_ = 123; +pub const _CR_INDEX__CR_GAB: _CR_INDEX_ = 124; +pub const _CR_INDEX__CR_TCO: _CR_INDEX_ = 125; +pub const _CR_INDEX__CR_DRC: _CR_INDEX_ = 126; +pub const _CR_INDEX__CR_STP: _CR_INDEX_ = 127; +pub const _CR_INDEX__CR_MAN: _CR_INDEX_ = 128; +pub const _CR_INDEX__CR_WSA: _CR_INDEX_ = 129; +pub const _CR_INDEX__CR_SEL: _CR_INDEX_ = 130; +pub const _CR_INDEX__CR_TGA: _CR_INDEX_ = 131; +pub const _CR_INDEX__CR_MAI: _CR_INDEX_ = 132; +pub const _CR_INDEX__CR_BUF: _CR_INDEX_ = 133; +pub const _CR_INDEX__CR_GUI: _CR_INDEX_ = 134; +pub const _CR_INDEX__CR_GUB: _CR_INDEX_ = 135; +pub const _CR_INDEX__CR_CAV: _CR_INDEX_ = 136; +pub const _CR_INDEX__CR_SLE: _CR_INDEX_ = 137; +pub const _CR_INDEX__CR_LIR: _CR_INDEX_ = 138; +pub const _CR_INDEX__CR_IVC: _CR_INDEX_ = 139; +pub const _CR_INDEX__CR_GHA: _CR_INDEX_ = 140; +pub const _CR_INDEX__CR_TGO: _CR_INDEX_ = 141; +pub const _CR_INDEX__CR_BEN: _CR_INDEX_ = 142; +pub const _CR_INDEX__CR_NIG: _CR_INDEX_ = 143; +pub const _CR_INDEX__CR_ZAB: _CR_INDEX_ = 144; +pub const _CR_INDEX__CR_ANG: _CR_INDEX_ = 145; +pub const _CR_INDEX__CR_ZBE: _CR_INDEX_ = 146; +pub const _CR_INDEX__CR_MAW: _CR_INDEX_ = 147; +pub const _CR_INDEX__CR_MOQ: _CR_INDEX_ = 148; +pub const _CR_INDEX__CR_BOT: _CR_INDEX_ = 149; +pub const _CR_INDEX__CR_NAM: _CR_INDEX_ = 150; +pub const _CR_INDEX__CR_SAF: _CR_INDEX_ = 151; +pub const _CR_INDEX__CR_SWD: _CR_INDEX_ = 152; +pub const _CR_INDEX__CR_LES: _CR_INDEX_ = 153; +pub const _CR_INDEX__CR_MAG: _CR_INDEX_ = 154; +pub const _CR_INDEX__CR_UOC: _CR_INDEX_ = 155; +pub const _CR_INDEX__CR_MAT: _CR_INDEX_ = 156; +pub const _CR_INDEX__CR_NGE: _CR_INDEX_ = 157; +pub const _CR_INDEX__CR_SSD: _CR_INDEX_ = 158; +pub const _CR_INDEX__CR_SAH: _CR_INDEX_ = 159; +pub const _CR_INDEX__CR_MYT: _CR_INDEX_ = 160; +pub const _CR_INDEX__CR_REN: _CR_INDEX_ = 161; +pub const _CR_INDEX__CR_CAI: _CR_INDEX_ = 162; +pub const _CR_INDEX__CR_AZO: _CR_INDEX_ = 163; +pub const _CR_INDEX__CR_MAD: _CR_INDEX_ = 164; +pub const _CR_INDEX__CR_RES9: _CR_INDEX_ = 165; +pub const _CR_INDEX__CR_RES10: _CR_INDEX_ = 166; +pub const _CR_INDEX__CR_RES11: _CR_INDEX_ = 167; +pub const _CR_INDEX__CR_RES12: _CR_INDEX_ = 168; +pub const _CR_INDEX__CR_CAD: _CR_INDEX_ = 169; +pub const _CR_INDEX__CR_GRE: _CR_INDEX_ = 170; +pub const _CR_INDEX__CR_PIE: _CR_INDEX_ = 171; +pub const _CR_INDEX__CR_USA: _CR_INDEX_ = 172; +pub const _CR_INDEX__CR_BER: _CR_INDEX_ = 173; +pub const _CR_INDEX__CR_MEX: _CR_INDEX_ = 174; +pub const _CR_INDEX__CR_GUA: _CR_INDEX_ = 175; +pub const _CR_INDEX__CR_BLI: _CR_INDEX_ = 176; +pub const _CR_INDEX__CR_SAR: _CR_INDEX_ = 177; +pub const _CR_INDEX__CR_HOR: _CR_INDEX_ = 178; +pub const _CR_INDEX__CR_NIC: _CR_INDEX_ = 179; +pub const _CR_INDEX__CR_COR: _CR_INDEX_ = 180; +pub const _CR_INDEX__CR_PAN: _CR_INDEX_ = 181; +pub const _CR_INDEX__CR_TBM: _CR_INDEX_ = 182; +pub const _CR_INDEX__CR_TCI: _CR_INDEX_ = 183; +pub const _CR_INDEX__CR_CUB: _CR_INDEX_ = 184; +pub const _CR_INDEX__CR_JAM: _CR_INDEX_ = 185; +pub const _CR_INDEX__CR_CAY: _CR_INDEX_ = 186; +pub const _CR_INDEX__CR_HAT: _CR_INDEX_ = 187; +pub const _CR_INDEX__CR_TDO: _CR_INDEX_ = 188; +pub const _CR_INDEX__CR_PUR: _CR_INDEX_ = 189; +pub const _CR_INDEX__CR_VIL: _CR_INDEX_ = 190; +pub const _CR_INDEX__CR_BVI: _CR_INDEX_ = 191; +pub const _CR_INDEX__CR_ATV: _CR_INDEX_ = 192; +pub const _CR_INDEX__CR_ANB: _CR_INDEX_ = 193; +pub const _CR_INDEX__CR_CSM: _CR_INDEX_ = 194; +pub const _CR_INDEX__CR_ACY: _CR_INDEX_ = 195; +pub const _CR_INDEX__CR_SBY: _CR_INDEX_ = 196; +pub const _CR_INDEX__CR_SKN: _CR_INDEX_ = 197; +pub const _CR_INDEX__CR_MOT: _CR_INDEX_ = 198; +pub const _CR_INDEX__CR_GLP: _CR_INDEX_ = 199; +pub const _CR_INDEX__CR_DOM: _CR_INDEX_ = 200; +pub const _CR_INDEX__CR_MTE: _CR_INDEX_ = 201; +pub const _CR_INDEX__CR_LUC: _CR_INDEX_ = 202; +pub const _CR_INDEX__CR_SVG: _CR_INDEX_ = 203; +pub const _CR_INDEX__CR_GRD: _CR_INDEX_ = 204; +pub const _CR_INDEX__CR_BAR: _CR_INDEX_ = 205; +pub const _CR_INDEX__CR_TRT: _CR_INDEX_ = 206; +pub const _CR_INDEX__CR_CUR: _CR_INDEX_ = 207; +pub const _CR_INDEX__CR_ARB: _CR_INDEX_ = 208; +pub const _CR_INDEX__CR_NEA: _CR_INDEX_ = 209; +pub const _CR_INDEX__CR_COL: _CR_INDEX_ = 210; +pub const _CR_INDEX__CR_VEN: _CR_INDEX_ = 211; +pub const _CR_INDEX__CR_GUY: _CR_INDEX_ = 212; +pub const _CR_INDEX__CR_SUR: _CR_INDEX_ = 213; +pub const _CR_INDEX__CR_FRN: _CR_INDEX_ = 214; +pub const _CR_INDEX__CR_ECU: _CR_INDEX_ = 215; +pub const _CR_INDEX__CR_PER: _CR_INDEX_ = 216; +pub const _CR_INDEX__CR_BOL: _CR_INDEX_ = 217; +pub const _CR_INDEX__CR_PAR: _CR_INDEX_ = 218; +pub const _CR_INDEX__CR_CLE: _CR_INDEX_ = 219; +pub const _CR_INDEX__CR_BRA: _CR_INDEX_ = 220; +pub const _CR_INDEX__CR_UGY: _CR_INDEX_ = 221; +pub const _CR_INDEX__CR_ARG: _CR_INDEX_ = 222; +pub const _CR_INDEX__CR_RES13: _CR_INDEX_ = 223; +pub const _CR_INDEX__CR_RES14: _CR_INDEX_ = 224; +pub const _CR_INDEX__CR_RES15: _CR_INDEX_ = 225; +pub const _CR_INDEX__CR_RES16: _CR_INDEX_ = 226; +pub const _CR_INDEX__CR_ATN: _CR_INDEX_ = 227; +pub const _CR_INDEX__CR_NED: _CR_INDEX_ = 228; +pub const _CR_INDEX__CR_PNG: _CR_INDEX_ = 229; +pub const _CR_INDEX__CR_SAN: _CR_INDEX_ = 230; +pub const _CR_INDEX__CR_VAU: _CR_INDEX_ = 231; +pub const _CR_INDEX__CR_NCN: _CR_INDEX_ = 232; +pub const _CR_INDEX__CR_PAU: _CR_INDEX_ = 233; +pub const _CR_INDEX__CR_FSM: _CR_INDEX_ = 234; +pub const _CR_INDEX__CR_MRI: _CR_INDEX_ = 235; +pub const _CR_INDEX__CR_CNM: _CR_INDEX_ = 236; +pub const _CR_INDEX__CR_TEG: _CR_INDEX_ = 237; +pub const _CR_INDEX__CR_NUR: _CR_INDEX_ = 238; +pub const _CR_INDEX__CR_KIB: _CR_INDEX_ = 239; +pub const _CR_INDEX__CR_FID: _CR_INDEX_ = 240; +pub const _CR_INDEX__CR_TNG: _CR_INDEX_ = 241; +pub const _CR_INDEX__CR_TUV: _CR_INDEX_ = 242; +pub const _CR_INDEX__CR_WEF: _CR_INDEX_ = 243; +pub const _CR_INDEX__CR_TIS: _CR_INDEX_ = 244; +pub const _CR_INDEX__CR_EAS: _CR_INDEX_ = 245; +pub const _CR_INDEX__CR_TOE: _CR_INDEX_ = 246; +pub const _CR_INDEX__CR_NUE: _CR_INDEX_ = 247; +pub const _CR_INDEX__CR_TCD: _CR_INDEX_ = 248; +pub const _CR_INDEX__CR_PFP: _CR_INDEX_ = 249; +pub const _CR_INDEX__CR_PID: _CR_INDEX_ = 250; +pub const _CR_INDEX__CR_HAW: _CR_INDEX_ = 251; +pub const _CR_INDEX__CR_RES17: _CR_INDEX_ = 252; +pub const _CR_INDEX__CR_RES18: _CR_INDEX_ = 253; +pub const _CR_INDEX__CR_UNRECOGNIZED: _CR_INDEX_ = 254; +pub const _CR_INDEX__CR_ALL: _CR_INDEX_ = 255; +pub const _CR_INDEX__CR_TAIWAN: _CR_INDEX_ = 256; +pub type _CR_INDEX_ = ::std::os::raw::c_uint; +pub use self::_CR_INDEX_ as CR_INDEX; +pub const _EMI_AREA__EMI_AREA_UNKNOWN: _EMI_AREA_ = 0; +pub const _EMI_AREA__EMI_AREA_AD: _EMI_AREA_ = 1; +pub const _EMI_AREA__EMI_AREA_FJR: _EMI_AREA_ = 2; +pub const _EMI_AREA__EMI_AREA_DB: _EMI_AREA_ = 3; +pub const _EMI_AREA__EMI_AREA_RAK: _EMI_AREA_ = 4; +pub const _EMI_AREA__EMI_AREA_AM: _EMI_AREA_ = 5; +pub const _EMI_AREA__EMI_AREA_SJ: _EMI_AREA_ = 6; +pub const _EMI_AREA__EMI_AREA_UMW: _EMI_AREA_ = 7; +pub const _EMI_AREA__EMI_AREA_OTHER: _EMI_AREA_ = 255; +pub type _EMI_AREA_ = ::std::os::raw::c_uint; +pub use self::_EMI_AREA_ as EMI_AREA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FIND_PICTURE_PARAM { + pub dwSize: DWORD, + pub lChannel: LONG, + pub byFileType: BYTE, + pub byNeedCard: BYTE, + pub byProvince: BYTE, + pub byEventType: BYTE, + pub sCardNum: [BYTE; 40usize], + pub struStartTime: NET_DVR_TIME, + pub struStopTime: NET_DVR_TIME, + pub dwTrafficType: DWORD, + pub dwVehicleType: DWORD, + pub dwIllegalType: DWORD, + pub byLaneNo: BYTE, + pub bySubHvtType: BYTE, + pub bySubDriveType: BYTE, + pub byRes2: BYTE, + pub sLicense: [::std::os::raw::c_char; 16usize], + pub byRegion: BYTE, + pub byCountry: BYTE, + pub byArea: BYTE, + pub byISO8601: BYTE, + pub cStartTimeDifferenceH: ::std::os::raw::c_char, + pub cStartTimeDifferenceM: ::std::os::raw::c_char, + pub cStopTimeDifferenceH: ::std::os::raw::c_char, + pub cStopTimeDifferenceM: ::std::os::raw::c_char, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FIND_PICTURE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 140usize, + concat!("Size of: ", stringify!(tagNET_DVR_FIND_PICTURE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FIND_PICTURE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_PARAM), + "::", + stringify!(lChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_PARAM), + "::", + stringify!(byFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNeedCard) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_PARAM), + "::", + stringify!(byNeedCard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProvince) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_PARAM), + "::", + stringify!(byProvince) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEventType) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_PARAM), + "::", + stringify!(byEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCardNum) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_PARAM), + "::", + stringify!(sCardNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_PARAM), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_PARAM), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTrafficType) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_PARAM), + "::", + stringify!(dwTrafficType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVehicleType) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_PARAM), + "::", + stringify!(dwVehicleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIllegalType) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_PARAM), + "::", + stringify!(dwIllegalType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNo) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_PARAM), + "::", + stringify!(byLaneNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubHvtType) as usize - ptr as usize }, + 113usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_PARAM), + "::", + stringify!(bySubHvtType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubDriveType) as usize - ptr as usize }, + 114usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_PARAM), + "::", + stringify!(bySubDriveType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 115usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_PARAM), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLicense) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_PARAM), + "::", + stringify!(sLicense) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRegion) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_PARAM), + "::", + stringify!(byRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCountry) as usize - ptr as usize }, + 133usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_PARAM), + "::", + stringify!(byCountry) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byArea) as usize - ptr as usize }, + 134usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_PARAM), + "::", + stringify!(byArea) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byISO8601) as usize - ptr as usize }, + 135usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_PARAM), + "::", + stringify!(byISO8601) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStartTimeDifferenceH) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_PARAM), + "::", + stringify!(cStartTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStartTimeDifferenceM) as usize - ptr as usize }, + 137usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_PARAM), + "::", + stringify!(cStartTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStopTimeDifferenceH) as usize - ptr as usize }, + 138usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_PARAM), + "::", + stringify!(cStopTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStopTimeDifferenceM) as usize - ptr as usize }, + 139usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_PARAM), + "::", + stringify!(cStopTimeDifferenceM) + ) + ); +} +pub type NET_DVR_FIND_PICTURE_PARAM = tagNET_DVR_FIND_PICTURE_PARAM; +pub type LPNET_DVR_FIND_PICTURE_PARAM = *mut tagNET_DVR_FIND_PICTURE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FIND_FILE_PCNVR { + pub dwSize: DWORD, + pub struIpAddr: NET_DVR_IPADDR, + pub wIpPort: WORD, + pub byRes: [BYTE; 2usize], + pub sDomainName: [::std::os::raw::c_char; 64usize], + pub sSerial: [::std::os::raw::c_char; 48usize], + pub lChannel: DWORD, + pub dwFileType: DWORD, + pub dwIsLocked: DWORD, + pub dwUseCardNo: DWORD, + pub sCardNumber: [BYTE; 40usize], + pub struStartTime: NET_DVR_TIME, + pub struStopTime: NET_DVR_TIME, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FIND_FILE_PCNVR() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 368usize, + concat!("Size of: ", stringify!(tagNET_DVR_FIND_FILE_PCNVR)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FIND_FILE_PCNVR)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_FILE_PCNVR), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIpAddr) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_FILE_PCNVR), + "::", + stringify!(struIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wIpPort) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_FILE_PCNVR), + "::", + stringify!(wIpPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_FILE_PCNVR), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDomainName) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_FILE_PCNVR), + "::", + stringify!(sDomainName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSerial) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_FILE_PCNVR), + "::", + stringify!(sSerial) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lChannel) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_FILE_PCNVR), + "::", + stringify!(lChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileType) as usize - ptr as usize }, + 268usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_FILE_PCNVR), + "::", + stringify!(dwFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIsLocked) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_FILE_PCNVR), + "::", + stringify!(dwIsLocked) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwUseCardNo) as usize - ptr as usize }, + 276usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_FILE_PCNVR), + "::", + stringify!(dwUseCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCardNumber) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_FILE_PCNVR), + "::", + stringify!(sCardNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_FILE_PCNVR), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 344usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_FILE_PCNVR), + "::", + stringify!(struStopTime) + ) + ); +} +pub type NET_DVR_FILE_COND_PCNVR = tagNET_DVR_FIND_FILE_PCNVR; +pub type LPNET_DVR_FILE_COND_PCNVR = *mut tagNET_DVR_FIND_FILE_PCNVR; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FINDDATA_PCNVR { + pub sFileName: [::std::os::raw::c_char; 100usize], + pub struStartTime: NET_DVR_TIME, + pub struStopTime: NET_DVR_TIME, + pub dwFileSize: DWORD, + pub sCardNum: [::std::os::raw::c_char; 40usize], + pub byLocked: BYTE, + pub byFileType: BYTE, + pub byRes: [BYTE; 2usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FINDDATA_PCNVR() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 196usize, + concat!("Size of: ", stringify!(tagNET_DVR_FINDDATA_PCNVR)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FINDDATA_PCNVR)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDDATA_PCNVR), + "::", + stringify!(sFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDDATA_PCNVR), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDDATA_PCNVR), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileSize) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDDATA_PCNVR), + "::", + stringify!(dwFileSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCardNum) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDDATA_PCNVR), + "::", + stringify!(sCardNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocked) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDDATA_PCNVR), + "::", + stringify!(byLocked) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileType) as usize - ptr as usize }, + 193usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDDATA_PCNVR), + "::", + stringify!(byFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 194usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINDDATA_PCNVR), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FINDDATA_PCNVR = tagNET_DVR_FINDDATA_PCNVR; +pub type LPNET_DVR_FINDDATA_PCNVR = *mut tagNET_DVR_FINDDATA_PCNVR; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_FIND_PICTURE { + pub sFileName: [::std::os::raw::c_char; 64usize], + pub struTime: NET_DVR_TIME, + pub dwFileSize: DWORD, + pub sCardNum: [::std::os::raw::c_char; 40usize], + pub byPlateColor: BYTE, + pub byVehicleLogo: BYTE, + pub byEventSearchStatus: BYTE, + pub byRecogResult: BYTE, + pub sLicense: [::std::os::raw::c_char; 16usize], + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_FIND_PICTURE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 164usize, + concat!("Size of: ", stringify!(NET_DVR_FIND_PICTURE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_FIND_PICTURE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FIND_PICTURE), + "::", + stringify!(sFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FIND_PICTURE), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileSize) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FIND_PICTURE), + "::", + stringify!(dwFileSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCardNum) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FIND_PICTURE), + "::", + stringify!(sCardNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateColor) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FIND_PICTURE), + "::", + stringify!(byPlateColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleLogo) as usize - ptr as usize }, + 133usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FIND_PICTURE), + "::", + stringify!(byVehicleLogo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEventSearchStatus) as usize - ptr as usize }, + 134usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FIND_PICTURE), + "::", + stringify!(byEventSearchStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecogResult) as usize - ptr as usize }, + 135usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FIND_PICTURE), + "::", + stringify!(byRecogResult) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLicense) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FIND_PICTURE), + "::", + stringify!(sLicense) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FIND_PICTURE), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_FIND_PICTURE = *mut NET_DVR_FIND_PICTURE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BACKUP_PICTURE_PARAM { + pub dwSize: DWORD, + pub dwPicNum: DWORD, + pub struPicture: [NET_DVR_FIND_PICTURE; 50usize], + pub byDiskDes: [BYTE; 32usize], + pub byWithPlayer: BYTE, + pub byContinue: BYTE, + pub byRes: [BYTE; 34usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BACKUP_PICTURE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8276usize, + concat!("Size of: ", stringify!(tagNET_DVR_BACKUP_PICTURE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BACKUP_PICTURE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_PICTURE_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_PICTURE_PARAM), + "::", + stringify!(dwPicNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPicture) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_PICTURE_PARAM), + "::", + stringify!(struPicture) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDiskDes) as usize - ptr as usize }, + 8208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_PICTURE_PARAM), + "::", + stringify!(byDiskDes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWithPlayer) as usize - ptr as usize }, + 8240usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_PICTURE_PARAM), + "::", + stringify!(byWithPlayer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byContinue) as usize - ptr as usize }, + 8241usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_PICTURE_PARAM), + "::", + stringify!(byContinue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8242usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_PICTURE_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BACKUP_PICTURE_PARAM = tagNET_DVR_BACKUP_PICTURE_PARAM; +pub type LPNET_DVR_BACKUP_PICTURE_PARAM = *mut tagNET_DVR_BACKUP_PICTURE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_COMPRESSION_LIMIT { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byCompressType: BYTE, + pub byRes: [BYTE; 15usize], + pub struCurrentCfg: NET_DVR_COMPRESSIONCFG_V30, +} +#[test] +fn bindgen_test_layout_NET_DVR_COMPRESSION_LIMIT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 140usize, + concat!("Size of: ", stringify!(NET_DVR_COMPRESSION_LIMIT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_COMPRESSION_LIMIT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_LIMIT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_LIMIT), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCompressType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_LIMIT), + "::", + stringify!(byCompressType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_LIMIT), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCurrentCfg) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_COMPRESSION_LIMIT), + "::", + stringify!(struCurrentCfg) + ) + ); +} +pub type LPNET_DVR_COMPRESSION_LIMIT = *mut NET_DVR_COMPRESSION_LIMIT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIDEO_EFFECT { + pub dwBrightValue: DWORD, + pub dwContrastValue: DWORD, + pub dwSaturationValue: DWORD, + pub dwHueValue: DWORD, + pub dwSharpness: DWORD, + pub dwDenoising: DWORD, + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEO_EFFECT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEO_EFFECT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VIDEO_EFFECT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBrightValue) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_EFFECT), + "::", + stringify!(dwBrightValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwContrastValue) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_EFFECT), + "::", + stringify!(dwContrastValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSaturationValue) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_EFFECT), + "::", + stringify!(dwSaturationValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHueValue) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_EFFECT), + "::", + stringify!(dwHueValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSharpness) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_EFFECT), + "::", + stringify!(dwSharpness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDenoising) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_EFFECT), + "::", + stringify!(dwDenoising) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_EFFECT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VIDEO_EFFECT = tagNET_DVR_VIDEO_EFFECT; +pub type LPNET_DVR_VIDEO_EFFECT = *mut tagNET_DVR_VIDEO_EFFECT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIDEO_INPUT_EFFECT { + pub dwSize: DWORD, + pub wEffectMode: WORD, + pub byRes1: [BYTE; 146usize], + pub struVideoEffect: NET_DVR_VIDEO_EFFECT, + pub byRes2: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEO_INPUT_EFFECT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 248usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEO_INPUT_EFFECT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VIDEO_INPUT_EFFECT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INPUT_EFFECT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wEffectMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INPUT_EFFECT), + "::", + stringify!(wEffectMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INPUT_EFFECT), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVideoEffect) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INPUT_EFFECT), + "::", + stringify!(struVideoEffect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INPUT_EFFECT), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_VIDEO_INPUT_EFFECT = tagNET_DVR_VIDEO_INPUT_EFFECT; +pub type LPNET_DVR_VIDEO_INPUT_EFFECT = *mut tagNET_DVR_VIDEO_INPUT_EFFECT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIDEOPARA_V40 { + pub dwChannel: DWORD, + pub dwVideoParamType: DWORD, + pub dwVideoParamValue: DWORD, + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEOPARA_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEOPARA_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VIDEOPARA_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPARA_V40), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoParamType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPARA_V40), + "::", + stringify!(dwVideoParamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoParamValue) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPARA_V40), + "::", + stringify!(dwVideoParamValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOPARA_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VIDEOPARA_V40 = tagNET_DVR_VIDEOPARA_V40; +pub type LPNET_DVR_VIDEOPARA_V40 = *mut tagNET_DVR_VIDEOPARA_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEFAULT_VIDEO_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub dwVideoMode: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEFAULT_VIDEO_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEFAULT_VIDEO_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEFAULT_VIDEO_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEFAULT_VIDEO_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEFAULT_VIDEO_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEFAULT_VIDEO_COND), + "::", + stringify!(dwVideoMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEFAULT_VIDEO_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DEFAULT_VIDEO_COND = tagNET_DVR_DEFAULT_VIDEO_COND; +pub type LPNET_DVR_DEFAULT_VIDEO_COND = *mut tagNET_DVR_DEFAULT_VIDEO_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ENCODE_JOINT_PARAM { + pub dwSize: DWORD, + pub byJointed: BYTE, + pub byDevType: BYTE, + pub byRes1: [BYTE; 2usize], + pub struIP: NET_DVR_IPADDR, + pub wPort: WORD, + pub wChannel: WORD, + pub byRes2: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ENCODE_JOINT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 176usize, + concat!("Size of: ", stringify!(tagNET_DVR_ENCODE_JOINT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ENCODE_JOINT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENCODE_JOINT_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJointed) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENCODE_JOINT_PARAM), + "::", + stringify!(byJointed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENCODE_JOINT_PARAM), + "::", + stringify!(byDevType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENCODE_JOINT_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENCODE_JOINT_PARAM), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENCODE_JOINT_PARAM), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wChannel) as usize - ptr as usize }, + 154usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENCODE_JOINT_PARAM), + "::", + stringify!(wChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENCODE_JOINT_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ENCODE_JOINT_PARAM = tagNET_DVR_ENCODE_JOINT_PARAM; +pub type LPNET_DVR_ENCODE_JOINT_PARAM = *mut tagNET_DVR_ENCODE_JOINT_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VCA_CHAN_WORKSTATUS { + pub byJointed: BYTE, + pub byRes1: [BYTE; 3usize], + pub struIP: NET_DVR_IPADDR, + pub wPort: WORD, + pub wChannel: WORD, + pub byVcaChanStatus: BYTE, + pub byRes2: [BYTE; 19usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VCA_CHAN_WORKSTATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 172usize, + concat!("Size of: ", stringify!(tagNET_DVR_VCA_CHAN_WORKSTATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VCA_CHAN_WORKSTATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJointed) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_CHAN_WORKSTATUS), + "::", + stringify!(byJointed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_CHAN_WORKSTATUS), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_CHAN_WORKSTATUS), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_CHAN_WORKSTATUS), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wChannel) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_CHAN_WORKSTATUS), + "::", + stringify!(wChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVcaChanStatus) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_CHAN_WORKSTATUS), + "::", + stringify!(byVcaChanStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 153usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_CHAN_WORKSTATUS), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_VCA_CHAN_WORKSTATUS = tagNET_DVR_VCA_CHAN_WORKSTATUS; +pub type LPNET_DVR_VCA_CHAN_WORKSTATUS = *mut tagNET_DVR_VCA_CHAN_WORKSTATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VCA_DEV_WORKSTATUS { + pub dwSize: DWORD, + pub byDeviceStatus: BYTE, + pub byCpuLoad: BYTE, + pub struVcaChanStatus: [NET_DVR_VCA_CHAN_WORKSTATUS; 16usize], + pub dwRes: [DWORD; 40usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VCA_DEV_WORKSTATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2920usize, + concat!("Size of: ", stringify!(tagNET_DVR_VCA_DEV_WORKSTATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VCA_DEV_WORKSTATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_DEV_WORKSTATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_DEV_WORKSTATUS), + "::", + stringify!(byDeviceStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCpuLoad) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_DEV_WORKSTATUS), + "::", + stringify!(byCpuLoad) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaChanStatus) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_DEV_WORKSTATUS), + "::", + stringify!(struVcaChanStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRes) as usize - ptr as usize }, + 2760usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_DEV_WORKSTATUS), + "::", + stringify!(dwRes) + ) + ); +} +pub type NET_DVR_VCA_DEV_WORKSTATUS = tagNET_DVR_VCA_DEV_WORKSTATUS; +pub type LPNET_DVR_VCA_DEV_WORKSTATUS = *mut tagNET_DVR_VCA_DEV_WORKSTATUS; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_VGA_DISP_CHAN_CFG_V40 { + pub dwSize: DWORD, + pub byAudio: BYTE, + pub byAudioWindowIdx: BYTE, + pub byVgaResolution: BYTE, + pub byVedioFormat: BYTE, + pub dwWindowMode: DWORD, + pub byJoinDecChan: [BYTE; 16usize], + pub byEnlargeStatus: BYTE, + pub byEnlargeSubWindowIndex: BYTE, + pub byScale: BYTE, + pub byUnionType: BYTE, + pub struDiff: tagNET_DVR_VGA_DISP_CHAN_CFG_V40__bindgen_ty_1, + pub byRes: [BYTE; 120usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_VGA_DISP_CHAN_CFG_V40__bindgen_ty_1 { + pub byRes: [BYTE; 160usize], + pub struVideoPlatform: tagNET_DVR_VGA_DISP_CHAN_CFG_V40__bindgen_ty_1__bindgen_ty_1, + pub struNotVideoPlatform: tagNET_DVR_VGA_DISP_CHAN_CFG_V40__bindgen_ty_1__bindgen_ty_2, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VGA_DISP_CHAN_CFG_V40__bindgen_ty_1__bindgen_ty_1 { + pub byJoinDecoderId: [BYTE; 16usize], + pub byDecResolution: BYTE, + pub byRes: [BYTE; 143usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VGA_DISP_CHAN_CFG_V40__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_VGA_DISP_CHAN_CFG_V40__bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 160usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJoinDecoderId) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byJoinDecoderId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecResolution) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byDecResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VGA_DISP_CHAN_CFG_V40__bindgen_ty_1__bindgen_ty_2 { + pub byRes: [BYTE; 160usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VGA_DISP_CHAN_CFG_V40__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_VGA_DISP_CHAN_CFG_V40__bindgen_ty_1__bindgen_ty_2, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 160usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byRes) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VGA_DISP_CHAN_CFG_V40__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 160usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40__bindgen_ty_1), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVideoPlatform) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40__bindgen_ty_1), + "::", + stringify!(struVideoPlatform) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNotVideoPlatform) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40__bindgen_ty_1), + "::", + stringify!(struNotVideoPlatform) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VGA_DISP_CHAN_CFG_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 312usize, + concat!("Size of: ", stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudio) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40), + "::", + stringify!(byAudio) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioWindowIdx) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40), + "::", + stringify!(byAudioWindowIdx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVgaResolution) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40), + "::", + stringify!(byVgaResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVedioFormat) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40), + "::", + stringify!(byVedioFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWindowMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40), + "::", + stringify!(dwWindowMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJoinDecChan) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40), + "::", + stringify!(byJoinDecChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnlargeStatus) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40), + "::", + stringify!(byEnlargeStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnlargeSubWindowIndex) as usize - ptr as usize }, + 29usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40), + "::", + stringify!(byEnlargeSubWindowIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScale) as usize - ptr as usize }, + 30usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40), + "::", + stringify!(byScale) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUnionType) as usize - ptr as usize }, + 31usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40), + "::", + stringify!(byUnionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDiff) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40), + "::", + stringify!(struDiff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VGA_DISP_CHAN_CFG_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VGA_DISP_CHAN_CFG_V40 = tagNET_DVR_VGA_DISP_CHAN_CFG_V40; +pub type LPNET_DVR_VGA_DISP_CHAN_CFG_V40 = *mut tagNET_DVR_VGA_DISP_CHAN_CFG_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_V6SUBSYSTEMPARAM { + pub bySerialTrans: BYTE, + pub byRes: [BYTE; 35usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_V6SUBSYSTEMPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_V6SUBSYSTEMPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_V6SUBSYSTEMPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySerialTrans) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_V6SUBSYSTEMPARAM), + "::", + stringify!(bySerialTrans) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_V6SUBSYSTEMPARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_V6SUBSYSTEMPARAM = tagNET_DVR_V6SUBSYSTEMPARAM; +pub type LPNET_DVR_V6SUBSYSTEMPARAM = *mut tagNET_DVR_V6SUBSYSTEMPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CORRECT_DEADPIXEL_PARAM { + pub dwSize: DWORD, + pub dwCommand: DWORD, + pub dwDeadPixelX: DWORD, + pub dwDeadPixelY: DWORD, + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CORRECT_DEADPIXEL_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28usize, + concat!("Size of: ", stringify!(tagNET_DVR_CORRECT_DEADPIXEL_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_CORRECT_DEADPIXEL_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CORRECT_DEADPIXEL_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCommand) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CORRECT_DEADPIXEL_PARAM), + "::", + stringify!(dwCommand) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeadPixelX) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CORRECT_DEADPIXEL_PARAM), + "::", + stringify!(dwDeadPixelX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeadPixelY) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CORRECT_DEADPIXEL_PARAM), + "::", + stringify!(dwDeadPixelY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CORRECT_DEADPIXEL_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CORRECT_DEADPIXEL_PARAM = tagNET_DVR_CORRECT_DEADPIXEL_PARAM; +pub type LPNET_DVR_CORRECT_DEADPIXEL_PARAM = *mut tagNET_DVR_CORRECT_DEADPIXEL_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CORRECT_PARAMS { + pub byYellowIntervalTime: BYTE, + pub byDigTrafficLight: BYTE, + pub byRes: [BYTE; 2usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CORRECT_PARAMS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(tagNET_DVR_CORRECT_PARAMS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CORRECT_PARAMS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byYellowIntervalTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CORRECT_PARAMS), + "::", + stringify!(byYellowIntervalTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDigTrafficLight) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CORRECT_PARAMS), + "::", + stringify!(byDigTrafficLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CORRECT_PARAMS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CORRECT_PARAMS = tagNET_DVR_CORRECT_PARAMS; +pub type LPNET_DVR_CORRECT_PARAMS = *mut tagNET_DVR_CORRECT_PARAMS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REDAREACFG { + pub dwSize: DWORD, + pub dwCorrectEnable: DWORD, + pub dwCorrectLevel: DWORD, + pub dwAreaNum: DWORD, + pub struLaneRect: [NET_VCA_RECT; 6usize], + pub struCorrectParam: [NET_DVR_CORRECT_PARAMS; 6usize], + pub byRes2: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REDAREACFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!("Size of: ", stringify!(tagNET_DVR_REDAREACFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_REDAREACFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REDAREACFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCorrectEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REDAREACFG), + "::", + stringify!(dwCorrectEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCorrectLevel) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REDAREACFG), + "::", + stringify!(dwCorrectLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAreaNum) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REDAREACFG), + "::", + stringify!(dwAreaNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneRect) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REDAREACFG), + "::", + stringify!(struLaneRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCorrectParam) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REDAREACFG), + "::", + stringify!(struCorrectParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REDAREACFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_REDAREACFG = tagNET_DVR_REDAREACFG; +pub type LPNET_DVR_REDAREACFG = *mut tagNET_DVR_REDAREACFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HISTORICDATACFG { + pub dwSize: DWORD, + pub dwTotalNum: DWORD, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HISTORICDATACFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_DVR_HISTORICDATACFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HISTORICDATACFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HISTORICDATACFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotalNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HISTORICDATACFG), + "::", + stringify!(dwTotalNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HISTORICDATACFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_HISTORICDATACFG = tagNET_DVR_HISTORICDATACFG; +pub type LPNET_DVR_HISTORICDATACFG = *mut tagNET_DVR_HISTORICDATACFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INQUEST_ROOM { + pub byRoomIndex: BYTE, + pub byFileType: BYTE, + pub byMode: BYTE, + pub byQuick: BYTE, + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INQUEST_ROOM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_DVR_INQUEST_ROOM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INQUEST_ROOM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRoomIndex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_ROOM), + "::", + stringify!(byRoomIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_ROOM), + "::", + stringify!(byFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_ROOM), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byQuick) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_ROOM), + "::", + stringify!(byQuick) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_ROOM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INQUEST_ROOM = tagNET_DVR_INQUEST_ROOM; +pub type LPNET_DVR_INQUEST_ROOM = *mut tagNET_DVR_INQUEST_ROOM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INQUEST_MESSAGE { + pub sMessage: [::std::os::raw::c_char; 44usize], + pub byRes: [BYTE; 46usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INQUEST_MESSAGE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 90usize, + concat!("Size of: ", stringify!(tagNET_DVR_INQUEST_MESSAGE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INQUEST_MESSAGE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sMessage) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_MESSAGE), + "::", + stringify!(sMessage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_MESSAGE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INQUEST_MESSAGE = tagNET_DVR_INQUEST_MESSAGE; +pub type LPNET_DVR_INQUEST_MESSAGE = *mut tagNET_DVR_INQUEST_MESSAGE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INQUEST_SENSOR_DEVICE { + pub wDeviceType: WORD, + pub wDeviceAddr: WORD, + pub byRes: [BYTE; 28usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INQUEST_SENSOR_DEVICE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_DVR_INQUEST_SENSOR_DEVICE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_INQUEST_SENSOR_DEVICE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDeviceType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_SENSOR_DEVICE), + "::", + stringify!(wDeviceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDeviceAddr) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_SENSOR_DEVICE), + "::", + stringify!(wDeviceAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_SENSOR_DEVICE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INQUEST_SENSOR_DEVICE = tagNET_DVR_INQUEST_SENSOR_DEVICE; +pub type LPNET_DVR_INQUEST_SENSOR_DEVICE = *mut tagNET_DVR_INQUEST_SENSOR_DEVICE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INQUEST_SENSOR_INFO { + pub struSensorDevice: [NET_DVR_INQUEST_SENSOR_DEVICE; 2usize], + pub dwSupportPro: DWORD, + pub byRes: [BYTE; 120usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INQUEST_SENSOR_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 188usize, + concat!("Size of: ", stringify!(tagNET_DVR_INQUEST_SENSOR_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INQUEST_SENSOR_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSensorDevice) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_SENSOR_INFO), + "::", + stringify!(struSensorDevice) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSupportPro) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_SENSOR_INFO), + "::", + stringify!(dwSupportPro) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_SENSOR_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INQUEST_SENSOR_INFO = tagNET_DVR_INQUEST_SENSOR_INFO; +pub type LPNET_DVR_INQUEST_SENSOR_INFO = *mut tagNET_DVR_INQUEST_SENSOR_INFO; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_INQUEST_ROOM_INFO { + pub szCDName: [::std::os::raw::c_char; 32usize], + pub uCalcMode: tagNET_DVR_INQUEST_ROOM_INFO__bindgen_ty_1, + pub byCalcType: BYTE, + pub byAutoDelRecord: BYTE, + pub byAlarmThreshold: BYTE, + pub byInquestChannelResolution: BYTE, + pub byAutoOpenTray: BYTE, + pub byCDPrintEnabled: BYTE, + pub byRes: [BYTE; 9usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_INQUEST_ROOM_INFO__bindgen_ty_1 { + pub byBitRate: BYTE, + pub byInquestTime: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INQUEST_ROOM_INFO__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_INQUEST_ROOM_INFO__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_INQUEST_ROOM_INFO__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBitRate) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_ROOM_INFO__bindgen_ty_1), + "::", + stringify!(byBitRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInquestTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_ROOM_INFO__bindgen_ty_1), + "::", + stringify!(byInquestTime) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INQUEST_ROOM_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_DVR_INQUEST_ROOM_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INQUEST_ROOM_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szCDName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_ROOM_INFO), + "::", + stringify!(szCDName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uCalcMode) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_ROOM_INFO), + "::", + stringify!(uCalcMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCalcType) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_ROOM_INFO), + "::", + stringify!(byCalcType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAutoDelRecord) as usize - ptr as usize }, + 34usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_ROOM_INFO), + "::", + stringify!(byAutoDelRecord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmThreshold) as usize - ptr as usize }, + 35usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_ROOM_INFO), + "::", + stringify!(byAlarmThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInquestChannelResolution) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_ROOM_INFO), + "::", + stringify!(byInquestChannelResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAutoOpenTray) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_ROOM_INFO), + "::", + stringify!(byAutoOpenTray) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCDPrintEnabled) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_ROOM_INFO), + "::", + stringify!(byCDPrintEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_ROOM_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INQUEST_ROOM_INFO = tagNET_DVR_INQUEST_ROOM_INFO; +pub type LPNET_DVR_INQUEST_ROOM_INFO = *mut tagNET_DVR_INQUEST_ROOM_INFO; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_INQUEST_SYSTEM_INFO { + pub dwRecordMode: DWORD, + pub dwWorkMode: DWORD, + pub dwResolutionMode: DWORD, + pub struSensorInfo: NET_DVR_INQUEST_SENSOR_INFO, + pub struInquestRoomInfo: [NET_DVR_INQUEST_ROOM_INFO; 2usize], + pub byEnableHashCheck: BYTE, + pub byEnableInitCD: BYTE, + pub byCDProcessingMode: BYTE, + pub byRes: [BYTE; 21usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INQUEST_SYSTEM_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 320usize, + concat!("Size of: ", stringify!(tagNET_DVR_INQUEST_SYSTEM_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INQUEST_SYSTEM_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_SYSTEM_INFO), + "::", + stringify!(dwRecordMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWorkMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_SYSTEM_INFO), + "::", + stringify!(dwWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwResolutionMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_SYSTEM_INFO), + "::", + stringify!(dwResolutionMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSensorInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_SYSTEM_INFO), + "::", + stringify!(struSensorInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInquestRoomInfo) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_SYSTEM_INFO), + "::", + stringify!(struInquestRoomInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableHashCheck) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_SYSTEM_INFO), + "::", + stringify!(byEnableHashCheck) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableInitCD) as usize - ptr as usize }, + 297usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_SYSTEM_INFO), + "::", + stringify!(byEnableInitCD) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCDProcessingMode) as usize - ptr as usize }, + 298usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_SYSTEM_INFO), + "::", + stringify!(byCDProcessingMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 299usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_SYSTEM_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INQUEST_SYSTEM_INFO = tagNET_DVR_INQUEST_SYSTEM_INFO; +pub type LPNET_DVR_INQUEST_SYSTEM_INFO = *mut tagNET_DVR_INQUEST_SYSTEM_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_INQUEST_ALARM_ { + pub dwSize: DWORD, + pub dwAlarmType: DWORD, + pub byTrayNo: BYTE, + pub byRes: [BYTE; 3usize], + pub dwInquestTime: DWORD, + pub dwNotifyChannel: DWORD, + pub byRes1: [BYTE; 244usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_INQUEST_ALARM_() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_INQUEST_ALARM_> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_INQUEST_ALARM_>(), + 264usize, + concat!("Size of: ", stringify!(_NET_DVR_INQUEST_ALARM_)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_INQUEST_ALARM_>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_INQUEST_ALARM_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_INQUEST_ALARM_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_INQUEST_ALARM_), + "::", + stringify!(dwAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrayNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_INQUEST_ALARM_), + "::", + stringify!(byTrayNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_INQUEST_ALARM_), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInquestTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_INQUEST_ALARM_), + "::", + stringify!(dwInquestTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNotifyChannel) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_INQUEST_ALARM_), + "::", + stringify!(dwNotifyChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_INQUEST_ALARM_), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_INQUEST_ALARM = _NET_DVR_INQUEST_ALARM_; +pub type LPNET_DVR_INQUEST_ALARM = *mut _NET_DVR_INQUEST_ALARM_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_VIDEO_PARKING_POLE_ALARM_ { + pub dwSize: DWORD, + pub struTime: NET_DVR_TIME_V30, + pub byParkingNum: [BYTE; 32usize], + pub byAlarmType: BYTE, + pub byVehicleEnterState: BYTE, + pub byRes: [BYTE; 78usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_VIDEO_PARKING_POLE_ALARM_() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_VIDEO_PARKING_POLE_ALARM_> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_VIDEO_PARKING_POLE_ALARM_>(), + 128usize, + concat!("Size of: ", stringify!(_NET_DVR_VIDEO_PARKING_POLE_ALARM_)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_VIDEO_PARKING_POLE_ALARM_>(), + 4usize, + concat!( + "Alignment of ", + stringify!(_NET_DVR_VIDEO_PARKING_POLE_ALARM_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_VIDEO_PARKING_POLE_ALARM_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_VIDEO_PARKING_POLE_ALARM_), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParkingNum) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_VIDEO_PARKING_POLE_ALARM_), + "::", + stringify!(byParkingNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_VIDEO_PARKING_POLE_ALARM_), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleEnterState) as usize - ptr as usize }, + 49usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_VIDEO_PARKING_POLE_ALARM_), + "::", + stringify!(byVehicleEnterState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 50usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_VIDEO_PARKING_POLE_ALARM_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VIDEO_PARKING_POLE_ALARM = _NET_DVR_VIDEO_PARKING_POLE_ALARM_; +pub type LPNET_DVR_VIDEO_PARKING_POLE_ALARM = *mut _NET_DVR_VIDEO_PARKING_POLE_ALARM_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INQUEST_RESUME_SEGMENT { + pub struStartTime: NET_DVR_TIME, + pub struStopTime: NET_DVR_TIME, + pub byRoomIndex: BYTE, + pub byDriveIndex: BYTE, + pub wSegmetSize: WORD, + pub dwSegmentNo: DWORD, + pub byRes: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INQUEST_RESUME_SEGMENT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_INQUEST_RESUME_SEGMENT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_INQUEST_RESUME_SEGMENT) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_RESUME_SEGMENT), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_RESUME_SEGMENT), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRoomIndex) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_RESUME_SEGMENT), + "::", + stringify!(byRoomIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDriveIndex) as usize - ptr as usize }, + 49usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_RESUME_SEGMENT), + "::", + stringify!(byDriveIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSegmetSize) as usize - ptr as usize }, + 50usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_RESUME_SEGMENT), + "::", + stringify!(wSegmetSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSegmentNo) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_RESUME_SEGMENT), + "::", + stringify!(dwSegmentNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_RESUME_SEGMENT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INQUEST_RESUME_SEGMENT = tagNET_DVR_INQUEST_RESUME_SEGMENT; +pub type LPNET_DVR_INQUEST_RESUME_SEGMENT = *mut tagNET_DVR_INQUEST_RESUME_SEGMENT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INQUEST_RESUME_EVENT { + pub dwResumeNum: DWORD, + pub struResumeSegment: [NET_DVR_INQUEST_RESUME_SEGMENT; 2usize], + pub byResumeMode: BYTE, + pub byCDPrintEnbled: BYTE, + pub byRes: [BYTE; 198usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INQUEST_RESUME_EVENT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 364usize, + concat!("Size of: ", stringify!(tagNET_DVR_INQUEST_RESUME_EVENT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INQUEST_RESUME_EVENT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwResumeNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_RESUME_EVENT), + "::", + stringify!(dwResumeNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struResumeSegment) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_RESUME_EVENT), + "::", + stringify!(struResumeSegment) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byResumeMode) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_RESUME_EVENT), + "::", + stringify!(byResumeMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCDPrintEnbled) as usize - ptr as usize }, + 165usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_RESUME_EVENT), + "::", + stringify!(byCDPrintEnbled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 166usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_RESUME_EVENT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INQUEST_RESUME_EVENT = tagNET_DVR_INQUEST_RESUME_EVENT; +pub type LPNET_DVR_INQUEST_RESUME_EVENT = *mut tagNET_DVR_INQUEST_RESUME_EVENT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INQUEST_DEVICE_VERSION { + pub byMainVersion: BYTE, + pub bySubVersion: BYTE, + pub byUpgradeVersion: BYTE, + pub byCustomizeVersion: BYTE, + pub byRes: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INQUEST_DEVICE_VERSION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(tagNET_DVR_INQUEST_DEVICE_VERSION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_INQUEST_DEVICE_VERSION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainVersion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_DEVICE_VERSION), + "::", + stringify!(byMainVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubVersion) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_DEVICE_VERSION), + "::", + stringify!(bySubVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUpgradeVersion) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_DEVICE_VERSION), + "::", + stringify!(byUpgradeVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCustomizeVersion) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_DEVICE_VERSION), + "::", + stringify!(byCustomizeVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_DEVICE_VERSION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INQUEST_DEVICE_VERSION = tagNET_DVR_INQUEST_DEVICE_VERSION; +pub type LPNET_DVR_INQUEST_DEVICE_VERSION = *mut tagNET_DVR_INQUEST_DEVICE_VERSION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DISK_RAID_INFO { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub bySleepStatus: BYTE, + pub byRes: [BYTE; 34usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DISK_RAID_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_DISK_RAID_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DISK_RAID_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_RAID_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_RAID_INFO), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySleepStatus) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_RAID_INFO), + "::", + stringify!(bySleepStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISK_RAID_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DISK_RAID_INFO = tagNET_DVR_DISK_RAID_INFO; +pub type LPNET_DVR_DISK_RAID_INFO = *mut tagNET_DVR_DISK_RAID_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SYNCHRONOUS_IPC { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SYNCHRONOUS_IPC() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_SYNCHRONOUS_IPC)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SYNCHRONOUS_IPC)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SYNCHRONOUS_IPC), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SYNCHRONOUS_IPC), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SYNCHRONOUS_IPC), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SYNCHRONOUS_IPC = tagNET_DVR_SYNCHRONOUS_IPC; +pub type LPNET_DVR_SYNCHRONOUS_IPC = *mut tagNET_DVR_SYNCHRONOUS_IPC; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IPC_PASSWD { + pub dwSize: DWORD, + pub sOldPasswd: [::std::os::raw::c_char; 16usize], + pub sNewPasswd: [::std::os::raw::c_char; 16usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPC_PASSWD() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_IPC_PASSWD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IPC_PASSWD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPC_PASSWD), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sOldPasswd) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPC_PASSWD), + "::", + stringify!(sOldPasswd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sNewPasswd) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPC_PASSWD), + "::", + stringify!(sNewPasswd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPC_PASSWD), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_IPC_PASSWD = tagNET_DVR_IPC_PASSWD; +pub type LPNET_DVR_IPC_PASSWD = *mut tagNET_DVR_IPC_PASSWD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DEVICE_NET_USING_INFO { + pub dwSize: DWORD, + pub dwPreview: DWORD, + pub dwPlayback: DWORD, + pub dwIPCModule: DWORD, + pub dwNetDiskRW: DWORD, + pub res: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DEVICE_NET_USING_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 52usize, + concat!("Size of: ", stringify!(tagNET_DEVICE_NET_USING_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DEVICE_NET_USING_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DEVICE_NET_USING_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPreview) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DEVICE_NET_USING_INFO), + "::", + stringify!(dwPreview) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlayback) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DEVICE_NET_USING_INFO), + "::", + stringify!(dwPlayback) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIPCModule) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DEVICE_NET_USING_INFO), + "::", + stringify!(dwIPCModule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNetDiskRW) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DEVICE_NET_USING_INFO), + "::", + stringify!(dwNetDiskRW) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).res) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DEVICE_NET_USING_INFO), + "::", + stringify!(res) + ) + ); +} +pub type NET_DVR_DEVICE_NET_USING_INFO = tagNET_DEVICE_NET_USING_INFO; +pub type LPNET_DVR_DEVICE_NET_USING_INFO = *mut tagNET_DEVICE_NET_USING_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IPC_NETCFG { + pub dwSize: DWORD, + pub struIP: NET_DVR_IPADDR, + pub wPort: WORD, + pub res: [::std::os::raw::c_char; 126usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPC_NETCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 276usize, + concat!("Size of: ", stringify!(tagNET_DVR_IPC_NETCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IPC_NETCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPC_NETCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPC_NETCFG), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPC_NETCFG), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).res) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPC_NETCFG), + "::", + stringify!(res) + ) + ); +} +pub type NET_DVR_IPC_NETCFG = tagNET_DVR_IPC_NETCFG; +pub type LPNET_DVR_IPC_NETCFG = *mut tagNET_DVR_IPC_NETCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TIME_LOCK { + pub dwSize: DWORD, + pub strBeginTime: NET_DVR_TIME, + pub strEndTime: NET_DVR_TIME, + pub dwChannel: DWORD, + pub dwRecordType: DWORD, + pub dwLockDuration: DWORD, + pub strUnlockTimePoint: NET_DVR_TIME_EX, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TIME_LOCK() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_TIME_LOCK)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TIME_LOCK)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_LOCK), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strBeginTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_LOCK), + "::", + stringify!(strBeginTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strEndTime) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_LOCK), + "::", + stringify!(strEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_LOCK), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordType) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_LOCK), + "::", + stringify!(dwRecordType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLockDuration) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_LOCK), + "::", + stringify!(dwLockDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strUnlockTimePoint) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_LOCK), + "::", + stringify!(strUnlockTimePoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_LOCK), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TIME_LOCK = tagNET_DVR_TIME_LOCK; +pub type LPNET_DVR_TIME_LOCK = *mut tagNET_DVR_TIME_LOCK; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCK_RETURN { + pub dwSize: DWORD, + pub strBeginTime: NET_DVR_TIME, + pub strEndTime: NET_DVR_TIME, + pub byISO8601: BYTE, + pub cTimeDifferenceH: ::std::os::raw::c_char, + pub cTimeDifferenceM: ::std::os::raw::c_char, + pub byRes: [BYTE; 17usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCK_RETURN() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOCK_RETURN)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOCK_RETURN)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCK_RETURN), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strBeginTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCK_RETURN), + "::", + stringify!(strBeginTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strEndTime) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCK_RETURN), + "::", + stringify!(strEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byISO8601) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCK_RETURN), + "::", + stringify!(byISO8601) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceH) as usize - ptr as usize }, + 53usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCK_RETURN), + "::", + stringify!(cTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceM) as usize - ptr as usize }, + 54usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCK_RETURN), + "::", + stringify!(cTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 55usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCK_RETURN), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOCK_RETURN = tagNET_DVR_LOCK_RETURN; +pub type LPNET_DVR_LOCK_RETURN = *mut tagNET_DVR_LOCK_RETURN; +pub const NET_SDK_UPLOAD_TYPE_UPGRADE_CERT_FILE: NET_SDK_UPLOAD_TYPE = 0; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_CERT_FILE: NET_SDK_UPLOAD_TYPE = 1; +pub const NET_SDK_UPLOAD_TYPE_TRIAL_CERT_FILE: NET_SDK_UPLOAD_TYPE = 2; +pub const NET_SDK_UPLOAD_TYPE_CONFIGURATION_FILE: NET_SDK_UPLOAD_TYPE = 3; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_RECORD_FILE: NET_SDK_UPLOAD_TYPE = 4; +pub const NET_SDK_UPLOAD_TYPE_SCENE_CONFIGURATION_FILE: NET_SDK_UPLOAD_TYPE = 5; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_PICTURE_FILE: NET_SDK_UPLOAD_TYPE = 6; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_VIOLATION_FILE: NET_SDK_UPLOAD_TYPE = 7; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_TG_FILE: NET_SDK_UPLOAD_TYPE = 8; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_DATA_TO_DB: NET_SDK_UPLOAD_TYPE = 9; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_BACKGROUND_PIC: NET_SDK_UPLOAD_TYPE = 10; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_CALIBRATION_FILE: NET_SDK_UPLOAD_TYPE = 11; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_TME_FILE: NET_SDK_UPLOAD_TYPE = 12; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_VEHICLE_BLOCKALLOWLIST_FILE: NET_SDK_UPLOAD_TYPE = 13; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_PICTURE_TO_CLOUD: NET_SDK_UPLOAD_TYPE = 15; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_VIDEO_FILE: NET_SDK_UPLOAD_TYPE = 16; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_SCREEN_FILE: NET_SDK_UPLOAD_TYPE = 17; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_PUBLISH_MATERIAL: NET_SDK_UPLOAD_TYPE = 18; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_PUBLISH_UPGRADE_FILE: NET_SDK_UPLOAD_TYPE = 19; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_RING_FILE: NET_SDK_UPLOAD_TYPE = 20; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_ENCRYPT_CERT: NET_SDK_UPLOAD_TYPE = 21; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_THERMOMETRIC_FILE: NET_SDK_UPLOAD_TYPE = 22; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_SUBBRAND_FILE: NET_SDK_UPLOAD_TYPE = 23; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_LED_CHECK_FILE: NET_SDK_UPLOAD_TYPE = 24; +pub const NET_SDK_UPLOAD_TYPE_BATCH_UPLOAD_PICTURE_FILE: NET_SDK_UPLOAD_TYPE = 25; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_EDID_CFG_FILE: NET_SDK_UPLOAD_TYPE = 26; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_PANORAMIC_STITCH: NET_SDK_UPLOAD_TYPE = 27; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_BINOCULAR_COUNTING: NET_SDK_UPLOAD_TYPE = 28; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_AUDIO_FILE: NET_SDK_UPLOAD_TYPE = 29; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_PUBLISH_THIRD_PARTY_FILE: NET_SDK_UPLOAD_TYPE = 30; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_DEEPEYES_BINOCULAR: NET_SDK_UPLOAD_TYPE = 31; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_CERTIFICATE_BLOCKLIST: NET_SDK_UPLOAD_TYPE = 32; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_HD_CAMERA_CORRECT_TABLE: NET_SDK_UPLOAD_TYPE = 33; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_FD_DATA: NET_SDK_UPLOAD_TYPE = 35; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_FACE_DATA: NET_SDK_UPLOAD_TYPE = 36; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_FACE_ANALYSIS_DATA: NET_SDK_UPLOAD_TYPE = 37; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_FILEVOLUME_DATA: NET_SDK_UPLOAD_TYPE = 38; +pub const NET_SDK_UPLOAD_TYPE_IMPORT_DATA_TO_FACELIB: NET_SDK_UPLOAD_TYPE = 39; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_LEFTEYE_4K_CALIBFILE: NET_SDK_UPLOAD_TYPE = 40; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_SECURITY_CFG_FILE: NET_SDK_UPLOAD_TYPE = 41; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_RIGHT_CONTROLLER_AUDIO: NET_SDK_UPLOAD_TYPE = 42; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_MODBUS_CFG_FILE: NET_SDK_UPLOAD_TYPE = 43; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_NOTICE_VIDEO_DATA: NET_SDK_UPLOAD_TYPE = 44; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_RS485_PROTOCOL_DLL_FILE: NET_SDK_UPLOAD_TYPE = 45; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_PIC_BY_BUF: NET_SDK_UPLOAD_TYPE = 46; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_CLIENT_CALIBFILE: NET_SDK_UPLOAD_TYPE = 47; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_HD_CAMERA_CORRECT_TABLE_3200W: NET_SDK_UPLOAD_TYPE = 48; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_DOOR_CONTENT: NET_SDK_UPLOAD_TYPE = 49; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_ASR_CONTROL_FILE: NET_SDK_UPLOAD_TYPE = 50; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_APP_FILE: NET_SDK_UPLOAD_TYPE = 51; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_AI_ALGORITHM_MODEL: NET_SDK_UPLOAD_TYPE = 52; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_PUBLISH_PROGRAM_THUMBNAIL: NET_SDK_UPLOAD_TYPE = 53; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_PUBLISH_TEMPLATE_THUMBNAIL: NET_SDK_UPLOAD_TYPE = 54; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_AI_PICTURE: NET_SDK_UPLOAD_TYPE = 55; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_OFFLINE_CAPTURE_INFO: NET_SDK_UPLOAD_TYPE = 56; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_FONT_TYPE_DLL_FILE: NET_SDK_UPLOAD_TYPE = 57; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_CLIENT_CALIBFILE_FILE: NET_SDK_UPLOAD_TYPE = 58; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_HD_CAMERA_CORRECT_TABLE_3200W_FILE: NET_SDK_UPLOAD_TYPE = 59; +pub const NET_SDK_UPLOAD_TYPE_IMPORT_DATA_TO_HBDLIB: NET_SDK_UPLOAD_TYPE = 60; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_SCENE_FILE: NET_SDK_UPLOAD_TYPE = 61; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_RATIOSTITCHING_FILE: NET_SDK_UPLOAD_TYPE = 62; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_LENS_PARAM_FILE: NET_SDK_UPLOAD_TYPE = 63; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_CUSTOMAUDIO_FILE: NET_SDK_UPLOAD_TYPE = 64; +pub const NET_SDK_UPLOAD_TYPE_UPLOAD_VIDEOWALL_MATERIAL_FILE: NET_SDK_UPLOAD_TYPE = 65; +pub type NET_SDK_UPLOAD_TYPE = ::std::os::raw::c_uint; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_CERT: NET_SDK_DOWNLOAD_TYPE = 0; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_IPC_CFG_FILE: NET_SDK_DOWNLOAD_TYPE = 1; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_BASELINE_SCENE_PIC: NET_SDK_DOWNLOAD_TYPE = 2; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_VQD_ALARM_PIC: NET_SDK_DOWNLOAD_TYPE = 3; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_CONFIGURATION_FILE: NET_SDK_DOWNLOAD_TYPE = 4; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_SCENE_CONFIGURATION_FILE: NET_SDK_DOWNLOAD_TYPE = + 5; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_FILE_FORM_DB: NET_SDK_DOWNLOAD_TYPE = 6; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_TME_FILE: NET_SDK_DOWNLOAD_TYPE = 7; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_VEHICLE_BLOCKALLOWLIST_FILE: + NET_SDK_DOWNLOAD_TYPE = 8; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_GUID_FILE: NET_SDK_DOWNLOAD_TYPE = 9; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_FILE_FORM_CLOUD: NET_SDK_DOWNLOAD_TYPE = 10; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_PICTURE: NET_SDK_DOWNLOAD_TYPE = 11; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_VIDEO: NET_SDK_DOWNLOAD_TYPE = 12; +pub const NET_SDK_DOWNLOAD_TYPE_NET_DVR_DOWNLOAD_SCREEN_FILE: NET_SDK_DOWNLOAD_TYPE = 13; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_PUBLISH_MATERIAL: NET_SDK_DOWNLOAD_TYPE = 14; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_THERMOMETRIC_FILE: NET_SDK_DOWNLOAD_TYPE = 15; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_LED_CHECK_FILE: NET_SDK_DOWNLOAD_TYPE = 16; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_VEHICLE_INFORMATION: NET_SDK_DOWNLOAD_TYPE = 17; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_CERTIFICATE_BLOCKLIST_TEMPLET: + NET_SDK_DOWNLOAD_TYPE = 18; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_LOG_FILE: NET_SDK_DOWNLOAD_TYPE = 19; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_FILEVOLUME_DATA: NET_SDK_DOWNLOAD_TYPE = 20; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_FD_DATA: NET_SDK_DOWNLOAD_TYPE = 21; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_SECURITY_CFG_FILE: NET_SDK_DOWNLOAD_TYPE = 22; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_PUBLISH_SCHEDULE: NET_SDK_DOWNLOAD_TYPE = 23; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_RIGHT_CONTROLLER_AUDIO: NET_SDK_DOWNLOAD_TYPE = 24; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_MODBUS_CFG_FILE: NET_SDK_DOWNLOAD_TYPE = 25; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_RS485_PROTOCOL_DLL_FILE: NET_SDK_DOWNLOAD_TYPE = + 26; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_CLUSTER_MAINTENANCE_LOG: NET_SDK_DOWNLOAD_TYPE = + 27; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_SQL_ARCHIVE_FILE: NET_SDK_DOWNLOAD_TYPE = 28; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_SUBWIND_STREAM: NET_SDK_DOWNLOAD_TYPE = 29; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_DEVTYPE_CALIBFILE: NET_SDK_DOWNLOAD_TYPE = 30; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_HD_CAMERA_CORRECT_TABLE: NET_SDK_DOWNLOAD_TYPE = + 31; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_CLIENT_CALIBFILE: NET_SDK_DOWNLOAD_TYPE = 32; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_FOUE_CAMERAS_PICTURES: NET_SDK_DOWNLOAD_TYPE = 33; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_DOOR_CONTENT: NET_SDK_DOWNLOAD_TYPE = 34; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_PUBLISH_MATERIAL_THUMBNAIL: NET_SDK_DOWNLOAD_TYPE = + 35; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_PUBLISH_PROGRAM_THUMBNAIL: NET_SDK_DOWNLOAD_TYPE = + 36; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_PUBLISH_TEMPLATE_THUMBNAIL: NET_SDK_DOWNLOAD_TYPE = + 37; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_DARK_FIGHTER_X_CORRECT_TABLE_MAIN: + NET_SDK_DOWNLOAD_TYPE = 38; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_DARK_FIGHTER_X_CORRECT_TABLE_BACKUP: + NET_SDK_DOWNLOAD_TYPE = 39; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_OFFLINE_CAPTURE_INFO_TEMPLATE: + NET_SDK_DOWNLOAD_TYPE = 40; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_CAPTURE_DATA: NET_SDK_DOWNLOAD_TYPE = 41; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_HD_CAMERA_CORRECT_TABLE_FILE: + NET_SDK_DOWNLOAD_TYPE = 42; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_CLIENT_CALIBFILE_FILE: NET_SDK_DOWNLOAD_TYPE = 43; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_FOUR_CAMERAS_PICTURES_FILE: NET_SDK_DOWNLOAD_TYPE = + 44; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_SCENE_FILE: NET_SDK_DOWNLOAD_TYPE = 45; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_OPEN_SOURCE_CERT: NET_SDK_DOWNLOAD_TYPE = 46; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_RATIOSTITCHING_FILE: NET_SDK_DOWNLOAD_TYPE = 47; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_LENS_PARAM_FILE: NET_SDK_DOWNLOAD_TYPE = 48; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_SELECT_DEVTYPE_CALIBFILE: NET_SDK_DOWNLOAD_TYPE = + 49; +pub const NET_SDK_DOWNLOAD_TYPE_NET_SDK_DOWNLOAD_VIDEOWALL_MATERIAL_FILE: NET_SDK_DOWNLOAD_TYPE = + 50; +pub type NET_SDK_DOWNLOAD_TYPE = ::std::os::raw::c_uint; +pub const NET_SDK_DOWNLOAD_STATUS_NET_SDK_DOWNLOAD_STATUS_SUCCESS: NET_SDK_DOWNLOAD_STATUS = 1; +pub const NET_SDK_DOWNLOAD_STATUS_NET_SDK_DOWNLOAD_STATUS_PROCESSING: NET_SDK_DOWNLOAD_STATUS = 2; +pub const NET_SDK_DOWNLOAD_STATUS_NET_SDK_DOWNLOAD_STATUS_FAILED: NET_SDK_DOWNLOAD_STATUS = 3; +pub const NET_SDK_DOWNLOAD_STATUS_NET_SDK_DOWNLOAD_STATUS_UNKOWN_ERROR: NET_SDK_DOWNLOAD_STATUS = 4; +pub const NET_SDK_DOWNLOAD_STATUS_NET_SDK_DOWNLOAD_STATUS_RESOURCE: NET_SDK_DOWNLOAD_STATUS = 5; +pub const NET_SDK_DOWNLOAD_STATUS_NET_SDK_DOWNLOAD_STATUS_GUIDFILE_EXPORT_FAIL: + NET_SDK_DOWNLOAD_STATUS = 6; +pub type NET_SDK_DOWNLOAD_STATUS = ::std::os::raw::c_uint; +pub const tagNET_SDK_DOWNLOAD_CONTROL_TYPE_ENUM_ENUM_DOWNLOAD_CONTROL_ERR: + tagNET_SDK_DOWNLOAD_CONTROL_TYPE_ENUM = -1; +pub const tagNET_SDK_DOWNLOAD_CONTROL_TYPE_ENUM_ENUM_DOWNLOAD_CONTROL_QOS: + tagNET_SDK_DOWNLOAD_CONTROL_TYPE_ENUM = 1; +pub type tagNET_SDK_DOWNLOAD_CONTROL_TYPE_ENUM = ::std::os::raw::c_int; +pub use self::tagNET_SDK_DOWNLOAD_CONTROL_TYPE_ENUM as NET_SDK_DOWNLOAD_CONTROL_TYPE_ENUM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PANORAMIC_STITCH_UPLOAD { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PANORAMIC_STITCH_UPLOAD() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_PANORAMIC_STITCH_UPLOAD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PANORAMIC_STITCH_UPLOAD) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PANORAMIC_STITCH_UPLOAD), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PANORAMIC_STITCH_UPLOAD), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PANORAMIC_STITCH_UPLOAD), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PANORAMIC_STITCH_UPLOAD = tagNET_DVR_PANORAMIC_STITCH_UPLOAD; +pub type LPNET_DVR_PANORAMIC_STITCH_UPLOAD = *mut tagNET_DVR_PANORAMIC_STITCH_UPLOAD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_FD_DATA_COND { + pub dwSize: DWORD, + pub szFDID: [::std::os::raw::c_char; 256usize], + pub szCheckCode: [::std::os::raw::c_char; 128usize], + pub byCover: BYTE, + pub szLoginPassword: [::std::os::raw::c_char; 16usize], + pub byRes: [BYTE; 111usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_FD_DATA_COND() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 516usize, + concat!("Size of: ", stringify!(NET_DVR_FD_DATA_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_FD_DATA_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FD_DATA_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szFDID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FD_DATA_COND), + "::", + stringify!(szFDID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szCheckCode) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FD_DATA_COND), + "::", + stringify!(szCheckCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCover) as usize - ptr as usize }, + 388usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FD_DATA_COND), + "::", + stringify!(byCover) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szLoginPassword) as usize - ptr as usize }, + 389usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FD_DATA_COND), + "::", + stringify!(szLoginPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 405usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FD_DATA_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_FD_DATA_COND = *mut NET_DVR_FD_DATA_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_UPLOAD_FACE_DATA { + pub dwSize: DWORD, + pub szFDID: [::std::os::raw::c_char; 256usize], + pub byFDLibType: BYTE, + pub byRes1: [BYTE; 3usize], + pub szCustomInfo: [::std::os::raw::c_char; 96usize], + pub byRes: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_UPLOAD_FACE_DATA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 872usize, + concat!("Size of: ", stringify!(NET_DVR_UPLOAD_FACE_DATA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_UPLOAD_FACE_DATA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_UPLOAD_FACE_DATA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szFDID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_UPLOAD_FACE_DATA), + "::", + stringify!(szFDID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFDLibType) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_UPLOAD_FACE_DATA), + "::", + stringify!(byFDLibType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 261usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_UPLOAD_FACE_DATA), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szCustomInfo) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_UPLOAD_FACE_DATA), + "::", + stringify!(szCustomInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 360usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_UPLOAD_FACE_DATA), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_UPLOAD_FACE_DATA = *mut NET_DVR_UPLOAD_FACE_DATA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_UPLOAD_FACE_DATA_OUT { + pub szPicID: [::std::os::raw::c_char; 256usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_UPLOAD_FACE_DATA_OUT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 384usize, + concat!("Size of: ", stringify!(NET_DVR_UPLOAD_FACE_DATA_OUT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_UPLOAD_FACE_DATA_OUT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szPicID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_UPLOAD_FACE_DATA_OUT), + "::", + stringify!(szPicID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_UPLOAD_FACE_DATA_OUT), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_UPLOAD_FACE_DATA_OUT = *mut NET_DVR_UPLOAD_FACE_DATA_OUT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_UPLOAD_FACE_ANALYSIS_DATA_OUT { + pub dwSize: DWORD, + pub dwPID: DWORD, + pub dwFaceAnalysisNum: DWORD, + pub struVcaRect: [NET_VCA_RECT; 32usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_UPLOAD_FACE_ANALYSIS_DATA_OUT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 652usize, + concat!( + "Size of: ", + stringify!(NET_DVR_UPLOAD_FACE_ANALYSIS_DATA_OUT) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(NET_DVR_UPLOAD_FACE_ANALYSIS_DATA_OUT) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_UPLOAD_FACE_ANALYSIS_DATA_OUT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_UPLOAD_FACE_ANALYSIS_DATA_OUT), + "::", + stringify!(dwPID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFaceAnalysisNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_UPLOAD_FACE_ANALYSIS_DATA_OUT), + "::", + stringify!(dwFaceAnalysisNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaRect) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_UPLOAD_FACE_ANALYSIS_DATA_OUT), + "::", + stringify!(struVcaRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 524usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_UPLOAD_FACE_ANALYSIS_DATA_OUT), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_UPLOAD_FACE_ANALYSIS_DATA_OUT = *mut NET_DVR_UPLOAD_FACE_ANALYSIS_DATA_OUT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_SECURITY_CFG_FILE_COND { + pub dwSize: DWORD, + pub szSecretKey: [::std::os::raw::c_char; 128usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_SECURITY_CFG_FILE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(NET_DVR_SECURITY_CFG_FILE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_SECURITY_CFG_FILE_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SECURITY_CFG_FILE_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szSecretKey) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SECURITY_CFG_FILE_COND), + "::", + stringify!(szSecretKey) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SECURITY_CFG_FILE_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_SECURITY_CFG_FILE_COND = *mut NET_DVR_SECURITY_CFG_FILE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DOWNLOAD_CLUSTER_MAINTENANCE_LOG_PARAM_ { + pub dwSize: DWORD, + pub byType: BYTE, + pub byRes: [BYTE; 255usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DOWNLOAD_CLUSTER_MAINTENANCE_LOG_PARAM_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_DOWNLOAD_CLUSTER_MAINTENANCE_LOG_PARAM_) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_DOWNLOAD_CLUSTER_MAINTENANCE_LOG_PARAM_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOWNLOAD_CLUSTER_MAINTENANCE_LOG_PARAM_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOWNLOAD_CLUSTER_MAINTENANCE_LOG_PARAM_), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOWNLOAD_CLUSTER_MAINTENANCE_LOG_PARAM_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DOWNLOAD_CLUSTER_MAINTENANCE_LOG_PARAM = + tagNET_DVR_DOWNLOAD_CLUSTER_MAINTENANCE_LOG_PARAM_; +pub type LPNET_DVR_DOWNLOAD_CLUSTER_MAINTENANCE_LOG_PARAM = + *mut tagNET_DVR_DOWNLOAD_CLUSTER_MAINTENANCE_LOG_PARAM_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BONJOUR_CFG { + pub dwSize: DWORD, + pub byEnableBonjour: BYTE, + pub byRes1: [BYTE; 3usize], + pub byFriendlyName: [BYTE; 64usize], + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BONJOUR_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 200usize, + concat!("Size of: ", stringify!(tagNET_DVR_BONJOUR_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BONJOUR_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BONJOUR_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableBonjour) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BONJOUR_CFG), + "::", + stringify!(byEnableBonjour) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BONJOUR_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFriendlyName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BONJOUR_CFG), + "::", + stringify!(byFriendlyName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BONJOUR_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_BONJOUR_CFG = tagNET_DVR_BONJOUR_CFG; +pub type LPNET_DVR_BONJOUR_CFG = *mut tagNET_DVR_BONJOUR_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SOCKS_CFG { + pub dwSize: DWORD, + pub byEnableSocks: BYTE, + pub byVersion: BYTE, + pub wProxyPort: WORD, + pub byProxyaddr: [BYTE; 64usize], + pub byUserName: [BYTE; 64usize], + pub byPassword: [BYTE; 32usize], + pub byLocalAddr: [BYTE; 96usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SOCKS_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 392usize, + concat!("Size of: ", stringify!(tagNET_DVR_SOCKS_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SOCKS_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SOCKS_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableSocks) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SOCKS_CFG), + "::", + stringify!(byEnableSocks) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVersion) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SOCKS_CFG), + "::", + stringify!(byVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wProxyPort) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SOCKS_CFG), + "::", + stringify!(wProxyPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProxyaddr) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SOCKS_CFG), + "::", + stringify!(byProxyaddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUserName) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SOCKS_CFG), + "::", + stringify!(byUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPassword) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SOCKS_CFG), + "::", + stringify!(byPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalAddr) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SOCKS_CFG), + "::", + stringify!(byLocalAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SOCKS_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SOCKS_CFG = tagNET_DVR_SOCKS_CFG; +pub type LPNET_DVR_SOCKS_CFG = *mut tagNET_DVR_SOCKS_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_QOS_CFG { + pub dwSize: DWORD, + pub byManageDscp: BYTE, + pub byAlarmDscp: BYTE, + pub byVideoDscp: BYTE, + pub byAudioDscp: BYTE, + pub byFlag: BYTE, + pub byEnable: BYTE, + pub byRes: [BYTE; 126usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_QOS_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_QOS_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_QOS_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QOS_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byManageDscp) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QOS_CFG), + "::", + stringify!(byManageDscp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmDscp) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QOS_CFG), + "::", + stringify!(byAlarmDscp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoDscp) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QOS_CFG), + "::", + stringify!(byVideoDscp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioDscp) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QOS_CFG), + "::", + stringify!(byAudioDscp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlag) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QOS_CFG), + "::", + stringify!(byFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QOS_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QOS_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_QOS_CFG = tagNET_DVR_QOS_CFG; +pub type LPNET_DVR_QOS_CFG = *mut tagNET_DVR_QOS_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HTTPS_CFG { + pub dwSize: DWORD, + pub wHttpsPort: WORD, + pub byEnable: BYTE, + pub byRes: [BYTE; 125usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HTTPS_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_HTTPS_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HTTPS_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HTTPS_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHttpsPort) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HTTPS_CFG), + "::", + stringify!(wHttpsPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HTTPS_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HTTPS_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_HTTPS_CFG = tagNET_DVR_HTTPS_CFG; +pub type LPNET_DVR_HTTPS_CFG = *mut tagNET_DVR_HTTPS_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CERT_NAME { + pub byCountry: [BYTE; 4usize], + pub byState: [BYTE; 64usize], + pub byLocality: [BYTE; 64usize], + pub byOrganization: [BYTE; 64usize], + pub byUnit: [BYTE; 64usize], + pub byCommonName: [BYTE; 64usize], + pub byEmail: [BYTE; 64usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CERT_NAME() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 516usize, + concat!("Size of: ", stringify!(tagNET_DVR_CERT_NAME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CERT_NAME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCountry) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_NAME), + "::", + stringify!(byCountry) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byState) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_NAME), + "::", + stringify!(byState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocality) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_NAME), + "::", + stringify!(byLocality) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOrganization) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_NAME), + "::", + stringify!(byOrganization) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUnit) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_NAME), + "::", + stringify!(byUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCommonName) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_NAME), + "::", + stringify!(byCommonName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEmail) as usize - ptr as usize }, + 324usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_NAME), + "::", + stringify!(byEmail) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 388usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_NAME), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CERT_NAME = tagNET_DVR_CERT_NAME; +pub type LPNET_DVR_CERT_NAME = *mut tagNET_DVR_CERT_NAME; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CERT_ADDITION_PARAM { + pub dwSize: DWORD, + pub csCustomID: [::std::os::raw::c_char; 64usize], + pub byRes1: [BYTE; 2usize], + pub byCertificateMode: BYTE, + pub byPrivateKeyMode: BYTE, + pub byPassword: [BYTE; 64usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CERT_ADDITION_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_DVR_CERT_ADDITION_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CERT_ADDITION_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_ADDITION_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).csCustomID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_ADDITION_PARAM), + "::", + stringify!(csCustomID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_ADDITION_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCertificateMode) as usize - ptr as usize }, + 70usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_ADDITION_PARAM), + "::", + stringify!(byCertificateMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPrivateKeyMode) as usize - ptr as usize }, + 71usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_ADDITION_PARAM), + "::", + stringify!(byPrivateKeyMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPassword) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_ADDITION_PARAM), + "::", + stringify!(byPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_ADDITION_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CERT_ADDITION_PARAM = tagNET_DVR_CERT_ADDITION_PARAM; +pub type LPNET_DVR_CERT_ADDITION_PARAM = *mut tagNET_DVR_CERT_ADDITION_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CERT_PARAM { + pub dwSize: DWORD, + pub wCertFunc: WORD, + pub wCertType: WORD, + pub byFileType: BYTE, + pub byRes1: [BYTE; 2usize], + pub byAddition: BYTE, + pub pStruAdditionParam: *mut NET_DVR_CERT_ADDITION_PARAM, + pub byRes: [BYTE; 28usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CERT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_CERT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CERT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCertFunc) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_PARAM), + "::", + stringify!(wCertFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCertType) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_PARAM), + "::", + stringify!(wCertType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_PARAM), + "::", + stringify!(byFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddition) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_PARAM), + "::", + stringify!(byAddition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pStruAdditionParam) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_PARAM), + "::", + stringify!(pStruAdditionParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CERT_PARAM = tagNET_DVR_CERT_PARAM; +pub type LPNET_DVR_CERT_PARAM = *mut tagNET_DVR_CERT_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CERT_INFO { + pub dwSize: DWORD, + pub struCertParam: NET_DVR_CERT_PARAM, + pub dwValidDays: DWORD, + pub byPasswd: [BYTE; 32usize], + pub struCertName: NET_DVR_CERT_NAME, + pub struIssuerName: NET_DVR_CERT_NAME, + pub struBeginTime: NET_DVR_TIME_EX, + pub struEndTime: NET_DVR_TIME_EX, + pub serialNumber: [BYTE; 32usize], + pub byVersion: BYTE, + pub byKeyAlgorithm: BYTE, + pub byKeyLen: BYTE, + pub bySignatureAlgorithm: BYTE, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CERT_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1312usize, + concat!("Size of: ", stringify!(tagNET_DVR_CERT_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CERT_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCertParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_INFO), + "::", + stringify!(struCertParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwValidDays) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_INFO), + "::", + stringify!(dwValidDays) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPasswd) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_INFO), + "::", + stringify!(byPasswd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCertName) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_INFO), + "::", + stringify!(struCertName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIssuerName) as usize - ptr as usize }, + 616usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_INFO), + "::", + stringify!(struIssuerName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBeginTime) as usize - ptr as usize }, + 1132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_INFO), + "::", + stringify!(struBeginTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 1140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_INFO), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).serialNumber) as usize - ptr as usize }, + 1148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_INFO), + "::", + stringify!(serialNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVersion) as usize - ptr as usize }, + 1180usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_INFO), + "::", + stringify!(byVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byKeyAlgorithm) as usize - ptr as usize }, + 1181usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_INFO), + "::", + stringify!(byKeyAlgorithm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byKeyLen) as usize - ptr as usize }, + 1182usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_INFO), + "::", + stringify!(byKeyLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySignatureAlgorithm) as usize - ptr as usize }, + 1183usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_INFO), + "::", + stringify!(bySignatureAlgorithm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CERT_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CERT_INFO = tagNET_DVR_CERT_INFO; +pub type LPNET_DVR_CERT_INFO = *mut tagNET_DVR_CERT_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CHANS_RECORD_STATUS { + pub byValid: BYTE, + pub byRecord: BYTE, + pub wChannelNO: WORD, + pub dwRelatedHD: DWORD, + pub byOffLineRecord: BYTE, + pub byRes: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CHANS_RECORD_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_CHANS_RECORD_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CHANS_RECORD_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANS_RECORD_STATUS), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecord) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANS_RECORD_STATUS), + "::", + stringify!(byRecord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wChannelNO) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANS_RECORD_STATUS), + "::", + stringify!(wChannelNO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelatedHD) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANS_RECORD_STATUS), + "::", + stringify!(dwRelatedHD) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOffLineRecord) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANS_RECORD_STATUS), + "::", + stringify!(byOffLineRecord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANS_RECORD_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CHANS_RECORD_STATUS = tagNET_DVR_CHANS_RECORD_STATUS; +pub type LPNET_DVR_CHANS_RECORD_STATUS = *mut tagNET_DVR_CHANS_RECORD_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IP_ALARM_GROUP_NUM { + pub dwSize: DWORD, + pub dwIPAlarmInGroup: DWORD, + pub dwIPAlarmInNum: DWORD, + pub dwIPAlarmOutGroup: DWORD, + pub dwIPAlarmOutNum: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IP_ALARM_GROUP_NUM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 84usize, + concat!("Size of: ", stringify!(tagNET_DVR_IP_ALARM_GROUP_NUM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IP_ALARM_GROUP_NUM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_ALARM_GROUP_NUM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIPAlarmInGroup) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_ALARM_GROUP_NUM), + "::", + stringify!(dwIPAlarmInGroup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIPAlarmInNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_ALARM_GROUP_NUM), + "::", + stringify!(dwIPAlarmInNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIPAlarmOutGroup) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_ALARM_GROUP_NUM), + "::", + stringify!(dwIPAlarmOutGroup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIPAlarmOutNum) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_ALARM_GROUP_NUM), + "::", + stringify!(dwIPAlarmOutNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IP_ALARM_GROUP_NUM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_IP_ALARM_GROUP_NUM = tagNET_DVR_IP_ALARM_GROUP_NUM; +pub type LPNET_DVR_IP_ALARM_GROUP_NUM = *mut tagNET_DVR_IP_ALARM_GROUP_NUM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CHAN_GROUP_RECORD_STATUS { + pub dwSize: DWORD, + pub struChanStatus: [NET_DVR_CHANS_RECORD_STATUS; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CHAN_GROUP_RECORD_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1028usize, + concat!("Size of: ", stringify!(tagNET_DVR_CHAN_GROUP_RECORD_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_CHAN_GROUP_RECORD_STATUS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_GROUP_RECORD_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struChanStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_GROUP_RECORD_STATUS), + "::", + stringify!(struChanStatus) + ) + ); +} +pub type NET_DVR_CHAN_GROUP_RECORD_STATUS = tagNET_DVR_CHAN_GROUP_RECORD_STATUS; +pub type LPNET_DVR_CHAN_GROUP_RECORD_STATUS = *mut tagNET_DVR_CHAN_GROUP_RECORD_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECTCFG { + pub wXCoordinate: WORD, + pub wYCoordinate: WORD, + pub wWidth: WORD, + pub wHeight: WORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECTCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_RECTCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RECTCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wXCoordinate) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECTCFG), + "::", + stringify!(wXCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wYCoordinate) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECTCFG), + "::", + stringify!(wYCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wWidth) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECTCFG), + "::", + stringify!(wWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHeight) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECTCFG), + "::", + stringify!(wHeight) + ) + ); +} +pub type NET_DVR_RECTCFG = tagNET_DVR_RECTCFG; +pub type LPNET_DVR_RECTCFG = *mut tagNET_DVR_RECTCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WINCFG { + pub dwSize: DWORD, + pub byVaild: BYTE, + pub byInputIdx: BYTE, + pub byLayerIdx: BYTE, + pub byTransparency: BYTE, + pub struWin: NET_DVR_RECTCFG, + pub wScreenHeight: WORD, + pub wScreenWidth: WORD, + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WINCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_WINCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WINCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WINCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVaild) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WINCFG), + "::", + stringify!(byVaild) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInputIdx) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WINCFG), + "::", + stringify!(byInputIdx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLayerIdx) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WINCFG), + "::", + stringify!(byLayerIdx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransparency) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WINCFG), + "::", + stringify!(byTransparency) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWin) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WINCFG), + "::", + stringify!(struWin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wScreenHeight) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WINCFG), + "::", + stringify!(wScreenHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wScreenWidth) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WINCFG), + "::", + stringify!(wScreenWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WINCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WINCFG = tagNET_DVR_WINCFG; +pub type LPNET_DVR_WINCFG = *mut tagNET_DVR_WINCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALLWINCFG { + pub dwSize: DWORD, + pub struWinCfg: [NET_DVR_WINCFG; 32usize], + pub byRes2: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALLWINCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1308usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALLWINCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALLWINCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALLWINCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWinCfg) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALLWINCFG), + "::", + stringify!(struWinCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1284usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALLWINCFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ALLWINCFG = tagNET_DVR_ALLWINCFG; +pub type LPNET_DVR_ALLWINCFG = *mut tagNET_DVR_ALLWINCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCREENZOOM { + pub dwSize: DWORD, + pub dwScreenNum: DWORD, + pub struPointFrame: NET_DVR_POINT_FRAME, + pub byLayer: BYTE, + pub byRes: [BYTE; 11usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREENZOOM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREENZOOM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREENZOOM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENZOOM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwScreenNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENZOOM), + "::", + stringify!(dwScreenNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPointFrame) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENZOOM), + "::", + stringify!(struPointFrame) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLayer) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENZOOM), + "::", + stringify!(byLayer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 29usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENZOOM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCREENZOOM = tagNET_DVR_SCREENZOOM; +pub type LPNET_DVR_SCREENZOOM = *mut tagNET_DVR_SCREENZOOM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_MATRIX_CAMERAINFO { + pub dwGlobalCamId: DWORD, + pub sCamName: [BYTE; 32usize], + pub dwMatrixId: DWORD, + pub dwLocCamId: DWORD, + pub byValid: BYTE, + pub byPtzCtrl: BYTE, + pub byUseType: BYTE, + pub byUsedByTrunk: BYTE, + pub byTrunkReq: BYTE, + pub byRes1: [BYTE; 3usize], + pub struInstallTime: NET_DVR_TIME, + pub sPurpose: [BYTE; 32usize], + pub byRes2: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_MATRIX_CAMERAINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_MATRIX_CAMERAINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_MATRIX_CAMERAINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGlobalCamId) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_CAMERAINFO), + "::", + stringify!(dwGlobalCamId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCamName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_CAMERAINFO), + "::", + stringify!(sCamName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMatrixId) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_CAMERAINFO), + "::", + stringify!(dwMatrixId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocCamId) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_CAMERAINFO), + "::", + stringify!(dwLocCamId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_CAMERAINFO), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPtzCtrl) as usize - ptr as usize }, + 45usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_CAMERAINFO), + "::", + stringify!(byPtzCtrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseType) as usize - ptr as usize }, + 46usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_CAMERAINFO), + "::", + stringify!(byUseType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUsedByTrunk) as usize - ptr as usize }, + 47usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_CAMERAINFO), + "::", + stringify!(byUsedByTrunk) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrunkReq) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_CAMERAINFO), + "::", + stringify!(byTrunkReq) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 49usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_CAMERAINFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInstallTime) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_CAMERAINFO), + "::", + stringify!(struInstallTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPurpose) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_CAMERAINFO), + "::", + stringify!(sPurpose) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_CAMERAINFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_MATRIX_CAMERAINFO = tagNET_MATRIX_CAMERAINFO; +pub type LPNET_MATRIX_CAMERAINFO = *mut tagNET_MATRIX_CAMERAINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_MATRIX_MONITORINFO { + pub dwGloalMonId: DWORD, + pub sMonName: [BYTE; 32usize], + pub dwMatrixId: DWORD, + pub dwLocalMonId: DWORD, + pub byValid: BYTE, + pub byTrunkType: BYTE, + pub byUsedByTrunk: BYTE, + pub byTrunkReq: BYTE, + pub struInstallTime: NET_DVR_TIME, + pub sPurpose: [BYTE; 32usize], + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_MATRIX_MONITORINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 124usize, + concat!("Size of: ", stringify!(tagNET_MATRIX_MONITORINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_MATRIX_MONITORINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGloalMonId) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_MONITORINFO), + "::", + stringify!(dwGloalMonId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sMonName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_MONITORINFO), + "::", + stringify!(sMonName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMatrixId) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_MONITORINFO), + "::", + stringify!(dwMatrixId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalMonId) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_MONITORINFO), + "::", + stringify!(dwLocalMonId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_MONITORINFO), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrunkType) as usize - ptr as usize }, + 45usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_MONITORINFO), + "::", + stringify!(byTrunkType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUsedByTrunk) as usize - ptr as usize }, + 46usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_MONITORINFO), + "::", + stringify!(byUsedByTrunk) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrunkReq) as usize - ptr as usize }, + 47usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_MONITORINFO), + "::", + stringify!(byTrunkReq) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInstallTime) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_MONITORINFO), + "::", + stringify!(struInstallTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPurpose) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_MONITORINFO), + "::", + stringify!(sPurpose) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_MONITORINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_MATRIX_MONITORINFO = tagNET_MATRIX_MONITORINFO; +pub type LPNET_MATRIX_MONITORINFO = *mut tagNET_MATRIX_MONITORINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_MATRIX_DIGITALMATRIX { + pub struAddress: NET_DVR_IPADDR, + pub wPort: WORD, + pub byNicNum: BYTE, + pub byRes: [BYTE; 69usize], +} +#[test] +fn bindgen_test_layout_tagNET_MATRIX_DIGITALMATRIX() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 216usize, + concat!("Size of: ", stringify!(tagNET_MATRIX_DIGITALMATRIX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_MATRIX_DIGITALMATRIX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAddress) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_DIGITALMATRIX), + "::", + stringify!(struAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_DIGITALMATRIX), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNicNum) as usize - ptr as usize }, + 146usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_DIGITALMATRIX), + "::", + stringify!(byNicNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 147usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_DIGITALMATRIX), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_MATRIX_DIGITALMATRIX = tagNET_MATRIX_DIGITALMATRIX; +pub type LPNET_MATRIX_DIGITALMATRIX = *mut tagNET_MATRIX_DIGITALMATRIX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_MATRIX_ANALOGMATRIX { + pub bySerPortNum: BYTE, + pub byMatrixSerPortType: BYTE, + pub byRes1: [BYTE; 2usize], + pub struRS232: NET_DVR_SINGLE_RS232, + pub byRes2: [BYTE; 200usize], +} +#[test] +fn bindgen_test_layout_tagNET_MATRIX_ANALOGMATRIX() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 216usize, + concat!("Size of: ", stringify!(tagNET_MATRIX_ANALOGMATRIX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_MATRIX_ANALOGMATRIX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySerPortNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_ANALOGMATRIX), + "::", + stringify!(bySerPortNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMatrixSerPortType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_ANALOGMATRIX), + "::", + stringify!(byMatrixSerPortType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_ANALOGMATRIX), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRS232) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_ANALOGMATRIX), + "::", + stringify!(struRS232) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_ANALOGMATRIX), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_MATRIX_ANALOGMATRIX = tagNET_MATRIX_ANALOGMATRIX; +pub type LPNET_MATRIX_ANALOGMATRIX = *mut tagNET_MATRIX_ANALOGMATRIX; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_MATRIX_UNION { + pub struDigitalMatrix: NET_MATRIX_DIGITALMATRIX, + pub struAnalogMatrix: NET_MATRIX_ANALOGMATRIX, +} +#[test] +fn bindgen_test_layout_tagNET_MATRIX_UNION() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 216usize, + concat!("Size of: ", stringify!(tagNET_MATRIX_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_MATRIX_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDigitalMatrix) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_UNION), + "::", + stringify!(struDigitalMatrix) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAnalogMatrix) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_UNION), + "::", + stringify!(struAnalogMatrix) + ) + ); +} +pub type NET_MATRIX_UNION = tagNET_MATRIX_UNION; +pub type LPNET_MATRIX_UNION = *mut tagNET_MATRIX_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_MATRIX_MATRIXINFO { + pub dwSize: DWORD, + pub dwMatrixId: DWORD, + pub sDevName: [BYTE; 32usize], + pub byCtrlType: BYTE, + pub byProtocolType: BYTE, + pub byRes1: [BYTE; 6usize], + pub struMatrixUnion: NET_MATRIX_UNION, + pub dwMaxPortsIn: DWORD, + pub dwMaxPortsOut: DWORD, + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub struInstallTime: NET_DVR_TIME, + pub sPurpose: [BYTE; 32usize], + pub byRes2: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_MATRIX_MATRIXINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 396usize, + concat!("Size of: ", stringify!(tagNET_MATRIX_MATRIXINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_MATRIX_MATRIXINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_MATRIXINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMatrixId) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_MATRIXINFO), + "::", + stringify!(dwMatrixId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDevName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_MATRIXINFO), + "::", + stringify!(sDevName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCtrlType) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_MATRIXINFO), + "::", + stringify!(byCtrlType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProtocolType) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_MATRIXINFO), + "::", + stringify!(byProtocolType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_MATRIXINFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMatrixUnion) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_MATRIXINFO), + "::", + stringify!(struMatrixUnion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxPortsIn) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_MATRIXINFO), + "::", + stringify!(dwMaxPortsIn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxPortsOut) as usize - ptr as usize }, + 268usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_MATRIXINFO), + "::", + stringify!(dwMaxPortsOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_MATRIXINFO), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_MATRIXINFO), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInstallTime) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_MATRIXINFO), + "::", + stringify!(struInstallTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPurpose) as usize - ptr as usize }, + 344usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_MATRIXINFO), + "::", + stringify!(sPurpose) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 376usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_MATRIXINFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_MATRIX_MATRIXINFO = tagNET_MATRIX_MATRIXINFO; +pub type LPNET_MATRIX_MATRIXINFO = *mut tagNET_MATRIX_MATRIXINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIXLIST { + pub dwSize: DWORD, + pub byRes: [BYTE; 12usize], + pub dwMatrixNum: DWORD, + pub pBuffer: *mut BYTE, + pub dwBufLen: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIXLIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIXLIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIXLIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXLIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXLIST), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMatrixNum) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXLIST), + "::", + stringify!(dwMatrixNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXLIST), + "::", + stringify!(pBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBufLen) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXLIST), + "::", + stringify!(dwBufLen) + ) + ); +} +pub type NET_DVR_MATRIXLIST = tagNET_DVR_MATRIXLIST; +pub type LPNET_DVR_MATRIXLIST = *mut tagNET_DVR_MATRIXLIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_MATRIX_UARTPARAM { + pub dwSize: DWORD, + pub byPortName: [BYTE; 32usize], + pub wUserId: WORD, + pub byPortType: BYTE, + pub byFuncType: BYTE, + pub byProtocolType: BYTE, + pub byBaudRate: BYTE, + pub byDataBits: BYTE, + pub byStopBits: BYTE, + pub byParity: BYTE, + pub byFlowCtrl: BYTE, + pub byRes: [BYTE; 22usize], +} +#[test] +fn bindgen_test_layout_tagNET_MATRIX_UARTPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_MATRIX_UARTPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_MATRIX_UARTPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_UARTPARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPortName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_UARTPARAM), + "::", + stringify!(byPortName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wUserId) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_UARTPARAM), + "::", + stringify!(wUserId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPortType) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_UARTPARAM), + "::", + stringify!(byPortType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFuncType) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_UARTPARAM), + "::", + stringify!(byFuncType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProtocolType) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_UARTPARAM), + "::", + stringify!(byProtocolType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBaudRate) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_UARTPARAM), + "::", + stringify!(byBaudRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataBits) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_UARTPARAM), + "::", + stringify!(byDataBits) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStopBits) as usize - ptr as usize }, + 43usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_UARTPARAM), + "::", + stringify!(byStopBits) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParity) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_UARTPARAM), + "::", + stringify!(byParity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlowCtrl) as usize - ptr as usize }, + 45usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_UARTPARAM), + "::", + stringify!(byFlowCtrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 46usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_UARTPARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_MATRIX_UARTPARAM = tagNET_MATRIX_UARTPARAM; +pub type LPNET_MATRIX_UARTPARAM = *mut tagNET_MATRIX_UARTPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_MATRIX_USERPARAM { + pub dwSize: DWORD, + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub byRole: BYTE, + pub byLevel: BYTE, + pub byRes: [BYTE; 18usize], +} +#[test] +fn bindgen_test_layout_tagNET_MATRIX_USERPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_MATRIX_USERPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_MATRIX_USERPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_USERPARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_USERPARAM), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_USERPARAM), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRole) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_USERPARAM), + "::", + stringify!(byRole) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLevel) as usize - ptr as usize }, + 53usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_USERPARAM), + "::", + stringify!(byLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 54usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_USERPARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_MATRIX_USERPARAM = tagNET_MATRIX_USERPARAM; +pub type LPNET_MATRIX_USERPARAM = *mut tagNET_MATRIX_USERPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_MATRIX_RESOURSEGROUPPARAM { + pub dwSize: DWORD, + pub byGroupName: [BYTE; 32usize], + pub byGroupType: BYTE, + pub byRes1: BYTE, + pub wMemNum: WORD, + pub dwGlobalId: [DWORD; 512usize], + pub byRes2: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_MATRIX_RESOURSEGROUPPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2108usize, + concat!("Size of: ", stringify!(tagNET_MATRIX_RESOURSEGROUPPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_MATRIX_RESOURSEGROUPPARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_RESOURSEGROUPPARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGroupName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_RESOURSEGROUPPARAM), + "::", + stringify!(byGroupName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGroupType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_RESOURSEGROUPPARAM), + "::", + stringify!(byGroupType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_RESOURSEGROUPPARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMemNum) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_RESOURSEGROUPPARAM), + "::", + stringify!(wMemNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGlobalId) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_RESOURSEGROUPPARAM), + "::", + stringify!(dwGlobalId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 2088usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_RESOURSEGROUPPARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_MATRIX_RESOURCEGROUPPARAM = tagNET_MATRIX_RESOURSEGROUPPARAM; +pub type LPNET_MATRIX_RESOURSEGROUPPARAM = *mut tagNET_MATRIX_RESOURSEGROUPPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_MATRIX_USERGROUPPARAM { + pub dwSize: DWORD, + pub sGroupName: [BYTE; 32usize], + pub wUserMember: [WORD; 255usize], + pub wResorceGroupMember: [WORD; 255usize], + pub byPermission: [BYTE; 32usize], + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_MATRIX_USERGROUPPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1108usize, + concat!("Size of: ", stringify!(tagNET_MATRIX_USERGROUPPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_MATRIX_USERGROUPPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_USERGROUPPARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sGroupName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_USERGROUPPARAM), + "::", + stringify!(sGroupName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wUserMember) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_USERGROUPPARAM), + "::", + stringify!(wUserMember) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wResorceGroupMember) as usize - ptr as usize }, + 546usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_USERGROUPPARAM), + "::", + stringify!(wResorceGroupMember) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPermission) as usize - ptr as usize }, + 1056usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_USERGROUPPARAM), + "::", + stringify!(byPermission) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1088usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_USERGROUPPARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_MATRIX_USERGROUPPARAM = tagNET_MATRIX_USERGROUPPARAM; +pub type LPNET_MATRIX_USERGROUPPARAM = *mut tagNET_MATRIX_USERGROUPPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_MATRIX_TRUNKPARAM { + pub dwSize: DWORD, + pub dwTrunkId: DWORD, + pub sTrunkName: [BYTE; 32usize], + pub dwSrcMonId: DWORD, + pub dwDstCamId: DWORD, + pub byTrunkType: BYTE, + pub byAbility: BYTE, + pub bySubChan: BYTE, + pub byLevel: BYTE, + pub wReserveUserID: WORD, + pub byRes: [BYTE; 18usize], +} +#[test] +fn bindgen_test_layout_tagNET_MATRIX_TRUNKPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_MATRIX_TRUNKPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_MATRIX_TRUNKPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_TRUNKPARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTrunkId) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_TRUNKPARAM), + "::", + stringify!(dwTrunkId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sTrunkName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_TRUNKPARAM), + "::", + stringify!(sTrunkName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSrcMonId) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_TRUNKPARAM), + "::", + stringify!(dwSrcMonId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDstCamId) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_TRUNKPARAM), + "::", + stringify!(dwDstCamId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrunkType) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_TRUNKPARAM), + "::", + stringify!(byTrunkType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAbility) as usize - ptr as usize }, + 49usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_TRUNKPARAM), + "::", + stringify!(byAbility) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubChan) as usize - ptr as usize }, + 50usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_TRUNKPARAM), + "::", + stringify!(bySubChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLevel) as usize - ptr as usize }, + 51usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_TRUNKPARAM), + "::", + stringify!(byLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wReserveUserID) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_TRUNKPARAM), + "::", + stringify!(wReserveUserID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 54usize, + concat!( + "Offset of field: ", + stringify!(tagNET_MATRIX_TRUNKPARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_MATRIX_TRUNKPARAM = tagNET_MATRIX_TRUNKPARAM; +pub type LPNET_MATRIX_TRUNKPARAM = *mut tagNET_MATRIX_TRUNKPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIX_TRUNKLIST { + pub dwSize: DWORD, + pub byRes: [BYTE; 12usize], + pub dwTrunkNum: DWORD, + pub pBuffer: *mut BYTE, + pub dwBufLen: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_TRUNKLIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIX_TRUNKLIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIX_TRUNKLIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRUNKLIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRUNKLIST), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTrunkNum) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRUNKLIST), + "::", + stringify!(dwTrunkNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRUNKLIST), + "::", + stringify!(pBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBufLen) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRUNKLIST), + "::", + stringify!(dwBufLen) + ) + ); +} +pub type NET_DVR_MATRIX_TRUNKLIST = tagNET_DVR_MATRIX_TRUNKLIST; +pub type LPNET_DVR_MATRIX_TRUNKLIST = *mut tagNET_DVR_MATRIX_TRUNKLIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PROTO_TYPE_EX { + pub wType: WORD, + pub wCommunitionType: WORD, + pub byDescribe: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PROTO_TYPE_EX() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_PROTO_TYPE_EX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PROTO_TYPE_EX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PROTO_TYPE_EX), + "::", + stringify!(wType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCommunitionType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PROTO_TYPE_EX), + "::", + stringify!(wCommunitionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDescribe) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PROTO_TYPE_EX), + "::", + stringify!(byDescribe) + ) + ); +} +pub type NET_DVR_PROTO_TYPE_EX = tagNET_DVR_PROTO_TYPE_EX; +pub type LPNET_DVR_PROTO_TYPE_EX = tagNET_DVR_PROTO_TYPE_EX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIXMANAGE_ABIILITY { + pub dwSize: DWORD, + pub dwMaxCameraNum: DWORD, + pub dwMaxMonitorNum: DWORD, + pub wMaxMatrixNum: WORD, + pub wMaxSerialNum: WORD, + pub wMaxUser: WORD, + pub wMaxResourceArrayNum: WORD, + pub wMaxUserArrayNum: WORD, + pub wMaxTrunkNum: WORD, + pub nStartUserNum: BYTE, + pub nStartUserGroupNum: BYTE, + pub nStartResourceGroupNum: BYTE, + pub nStartSerialNum: BYTE, + pub dwMatrixProtoNum: DWORD, + pub struMatrixProto: [NET_DVR_PROTO_TYPE_EX; 20usize], + pub dwKeyBoardProtoNum: DWORD, + pub struKeyBoardProto: [NET_DVR_PROTO_TYPE_EX; 20usize], + pub byDelMonitorLongCfg: BYTE, + pub byDelCamonitorLongCfg: BYTE, + pub byAudioSwitchContorl: BYTE, + pub byRes: [BYTE; 29usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIXMANAGE_ABIILITY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 868usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIXMANAGE_ABIILITY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MATRIXMANAGE_ABIILITY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXMANAGE_ABIILITY), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxCameraNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXMANAGE_ABIILITY), + "::", + stringify!(dwMaxCameraNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxMonitorNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXMANAGE_ABIILITY), + "::", + stringify!(dwMaxMonitorNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMaxMatrixNum) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXMANAGE_ABIILITY), + "::", + stringify!(wMaxMatrixNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMaxSerialNum) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXMANAGE_ABIILITY), + "::", + stringify!(wMaxSerialNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMaxUser) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXMANAGE_ABIILITY), + "::", + stringify!(wMaxUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMaxResourceArrayNum) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXMANAGE_ABIILITY), + "::", + stringify!(wMaxResourceArrayNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMaxUserArrayNum) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXMANAGE_ABIILITY), + "::", + stringify!(wMaxUserArrayNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMaxTrunkNum) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXMANAGE_ABIILITY), + "::", + stringify!(wMaxTrunkNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nStartUserNum) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXMANAGE_ABIILITY), + "::", + stringify!(nStartUserNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nStartUserGroupNum) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXMANAGE_ABIILITY), + "::", + stringify!(nStartUserGroupNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nStartResourceGroupNum) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXMANAGE_ABIILITY), + "::", + stringify!(nStartResourceGroupNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nStartSerialNum) as usize - ptr as usize }, + 27usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXMANAGE_ABIILITY), + "::", + stringify!(nStartSerialNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMatrixProtoNum) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXMANAGE_ABIILITY), + "::", + stringify!(dwMatrixProtoNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMatrixProto) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXMANAGE_ABIILITY), + "::", + stringify!(struMatrixProto) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwKeyBoardProtoNum) as usize - ptr as usize }, + 432usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXMANAGE_ABIILITY), + "::", + stringify!(dwKeyBoardProtoNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struKeyBoardProto) as usize - ptr as usize }, + 436usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXMANAGE_ABIILITY), + "::", + stringify!(struKeyBoardProto) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDelMonitorLongCfg) as usize - ptr as usize }, + 836usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXMANAGE_ABIILITY), + "::", + stringify!(byDelMonitorLongCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDelCamonitorLongCfg) as usize - ptr as usize }, + 837usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXMANAGE_ABIILITY), + "::", + stringify!(byDelCamonitorLongCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioSwitchContorl) as usize - ptr as usize }, + 838usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXMANAGE_ABIILITY), + "::", + stringify!(byAudioSwitchContorl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 839usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIXMANAGE_ABIILITY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MATRIXMANAGE_ABILITY = tagNET_DVR_MATRIXMANAGE_ABIILITY; +pub type LPNET_DVR_MATRIXMANAGE_ABILITY = *mut tagNET_DVR_MATRIXMANAGE_ABIILITY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_SINGLE_FACESNAPCFG { + pub byActive: BYTE, + #[doc = " IPC5.1.7 �������� Begin 2014-03-21"] + pub byAutoROIEnable: BYTE, + pub byRes: [BYTE; 2usize], + #[doc = " IPC5.1.7 �������� End 2014-03-21"] + pub struSizeFilter: NET_VCA_SIZE_FILTER, + pub struVcaPolygon: NET_VCA_POLYGON, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_SINGLE_FACESNAPCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 124usize, + concat!("Size of: ", stringify!(tagNET_VCA_SINGLE_FACESNAPCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_SINGLE_FACESNAPCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byActive) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SINGLE_FACESNAPCFG), + "::", + stringify!(byActive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAutoROIEnable) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SINGLE_FACESNAPCFG), + "::", + stringify!(byAutoROIEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SINGLE_FACESNAPCFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSizeFilter) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SINGLE_FACESNAPCFG), + "::", + stringify!(struSizeFilter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaPolygon) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SINGLE_FACESNAPCFG), + "::", + stringify!(struVcaPolygon) + ) + ); +} +pub type NET_VCA_SINGLE_FACESNAPCFG = tagNET_VCA_SINGLE_FACESNAPCFG; +pub type LPNET_VCA_SINGLE_FACESNAPCFG = *mut tagNET_VCA_SINGLE_FACESNAPCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_FACESNAPCFG { + pub dwSize: DWORD, + pub bySnapTime: BYTE, + pub bySnapInterval: BYTE, + pub bySnapThreshold: BYTE, + pub byGenerateRate: BYTE, + pub bySensitive: BYTE, + pub byReferenceBright: BYTE, + pub byMatchType: BYTE, + pub byMatchThreshold: BYTE, + pub struPictureParam: NET_DVR_JPEGPARA, + pub struRule: [NET_VCA_SINGLE_FACESNAPCFG; 8usize], + pub wFaceExposureMinDuration: WORD, + pub byFaceExposureMode: BYTE, + pub byBackgroundPic: BYTE, + pub dwValidFaceTime: DWORD, + pub dwUploadInterval: DWORD, + pub dwFaceFilteringTime: DWORD, + pub bySceneID: BYTE, + pub byInvalCapFilterEnable: BYTE, + pub byInvalCapFilterThreshold: BYTE, + pub byRes2: [BYTE; 81usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_FACESNAPCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1108usize, + concat!("Size of: ", stringify!(tagNET_VCA_FACESNAPCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_FACESNAPCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAPCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnapTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAPCFG), + "::", + stringify!(bySnapTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnapInterval) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAPCFG), + "::", + stringify!(bySnapInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnapThreshold) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAPCFG), + "::", + stringify!(bySnapThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGenerateRate) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAPCFG), + "::", + stringify!(byGenerateRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitive) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAPCFG), + "::", + stringify!(bySensitive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReferenceBright) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAPCFG), + "::", + stringify!(byReferenceBright) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMatchType) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAPCFG), + "::", + stringify!(byMatchType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMatchThreshold) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAPCFG), + "::", + stringify!(byMatchThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPictureParam) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAPCFG), + "::", + stringify!(struPictureParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRule) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAPCFG), + "::", + stringify!(struRule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFaceExposureMinDuration) as usize - ptr as usize }, + 1008usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAPCFG), + "::", + stringify!(wFaceExposureMinDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaceExposureMode) as usize - ptr as usize }, + 1010usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAPCFG), + "::", + stringify!(byFaceExposureMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBackgroundPic) as usize - ptr as usize }, + 1011usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAPCFG), + "::", + stringify!(byBackgroundPic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwValidFaceTime) as usize - ptr as usize }, + 1012usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAPCFG), + "::", + stringify!(dwValidFaceTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwUploadInterval) as usize - ptr as usize }, + 1016usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAPCFG), + "::", + stringify!(dwUploadInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFaceFilteringTime) as usize - ptr as usize }, + 1020usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAPCFG), + "::", + stringify!(dwFaceFilteringTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySceneID) as usize - ptr as usize }, + 1024usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAPCFG), + "::", + stringify!(bySceneID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInvalCapFilterEnable) as usize - ptr as usize }, + 1025usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAPCFG), + "::", + stringify!(byInvalCapFilterEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInvalCapFilterThreshold) as usize - ptr as usize }, + 1026usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAPCFG), + "::", + stringify!(byInvalCapFilterThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1027usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAPCFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_VCA_FACESNAPCFG = tagNET_VCA_FACESNAPCFG; +pub type LPNET_VCA_FACESNAPCFG = *mut tagNET_VCA_FACESNAPCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FIRMWARE_VERSION_IFNO { + pub dwSize: DWORD, + pub szFirmwareVersion: [::std::os::raw::c_char; 128usize], + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FIRMWARE_VERSION_IFNO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(tagNET_DVR_FIRMWARE_VERSION_IFNO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FIRMWARE_VERSION_IFNO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIRMWARE_VERSION_IFNO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szFirmwareVersion) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIRMWARE_VERSION_IFNO), + "::", + stringify!(szFirmwareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIRMWARE_VERSION_IFNO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_FIRMWARE_VERSION_IFNO = tagNET_DVR_FIRMWARE_VERSION_IFNO; +pub type LPNET_DVR_FIRMWARE_VERSION_IFNO = *mut tagNET_DVR_FIRMWARE_VERSION_IFNO; +pub const tagHUMAN_AGE_GROUP_ENUM_ENUM_AGE_GROUP_INFANT: tagHUMAN_AGE_GROUP_ENUM = 1; +pub const tagHUMAN_AGE_GROUP_ENUM_ENUM_AGE_GROUP_CHILD: tagHUMAN_AGE_GROUP_ENUM = 2; +pub const tagHUMAN_AGE_GROUP_ENUM_ENUM_AGE_GROUP_YOUNGSTER: tagHUMAN_AGE_GROUP_ENUM = 3; +pub const tagHUMAN_AGE_GROUP_ENUM_ENUM_AGE_GROUP_ADOLESCENT: tagHUMAN_AGE_GROUP_ENUM = 4; +pub const tagHUMAN_AGE_GROUP_ENUM_ENUM_AGE_GROUP_YOUTH: tagHUMAN_AGE_GROUP_ENUM = 5; +pub const tagHUMAN_AGE_GROUP_ENUM_ENUM_AGE_GROUP_PRIME: tagHUMAN_AGE_GROUP_ENUM = 6; +pub const tagHUMAN_AGE_GROUP_ENUM_ENUM_AGE_GROUP_MIDLIFE: tagHUMAN_AGE_GROUP_ENUM = 7; +pub const tagHUMAN_AGE_GROUP_ENUM_ENUM_AGE_GROUP_MIDAGE: tagHUMAN_AGE_GROUP_ENUM = 8; +pub const tagHUMAN_AGE_GROUP_ENUM_ENUM_AGE_GROUP_OLD: tagHUMAN_AGE_GROUP_ENUM = 9; +pub const tagHUMAN_AGE_GROUP_ENUM_ENUM_AGE_GROUP_ALL: tagHUMAN_AGE_GROUP_ENUM = 254; +pub const tagHUMAN_AGE_GROUP_ENUM_ENUM_AGE_GROUP_UNKNOW: tagHUMAN_AGE_GROUP_ENUM = 255; +pub type tagHUMAN_AGE_GROUP_ENUM = ::std::os::raw::c_uint; +pub use self::tagHUMAN_AGE_GROUP_ENUM as HUMAN_AGE_GROUP_ENUM; +pub const tagFACE_EXPRESSION_GROUP_ENUM_ENUM_EXPRESSION_GROUP_SURPRISED: + tagFACE_EXPRESSION_GROUP_ENUM = 1; +pub const tagFACE_EXPRESSION_GROUP_ENUM_ENUM_EXPRESSION_GROUP_PANIC: tagFACE_EXPRESSION_GROUP_ENUM = + 2; +pub const tagFACE_EXPRESSION_GROUP_ENUM_ENUM_EXPRESSION_GROUP_DISGUUSTED: + tagFACE_EXPRESSION_GROUP_ENUM = 3; +pub const tagFACE_EXPRESSION_GROUP_ENUM_ENUM_EXPRESSION_GROUP_HAPPY: tagFACE_EXPRESSION_GROUP_ENUM = + 4; +pub const tagFACE_EXPRESSION_GROUP_ENUM_ENUM_EXPRESSION_GROUP_SAD: tagFACE_EXPRESSION_GROUP_ENUM = + 5; +pub const tagFACE_EXPRESSION_GROUP_ENUM_ENUM_EXPRESSION_GROUP_ANGRY: tagFACE_EXPRESSION_GROUP_ENUM = + 6; +pub const tagFACE_EXPRESSION_GROUP_ENUM_ENUM_EXPRESSION_GROUP_POKER: tagFACE_EXPRESSION_GROUP_ENUM = + 7; +pub const tagFACE_EXPRESSION_GROUP_ENUM_ENUM_EXPRESSION_GROUP_ALL: tagFACE_EXPRESSION_GROUP_ENUM = + 254; +pub const tagFACE_EXPRESSION_GROUP_ENUM_ENUM_EXPRESSION_GROUP_UNKNOW: + tagFACE_EXPRESSION_GROUP_ENUM = 255; +pub type tagFACE_EXPRESSION_GROUP_ENUM = ::std::os::raw::c_uint; +pub use self::tagFACE_EXPRESSION_GROUP_ENUM as FACE_EXPRESSION_GROUP_ENUM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LLI_PARAM { + pub fSec: f32, + pub byDegree: BYTE, + pub byMinute: BYTE, + pub byRes: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LLI_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_LLI_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LLI_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fSec) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LLI_PARAM), + "::", + stringify!(fSec) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDegree) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LLI_PARAM), + "::", + stringify!(byDegree) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMinute) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LLI_PARAM), + "::", + stringify!(byMinute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LLI_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LLI_PARAM = tagNET_DVR_LLI_PARAM; +pub type LPNET_DVR_LLI_PARAM = *mut tagNET_DVR_LLI_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LLPOS_PARAM { + pub byLatitudeType: BYTE, + pub byLongitudeType: BYTE, + pub byRes1: [BYTE; 2usize], + pub struLatitude: NET_DVR_LLI_PARAM, + pub struLongitude: NET_DVR_LLI_PARAM, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LLPOS_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_LLPOS_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LLPOS_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLatitudeType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LLPOS_PARAM), + "::", + stringify!(byLatitudeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLongitudeType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LLPOS_PARAM), + "::", + stringify!(byLongitudeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LLPOS_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLatitude) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LLPOS_PARAM), + "::", + stringify!(struLatitude) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLongitude) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LLPOS_PARAM), + "::", + stringify!(struLongitude) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LLPOS_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LLPOS_PARAM = tagNET_DVR_LLPOS_PARAM; +pub type LPNET_DVR_LLPOS_PARAM = *mut tagNET_DVR_LLPOS_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_FACESNAP_ADDINFO { + pub struFacePicRect: NET_VCA_RECT, + pub iSwingAngle: ::std::os::raw::c_int, + pub iTiltAngle: ::std::os::raw::c_int, + pub dwPupilDistance: DWORD, + pub byBlockingState: BYTE, + pub byFaceSnapThermometryEnabled: BYTE, + pub byIsAbnomalTemperature: BYTE, + pub byThermometryUnit: BYTE, + pub struEnterTime: NET_DVR_TIME_EX, + pub struExitTime: NET_DVR_TIME_EX, + pub fFaceTemperature: f32, + pub fAlarmTemperature: f32, + pub dwThermalPicLen: DWORD, + pub pThermalPicBuff: *mut BYTE, + pub szCustomChanID: [BYTE; 65usize], + pub byRes1: [BYTE; 3usize], + pub struLLPos: NET_DVR_LLPOS_PARAM, + pub pEventNotificationAlertBuff: *mut ::std::os::raw::c_char, + pub dwEventNotificationAlertLen: DWORD, + pub byRes: [BYTE; 340usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_FACESNAP_ADDINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 536usize, + concat!("Size of: ", stringify!(tagNET_VCA_FACESNAP_ADDINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_VCA_FACESNAP_ADDINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFacePicRect) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_ADDINFO), + "::", + stringify!(struFacePicRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iSwingAngle) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_ADDINFO), + "::", + stringify!(iSwingAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTiltAngle) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_ADDINFO), + "::", + stringify!(iTiltAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPupilDistance) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_ADDINFO), + "::", + stringify!(dwPupilDistance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBlockingState) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_ADDINFO), + "::", + stringify!(byBlockingState) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byFaceSnapThermometryEnabled) as usize - ptr as usize + }, + 29usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_ADDINFO), + "::", + stringify!(byFaceSnapThermometryEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsAbnomalTemperature) as usize - ptr as usize }, + 30usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_ADDINFO), + "::", + stringify!(byIsAbnomalTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byThermometryUnit) as usize - ptr as usize }, + 31usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_ADDINFO), + "::", + stringify!(byThermometryUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEnterTime) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_ADDINFO), + "::", + stringify!(struEnterTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struExitTime) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_ADDINFO), + "::", + stringify!(struExitTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fFaceTemperature) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_ADDINFO), + "::", + stringify!(fFaceTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fAlarmTemperature) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_ADDINFO), + "::", + stringify!(fAlarmTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwThermalPicLen) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_ADDINFO), + "::", + stringify!(dwThermalPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pThermalPicBuff) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_ADDINFO), + "::", + stringify!(pThermalPicBuff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szCustomChanID) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_ADDINFO), + "::", + stringify!(szCustomChanID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 137usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_ADDINFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLLPos) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_ADDINFO), + "::", + stringify!(struLLPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pEventNotificationAlertBuff) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_ADDINFO), + "::", + stringify!(pEventNotificationAlertBuff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEventNotificationAlertLen) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_ADDINFO), + "::", + stringify!(dwEventNotificationAlertLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_ADDINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_FACESNAP_ADDINFO = tagNET_VCA_FACESNAP_ADDINFO; +pub type LPNET_VCA_FACESNAP_ADDINFO = *mut tagNET_VCA_FACESNAP_ADDINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_FACESNAP_RESULT { + pub dwSize: DWORD, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub dwFacePicID: DWORD, + pub dwFaceScore: DWORD, + pub struTargetInfo: NET_VCA_TARGET_INFO, + pub struRect: NET_VCA_RECT, + pub struDevInfo: NET_VCA_DEV_INFO, + pub dwFacePicLen: DWORD, + pub dwBackgroundPicLen: DWORD, + pub bySmart: BYTE, + pub byAlarmEndMark: BYTE, + pub byRepeatTimes: BYTE, + pub byUploadEventDataType: BYTE, + pub struFeature: NET_VCA_HUMAN_FEATURE, + pub fStayDuration: f32, + pub sStorageIP: [::std::os::raw::c_char; 16usize], + pub wStoragePort: WORD, + pub wDevInfoIvmsChannelEx: WORD, + pub byFacePicQuality: BYTE, + pub byUIDLen: BYTE, + pub byLivenessDetectionStatus: BYTE, + pub byAddInfo: BYTE, + pub pUIDBuffer: *mut BYTE, + pub pAddInfoBuffer: *mut BYTE, + pub byTimeDiffFlag: BYTE, + pub cTimeDifferenceH: ::std::os::raw::c_char, + pub cTimeDifferenceM: ::std::os::raw::c_char, + pub byBrokenNetHttp: BYTE, + pub pBuffer1: *mut BYTE, + pub pBuffer2: *mut BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_FACESNAP_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 304usize, + concat!("Size of: ", stringify!(tagNET_VCA_FACESNAP_RESULT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_VCA_FACESNAP_RESULT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFacePicID) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(dwFacePicID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFaceScore) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(dwFaceScore) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTargetInfo) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(struTargetInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRect) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(struRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFacePicLen) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(dwFacePicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBackgroundPicLen) as usize - ptr as usize }, + 212usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(dwBackgroundPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySmart) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(bySmart) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmEndMark) as usize - ptr as usize }, + 217usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(byAlarmEndMark) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRepeatTimes) as usize - ptr as usize }, + 218usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(byRepeatTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUploadEventDataType) as usize - ptr as usize }, + 219usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(byUploadEventDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFeature) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(struFeature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fStayDuration) as usize - ptr as usize }, + 236usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(fStayDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sStorageIP) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(sStorageIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStoragePort) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(wStoragePort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevInfoIvmsChannelEx) as usize - ptr as usize }, + 258usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(wDevInfoIvmsChannelEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFacePicQuality) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(byFacePicQuality) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUIDLen) as usize - ptr as usize }, + 261usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(byUIDLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLivenessDetectionStatus) as usize - ptr as usize }, + 262usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(byLivenessDetectionStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddInfo) as usize - ptr as usize }, + 263usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(byAddInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pUIDBuffer) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(pUIDBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pAddInfoBuffer) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(pAddInfoBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeDiffFlag) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(byTimeDiffFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceH) as usize - ptr as usize }, + 281usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(cTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceM) as usize - ptr as usize }, + 282usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(cTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrokenNetHttp) as usize - ptr as usize }, + 283usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(byBrokenNetHttp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer1) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(pBuffer1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer2) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RESULT), + "::", + stringify!(pBuffer2) + ) + ); +} +pub type NET_VCA_FACESNAP_RESULT = tagNET_VCA_FACESNAP_RESULT; +pub type LPNET_VCA_FACESNAP_RESULT = *mut tagNET_VCA_FACESNAP_RESULT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_SUB_PROCIMG_V50 { + pub dwImageLen: DWORD, + pub dwFaceScore: DWORD, + pub struVcaRect: NET_VCA_RECT, + pub struLeftEyePoint: NET_VCA_POINT, + pub struRightEyePoint: NET_VCA_POINT, + pub byDistance: BYTE, + pub bySex: BYTE, + pub byAgeGroup: BYTE, + pub byEyeGlass: BYTE, + pub struPosRect: NET_VCA_RECT, + pub byRes: [BYTE; 20usize], + pub pImage: *mut BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_SUB_PROCIMG_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(tagNET_VCA_SUB_PROCIMG_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_VCA_SUB_PROCIMG_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwImageLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SUB_PROCIMG_V50), + "::", + stringify!(dwImageLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFaceScore) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SUB_PROCIMG_V50), + "::", + stringify!(dwFaceScore) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaRect) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SUB_PROCIMG_V50), + "::", + stringify!(struVcaRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLeftEyePoint) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SUB_PROCIMG_V50), + "::", + stringify!(struLeftEyePoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRightEyePoint) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SUB_PROCIMG_V50), + "::", + stringify!(struRightEyePoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDistance) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SUB_PROCIMG_V50), + "::", + stringify!(byDistance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySex) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SUB_PROCIMG_V50), + "::", + stringify!(bySex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAgeGroup) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SUB_PROCIMG_V50), + "::", + stringify!(byAgeGroup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEyeGlass) as usize - ptr as usize }, + 43usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SUB_PROCIMG_V50), + "::", + stringify!(byEyeGlass) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPosRect) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SUB_PROCIMG_V50), + "::", + stringify!(struPosRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SUB_PROCIMG_V50), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pImage) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SUB_PROCIMG_V50), + "::", + stringify!(pImage) + ) + ); +} +pub type NET_VCA_SUB_PROCIMG_V50 = tagNET_VCA_SUB_PROCIMG_V50; +pub type LPNET_VCA_SUB_PROCIMG_V50 = *mut tagNET_VCA_SUB_PROCIMG_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FACE_DETECTION { + pub dwSize: DWORD, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub dwBackgroundPicLen: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub struFacePic: [NET_VCA_RECT; 30usize], + pub byFacePicNum: BYTE, + pub byUploadEventDataType: BYTE, + pub wDevInfoIvmsChannelEx: WORD, + pub byTimeDiffFlag: BYTE, + pub cTimeDifferenceH: ::std::os::raw::c_char, + pub cTimeDifferenceM: ::std::os::raw::c_char, + pub byRes: [BYTE; 249usize], + pub pBackgroundPicpBuffer: *mut BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FACE_DETECTION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 912usize, + concat!("Size of: ", stringify!(tagNET_DVR_FACE_DETECTION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FACE_DETECTION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_DETECTION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_DETECTION), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_DETECTION), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBackgroundPicLen) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_DETECTION), + "::", + stringify!(dwBackgroundPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_DETECTION), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFacePic) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_DETECTION), + "::", + stringify!(struFacePic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFacePicNum) as usize - ptr as usize }, + 644usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_DETECTION), + "::", + stringify!(byFacePicNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUploadEventDataType) as usize - ptr as usize }, + 645usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_DETECTION), + "::", + stringify!(byUploadEventDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevInfoIvmsChannelEx) as usize - ptr as usize }, + 646usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_DETECTION), + "::", + stringify!(wDevInfoIvmsChannelEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeDiffFlag) as usize - ptr as usize }, + 648usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_DETECTION), + "::", + stringify!(byTimeDiffFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceH) as usize - ptr as usize }, + 649usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_DETECTION), + "::", + stringify!(cTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceM) as usize - ptr as usize }, + 650usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_DETECTION), + "::", + stringify!(cTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 651usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_DETECTION), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBackgroundPicpBuffer) as usize - ptr as usize }, + 904usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_DETECTION), + "::", + stringify!(pBackgroundPicpBuffer) + ) + ); +} +pub type NET_DVR_FACE_DETECTION = tagNET_DVR_FACE_DETECTION; +pub type LPNET_DVR_FACE_DETECTION = *mut tagNET_DVR_FACE_DETECTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_UPGRADE_PARAM { + pub dwUpgradeType: DWORD, + pub sFileName: *mut ::std::os::raw::c_char, + pub pInbuffer: *mut ::std::os::raw::c_void, + pub dwBufferLen: DWORD, + pub pUnitIdList: [*mut ::std::os::raw::c_char; 64usize], + pub sCustomURL: *mut ::std::os::raw::c_char, + pub dwCustomURLLen: DWORD, + pub byRes: [BYTE; 100usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_UPGRADE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 656usize, + concat!("Size of: ", stringify!(tagNET_DVR_UPGRADE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_UPGRADE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwUpgradeType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_PARAM), + "::", + stringify!(dwUpgradeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_PARAM), + "::", + stringify!(sFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pInbuffer) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_PARAM), + "::", + stringify!(pInbuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBufferLen) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_PARAM), + "::", + stringify!(dwBufferLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pUnitIdList) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_PARAM), + "::", + stringify!(pUnitIdList) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCustomURL) as usize - ptr as usize }, + 544usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_PARAM), + "::", + stringify!(sCustomURL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCustomURLLen) as usize - ptr as usize }, + 552usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_PARAM), + "::", + stringify!(dwCustomURLLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 556usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_UPGRADE_PARAM = tagNET_DVR_UPGRADE_PARAM; +pub type LPNET_DVR_UPGRADE_PARAM = *mut tagNET_DVR_UPGRADE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_FD_PROCIMG_RESULT_V50 { + pub dwSize: DWORD, + pub dwImageId: DWORD, + pub byRes: [BYTE; 20usize], + pub dwSubImageNum: DWORD, + pub struProcImg: [NET_VCA_SUB_PROCIMG_V50; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_FD_PROCIMG_RESULT_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2672usize, + concat!("Size of: ", stringify!(tagNET_VCA_FD_PROCIMG_RESULT_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_VCA_FD_PROCIMG_RESULT_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FD_PROCIMG_RESULT_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwImageId) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FD_PROCIMG_RESULT_V50), + "::", + stringify!(dwImageId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FD_PROCIMG_RESULT_V50), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSubImageNum) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FD_PROCIMG_RESULT_V50), + "::", + stringify!(dwSubImageNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struProcImg) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FD_PROCIMG_RESULT_V50), + "::", + stringify!(struProcImg) + ) + ); +} +pub type NET_VCA_FD_PROCIMG_RESULT_V50 = tagNET_VCA_FD_PROCIMG_RESULT_V50; +pub type LPNET_VCA_FD_PROCIMG_RESULT_V50 = *mut tagNET_VCA_FD_PROCIMG_RESULT_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEFOCUS_ALARM { + pub dwSize: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub wDevInfoIvmsChannelEx: WORD, + pub byRes1: [BYTE; 2usize], + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub byTimeDiffFlag: BYTE, + pub cTimeDifferenceH: ::std::os::raw::c_char, + pub cTimeDifferenceM: ::std::os::raw::c_char, + pub byRes: [BYTE; 49usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEFOCUS_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 216usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEFOCUS_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEFOCUS_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEFOCUS_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEFOCUS_ALARM), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevInfoIvmsChannelEx) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEFOCUS_ALARM), + "::", + stringify!(wDevInfoIvmsChannelEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 154usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEFOCUS_ALARM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEFOCUS_ALARM), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEFOCUS_ALARM), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeDiffFlag) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEFOCUS_ALARM), + "::", + stringify!(byTimeDiffFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceH) as usize - ptr as usize }, + 165usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEFOCUS_ALARM), + "::", + stringify!(cTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceM) as usize - ptr as usize }, + 166usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEFOCUS_ALARM), + "::", + stringify!(cTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 167usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEFOCUS_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DEFOCUS_ALARM = tagNET_DVR_DEFOCUS_ALARM; +pub type LPNET_DVR_DEFOCUS_ALARM = *mut tagNET_DVR_DEFOCUS_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DENSEFOGDETECTION_ALARM { + pub dwSize: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub byFogLevel: BYTE, + pub byRes: [BYTE; 259usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DENSEFOGDETECTION_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 420usize, + concat!("Size of: ", stringify!(tagNET_DVR_DENSEFOGDETECTION_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_DENSEFOGDETECTION_ALARM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DENSEFOGDETECTION_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DENSEFOGDETECTION_ALARM), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DENSEFOGDETECTION_ALARM), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DENSEFOGDETECTION_ALARM), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFogLevel) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DENSEFOGDETECTION_ALARM), + "::", + stringify!(byFogLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 161usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DENSEFOGDETECTION_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DENSEFOGDETECTION_ALARM = tagNET_DVR_DENSEFOGDETECTION_ALARM; +pub type LPNET_DVR_DENSEFOGDETECTION_ALARM = *mut tagNET_DVR_DENSEFOGDETECTION_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUDIOEXCEPTION_ALARM { + pub dwSize: DWORD, + pub byAlarmType: BYTE, + pub byRes1: BYTE, + pub wAudioDecibel: WORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub wDevInfoIvmsChannelEx: WORD, + pub byRes: [BYTE; 62usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUDIOEXCEPTION_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 220usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUDIOEXCEPTION_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AUDIOEXCEPTION_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIOEXCEPTION_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIOEXCEPTION_ALARM), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIOEXCEPTION_ALARM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAudioDecibel) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIOEXCEPTION_ALARM), + "::", + stringify!(wAudioDecibel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIOEXCEPTION_ALARM), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevInfoIvmsChannelEx) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIOEXCEPTION_ALARM), + "::", + stringify!(wDevInfoIvmsChannelEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 158usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIOEXCEPTION_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AUDIOEXCEPTION_ALARM = tagNET_DVR_AUDIOEXCEPTION_ALARM; +pub type LPNET_DVR_AUDIOEXCEPTION_ALARM = *mut tagNET_DVR_AUDIOEXCEPTION_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_BUTTON_DOWN_EXCEPTION_ALARM { + pub dwSize: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_BUTTON_DOWN_EXCEPTION_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 216usize, + concat!("Size of: ", stringify!(tagNET_BUTTON_DOWN_EXCEPTION_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_BUTTON_DOWN_EXCEPTION_ALARM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_BUTTON_DOWN_EXCEPTION_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_BUTTON_DOWN_EXCEPTION_ALARM), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_BUTTON_DOWN_EXCEPTION_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_BUTTON_DOWN_EXCEPTION_ALARM = tagNET_BUTTON_DOWN_EXCEPTION_ALARM; +pub type LPNET_BUTTON_DOWN_EXCEPTION_ALARM = *mut tagNET_BUTTON_DOWN_EXCEPTION_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_FD_IMAGE_CFG { + pub dwWidth: DWORD, + pub dwHeight: DWORD, + pub dwImageLen: DWORD, + pub byRes: [BYTE; 20usize], + pub pImage: *mut BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_FD_IMAGE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_VCA_FD_IMAGE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_VCA_FD_IMAGE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWidth) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FD_IMAGE_CFG), + "::", + stringify!(dwWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHeight) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FD_IMAGE_CFG), + "::", + stringify!(dwHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwImageLen) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FD_IMAGE_CFG), + "::", + stringify!(dwImageLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FD_IMAGE_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pImage) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FD_IMAGE_CFG), + "::", + stringify!(pImage) + ) + ); +} +pub type NET_VCA_FD_IMAGE_CFG = tagNET_VCA_FD_IMAGE_CFG; +pub type LPNET_VCA_FD_IMAGE_CFG = *mut tagNET_VCA_FD_IMAGE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_FD_PROCIMG_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub bySensitivity: BYTE, + pub byRes1: [BYTE; 22usize], + pub struSizeFilter: NET_VCA_SIZE_FILTER, + pub struPolygon: NET_VCA_POLYGON, + pub struFDImage: NET_VCA_FD_IMAGE_CFG, + pub byRes2: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_FD_PROCIMG_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 216usize, + concat!("Size of: ", stringify!(tagNET_VCA_FD_PROCIMG_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_VCA_FD_PROCIMG_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FD_PROCIMG_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FD_PROCIMG_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FD_PROCIMG_CFG), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FD_PROCIMG_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSizeFilter) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FD_PROCIMG_CFG), + "::", + stringify!(struSizeFilter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPolygon) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FD_PROCIMG_CFG), + "::", + stringify!(struPolygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFDImage) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FD_PROCIMG_CFG), + "::", + stringify!(struFDImage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FD_PROCIMG_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_VCA_FD_PROCIMG_CFG = tagNET_VCA_FD_PROCIMG_CFG; +pub type LPNET_VCA_FD_PROCIMG_CFG = *mut tagNET_VCA_FD_PROCIMG_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_SUB_PROCIMG { + pub dwImageLen: DWORD, + pub dwFaceScore: DWORD, + pub struVcaRect: NET_VCA_RECT, + pub byRes: [BYTE; 20usize], + pub pImage: *mut BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_SUB_PROCIMG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_VCA_SUB_PROCIMG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_VCA_SUB_PROCIMG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwImageLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SUB_PROCIMG), + "::", + stringify!(dwImageLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFaceScore) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SUB_PROCIMG), + "::", + stringify!(dwFaceScore) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaRect) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SUB_PROCIMG), + "::", + stringify!(struVcaRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SUB_PROCIMG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pImage) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SUB_PROCIMG), + "::", + stringify!(pImage) + ) + ); +} +pub type NET_VCA_SUB_PROCIMG = tagNET_VCA_SUB_PROCIMG; +pub type LPNET_VCA_SUB_PROCIMG = *mut tagNET_VCA_SUB_PROCIMG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_FD_PROCIMG_RESULT { + pub dwSize: DWORD, + pub dwImageId: DWORD, + pub byRes: [BYTE; 20usize], + pub dwSubImageNum: DWORD, + pub struProcImg: [NET_VCA_SUB_PROCIMG; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_FD_PROCIMG_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1712usize, + concat!("Size of: ", stringify!(tagNET_VCA_FD_PROCIMG_RESULT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_VCA_FD_PROCIMG_RESULT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FD_PROCIMG_RESULT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwImageId) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FD_PROCIMG_RESULT), + "::", + stringify!(dwImageId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FD_PROCIMG_RESULT), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSubImageNum) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FD_PROCIMG_RESULT), + "::", + stringify!(dwSubImageNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struProcImg) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FD_PROCIMG_RESULT), + "::", + stringify!(struProcImg) + ) + ); +} +pub type NET_VCA_FD_PROCIMG_RESULT = tagNET_VCA_FD_PROCIMG_RESULT; +pub type LPNET_VCA_FD_PROCIMG_RESULT = *mut tagNET_VCA_FD_PROCIMG_RESULT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_PICMODEL_RESULT { + pub dwImageLen: DWORD, + pub dwModelLen: DWORD, + pub byRes: [BYTE; 20usize], + pub pImage: *mut BYTE, + pub pModel: *mut BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_PICMODEL_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_VCA_PICMODEL_RESULT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_VCA_PICMODEL_RESULT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwImageLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_PICMODEL_RESULT), + "::", + stringify!(dwImageLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwModelLen) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_PICMODEL_RESULT), + "::", + stringify!(dwModelLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_PICMODEL_RESULT), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pImage) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_PICMODEL_RESULT), + "::", + stringify!(pImage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pModel) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_PICMODEL_RESULT), + "::", + stringify!(pModel) + ) + ); +} +pub type NET_VCA_PICMODEL_RESULT = tagNET_VCA_PICMODEL_RESULT; +pub type LPNET_VCA_PICMODEL_RESULT = *mut tagNET_VCA_PICMODEL_RESULT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_REGISTER_PIC { + pub dwImageID: DWORD, + pub dwFaceScore: DWORD, + pub struVcaRect: NET_VCA_RECT, + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_REGISTER_PIC() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_VCA_REGISTER_PIC)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_REGISTER_PIC)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwImageID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_REGISTER_PIC), + "::", + stringify!(dwImageID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFaceScore) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_REGISTER_PIC), + "::", + stringify!(dwFaceScore) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaRect) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_REGISTER_PIC), + "::", + stringify!(struVcaRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_REGISTER_PIC), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_REGISTER_PIC = tagNET_VCA_REGISTER_PIC; +pub type LPNET_VCA_REGISTER_PIC = *mut tagNET_VCA_REGISTER_PIC; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AREAINFOCFG { + pub wNationalityID: WORD, + pub wProvinceID: WORD, + pub wCityID: WORD, + pub wCountyID: WORD, + pub dwCode: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AREAINFOCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_AREAINFOCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AREAINFOCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wNationalityID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AREAINFOCFG), + "::", + stringify!(wNationalityID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wProvinceID) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AREAINFOCFG), + "::", + stringify!(wProvinceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCityID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AREAINFOCFG), + "::", + stringify!(wCityID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCountyID) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AREAINFOCFG), + "::", + stringify!(wCountyID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AREAINFOCFG), + "::", + stringify!(dwCode) + ) + ); +} +pub type NET_DVR_AREAINFOCFG = tagNET_DVR_AREAINFOCFG; +pub type LPNET_DVR_AREAINFOCFG = *mut tagNET_DVR_AREAINFOCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_HUMAN_ATTRIBUTE { + pub bySex: BYTE, + pub byCertificateType: BYTE, + pub byBirthDate: [BYTE; 10usize], + pub byName: [BYTE; 32usize], + pub struNativePlace: NET_DVR_AREAINFOCFG, + pub byCertificateNumber: [BYTE; 32usize], + pub dwPersonInfoExtendLen: DWORD, + pub pPersonInfoExtend: *mut BYTE, + pub byAgeGroup: BYTE, + pub byRes2: [BYTE; 3usize], + pub pThermalData: *mut BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_HUMAN_ATTRIBUTE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 120usize, + concat!("Size of: ", stringify!(tagNET_VCA_HUMAN_ATTRIBUTE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_VCA_HUMAN_ATTRIBUTE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMAN_ATTRIBUTE), + "::", + stringify!(bySex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCertificateType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMAN_ATTRIBUTE), + "::", + stringify!(byCertificateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBirthDate) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMAN_ATTRIBUTE), + "::", + stringify!(byBirthDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMAN_ATTRIBUTE), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNativePlace) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMAN_ATTRIBUTE), + "::", + stringify!(struNativePlace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCertificateNumber) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMAN_ATTRIBUTE), + "::", + stringify!(byCertificateNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPersonInfoExtendLen) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMAN_ATTRIBUTE), + "::", + stringify!(dwPersonInfoExtendLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPersonInfoExtend) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMAN_ATTRIBUTE), + "::", + stringify!(pPersonInfoExtend) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAgeGroup) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMAN_ATTRIBUTE), + "::", + stringify!(byAgeGroup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 105usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMAN_ATTRIBUTE), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pThermalData) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMAN_ATTRIBUTE), + "::", + stringify!(pThermalData) + ) + ); +} +pub type NET_VCA_HUMAN_ATTRIBUTE = tagNET_VCA_HUMAN_ATTRIBUTE; +pub type LPNET_VCA_HUMAN_ATTRIBUTE = *mut tagNET_VCA_HUMAN_ATTRIBUTE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_HUMANATTRIBUTE_COND { + pub bySex: BYTE, + pub byCertificateType: BYTE, + pub byStartBirthDate: [BYTE; 10usize], + pub byEndBirthDate: [BYTE; 10usize], + pub byName: [BYTE; 32usize], + pub struNativePlace: NET_DVR_AREAINFOCFG, + pub byCertificateNumber: [BYTE; 32usize], + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_HUMANATTRIBUTE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 120usize, + concat!("Size of: ", stringify!(tagNET_VCA_HUMANATTRIBUTE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_HUMANATTRIBUTE_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMANATTRIBUTE_COND), + "::", + stringify!(bySex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCertificateType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMANATTRIBUTE_COND), + "::", + stringify!(byCertificateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartBirthDate) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMANATTRIBUTE_COND), + "::", + stringify!(byStartBirthDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEndBirthDate) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMANATTRIBUTE_COND), + "::", + stringify!(byEndBirthDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMANATTRIBUTE_COND), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNativePlace) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMANATTRIBUTE_COND), + "::", + stringify!(struNativePlace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCertificateNumber) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMANATTRIBUTE_COND), + "::", + stringify!(byCertificateNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_HUMANATTRIBUTE_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_HUMANATTRIBUTE_COND = tagNET_VCA_HUMANATTRIBUTE_COND; +pub type LPNET_VCA_HUMANATTRIBUTE_COND = *mut tagNET_VCA_HUMANATTRIBUTE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_BLOCKLIST_INFO { + pub dwSize: DWORD, + pub dwRegisterID: DWORD, + pub dwGroupNo: DWORD, + pub byType: BYTE, + pub byLevel: BYTE, + pub byRes1: [BYTE; 2usize], + pub struAttribute: NET_VCA_HUMAN_ATTRIBUTE, + pub byRemark: [BYTE; 32usize], + pub dwFDDescriptionLen: DWORD, + pub pFDDescriptionBuffer: *mut BYTE, + pub dwFCAdditionInfoLen: DWORD, + pub pFCAdditionInfoBuffer: *mut BYTE, + pub dwThermalDataLen: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_BLOCKLIST_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 208usize, + concat!("Size of: ", stringify!(tagNET_VCA_BLOCKLIST_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_VCA_BLOCKLIST_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRegisterID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_INFO), + "::", + stringify!(dwRegisterID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGroupNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_INFO), + "::", + stringify!(dwGroupNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_INFO), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLevel) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_INFO), + "::", + stringify!(byLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAttribute) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_INFO), + "::", + stringify!(struAttribute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRemark) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_INFO), + "::", + stringify!(byRemark) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFDDescriptionLen) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_INFO), + "::", + stringify!(dwFDDescriptionLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pFDDescriptionBuffer) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_INFO), + "::", + stringify!(pFDDescriptionBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFCAdditionInfoLen) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_INFO), + "::", + stringify!(dwFCAdditionInfoLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pFCAdditionInfoBuffer) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_INFO), + "::", + stringify!(pFCAdditionInfoBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwThermalDataLen) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_INFO), + "::", + stringify!(dwThermalDataLen) + ) + ); +} +pub type NET_VCA_BLOCKLIST_INFO = tagNET_VCA_BLOCKLIST_INFO; +pub type LPNET_VCA_BLOCKLIST_INFO = *mut tagNET_VCA_BLOCKLIST_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_BLOCKLIST_PARA { + pub dwSize: DWORD, + pub struBlockListInfo: NET_VCA_BLOCKLIST_INFO, + pub dwRegisterPicNum: DWORD, + pub struRegisterPic: [NET_VCA_PICMODEL_RESULT; 10usize], + pub byRes: [BYTE; 40usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_BLOCKLIST_PARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 744usize, + concat!("Size of: ", stringify!(tagNET_VCA_BLOCKLIST_PARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_VCA_BLOCKLIST_PARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_PARA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBlockListInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_PARA), + "::", + stringify!(struBlockListInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRegisterPicNum) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_PARA), + "::", + stringify!(dwRegisterPicNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegisterPic) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_PARA), + "::", + stringify!(struRegisterPic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 704usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_PARA), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_BLOCKLIST_PARA = tagNET_VCA_BLOCKLIST_PARA; +pub type LPNET_VCA_BLOCKLIST_PARA = *mut tagNET_VCA_BLOCKLIST_PARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_BLOCKLIST_COND { + pub lChannel: LONG, + pub dwGroupNo: DWORD, + pub byType: BYTE, + pub byLevel: BYTE, + pub byRes1: [BYTE; 2usize], + pub struAttribute: NET_VCA_HUMAN_ATTRIBUTE, + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_BLOCKLIST_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 160usize, + concat!("Size of: ", stringify!(tagNET_VCA_BLOCKLIST_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_VCA_BLOCKLIST_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_COND), + "::", + stringify!(lChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGroupNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_COND), + "::", + stringify!(dwGroupNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_COND), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLevel) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_COND), + "::", + stringify!(byLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_COND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAttribute) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_COND), + "::", + stringify!(struAttribute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_BLOCKLIST_COND = tagNET_VCA_BLOCKLIST_COND; +pub type LPNET_VCA_BLOCKLIST_COND = *mut tagNET_VCA_BLOCKLIST_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_BLOCKLIST_PIC { + pub dwSize: DWORD, + pub dwFacePicNum: DWORD, + pub byRes: [BYTE; 20usize], + pub struBlockListPic: [NET_VCA_PICMODEL_RESULT; 10usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_BLOCKLIST_PIC() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(tagNET_VCA_BLOCKLIST_PIC)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_VCA_BLOCKLIST_PIC)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_PIC), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFacePicNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_PIC), + "::", + stringify!(dwFacePicNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_PIC), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBlockListPic) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_PIC), + "::", + stringify!(struBlockListPic) + ) + ); +} +pub type NET_VCA_BLOCKLIST_PIC = tagNET_VCA_BLOCKLIST_PIC; +pub type LPNET_VCA_BLOCKLIST_PIC = *mut tagNET_VCA_BLOCKLIST_PIC; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_FIND_PICTURECOND { + pub lChannel: LONG, + pub struStartTime: NET_DVR_TIME, + pub struStopTime: NET_DVR_TIME, + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_FIND_PICTURECOND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(tagNET_VCA_FIND_PICTURECOND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_FIND_PICTURECOND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_PICTURECOND), + "::", + stringify!(lChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_PICTURECOND), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_PICTURECOND), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_PICTURECOND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_FIND_PICTURECOND = tagNET_VCA_FIND_PICTURECOND; +pub type LPNET_VCA_FIND_PICTURECOND = *mut tagNET_VCA_FIND_PICTURECOND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_SUB_SNAPPIC_DATA { + pub dwFacePicID: DWORD, + pub dwFacePicLen: DWORD, + pub struSnapTime: NET_DVR_TIME, + pub dwSimilarity: DWORD, + pub byRes: [BYTE; 16usize], + pub sPicBuf: [::std::os::raw::c_char; 6144usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_SUB_SNAPPIC_DATA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 6196usize, + concat!("Size of: ", stringify!(tagNET_VCA_SUB_SNAPPIC_DATA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_SUB_SNAPPIC_DATA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFacePicID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SUB_SNAPPIC_DATA), + "::", + stringify!(dwFacePicID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFacePicLen) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SUB_SNAPPIC_DATA), + "::", + stringify!(dwFacePicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSnapTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SUB_SNAPPIC_DATA), + "::", + stringify!(struSnapTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSimilarity) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SUB_SNAPPIC_DATA), + "::", + stringify!(dwSimilarity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SUB_SNAPPIC_DATA), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPicBuf) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SUB_SNAPPIC_DATA), + "::", + stringify!(sPicBuf) + ) + ); +} +pub type NET_VCA_SUB_SNAPPIC_DATA = tagNET_VCA_SUB_SNAPPIC_DATA; +pub type LPNET_VCA_SUB_SNAPPIC_DATA = *mut tagNET_VCA_SUB_SNAPPIC_DATA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_ADVANCE_FIND { + pub dwFacePicID: DWORD, + pub byRes: [BYTE; 36usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_ADVANCE_FIND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_VCA_ADVANCE_FIND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_ADVANCE_FIND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFacePicID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ADVANCE_FIND), + "::", + stringify!(dwFacePicID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ADVANCE_FIND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_ADVANCE_FIND = tagNET_VCA_ADVANCE_FIND; +pub type LPNET_VCA_ADVANCE_FIND = *mut tagNET_VCA_ADVANCE_FIND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_NORMAL_FIND { + pub dwImageID: DWORD, + pub dwFaceScore: DWORD, + pub struVcaRect: NET_VCA_RECT, + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_NORMAL_FIND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_VCA_NORMAL_FIND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_NORMAL_FIND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwImageID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_NORMAL_FIND), + "::", + stringify!(dwImageID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFaceScore) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_NORMAL_FIND), + "::", + stringify!(dwFaceScore) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaRect) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_NORMAL_FIND), + "::", + stringify!(struVcaRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_NORMAL_FIND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_NORMAL_FIND = tagNET_VCA_NORMAL_FIND; +pub type LPNET_VCA_NORMAL_FIND = *mut tagNET_VCA_NORMAL_FIND; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_VCA_FIND_SNAPPIC_UNION { + pub struNormalFind: NET_VCA_NORMAL_FIND, + pub struAdvanceFind: NET_VCA_ADVANCE_FIND, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_FIND_SNAPPIC_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_VCA_FIND_SNAPPIC_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_FIND_SNAPPIC_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNormalFind) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_SNAPPIC_UNION), + "::", + stringify!(struNormalFind) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAdvanceFind) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_SNAPPIC_UNION), + "::", + stringify!(struAdvanceFind) + ) + ); +} +pub type NET_VCA_FIND_SNAPPIC_UNION = tagNET_VCA_FIND_SNAPPIC_UNION; +pub type LPNET_VCA_FIND_SNAPPIC_UNION = *mut tagNET_VCA_FIND_SNAPPIC_UNION; +pub const _VCA_FIND_SNAPPIC_TYPE__VCA_NORMAL_FIND: _VCA_FIND_SNAPPIC_TYPE_ = 0; +pub const _VCA_FIND_SNAPPIC_TYPE__VCA_ADVANCE_FIND: _VCA_FIND_SNAPPIC_TYPE_ = 1; +pub type _VCA_FIND_SNAPPIC_TYPE_ = ::std::os::raw::c_uint; +pub use self::_VCA_FIND_SNAPPIC_TYPE_ as VCA_FIND_SNAPPIC_TYPE; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_VCA_FIND_PICTURECOND_ADVANCE { + pub lChannel: LONG, + pub struStartTime: NET_DVR_TIME, + pub struStopTime: NET_DVR_TIME, + pub byThreshold: BYTE, + pub byRes: [BYTE; 23usize], + pub dwFindType: VCA_FIND_SNAPPIC_TYPE, + pub uFindParam: NET_VCA_FIND_SNAPPIC_UNION, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_FIND_PICTURECOND_ADVANCE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 124usize, + concat!("Size of: ", stringify!(tagNET_VCA_FIND_PICTURECOND_ADVANCE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_VCA_FIND_PICTURECOND_ADVANCE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_PICTURECOND_ADVANCE), + "::", + stringify!(lChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_PICTURECOND_ADVANCE), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_PICTURECOND_ADVANCE), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byThreshold) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_PICTURECOND_ADVANCE), + "::", + stringify!(byThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 53usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_PICTURECOND_ADVANCE), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFindType) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_PICTURECOND_ADVANCE), + "::", + stringify!(dwFindType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uFindParam) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_PICTURECOND_ADVANCE), + "::", + stringify!(uFindParam) + ) + ); +} +pub type NET_VCA_FIND_PICTURECOND_ADVANCE = tagNET_VCA_FIND_PICTURECOND_ADVANCE; +pub type LPNET_VCA_FIND_PICTURECOND_ADVANCE = *mut tagNET_VCA_FIND_PICTURECOND_ADVANCE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_FACESNAP_INFO_ALARM { + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub dwSnapFacePicID: DWORD, + pub dwSnapFacePicLen: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub byFaceScore: BYTE, + pub bySex: BYTE, + pub byGlasses: BYTE, + pub byAge: BYTE, + pub byAgeDeviation: BYTE, + pub byAgeGroup: BYTE, + pub byFacePicQuality: BYTE, + pub byRes: BYTE, + pub dwUIDLen: DWORD, + pub pUIDBuffer: *mut BYTE, + pub fStayDuration: f32, + pub pBuffer1: *mut BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_FACESNAP_INFO_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 200usize, + concat!("Size of: ", stringify!(tagNET_VCA_FACESNAP_INFO_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_VCA_FACESNAP_INFO_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_INFO_ALARM), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_INFO_ALARM), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSnapFacePicID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_INFO_ALARM), + "::", + stringify!(dwSnapFacePicID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSnapFacePicLen) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_INFO_ALARM), + "::", + stringify!(dwSnapFacePicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_INFO_ALARM), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaceScore) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_INFO_ALARM), + "::", + stringify!(byFaceScore) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySex) as usize - ptr as usize }, + 165usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_INFO_ALARM), + "::", + stringify!(bySex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGlasses) as usize - ptr as usize }, + 166usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_INFO_ALARM), + "::", + stringify!(byGlasses) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAge) as usize - ptr as usize }, + 167usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_INFO_ALARM), + "::", + stringify!(byAge) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAgeDeviation) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_INFO_ALARM), + "::", + stringify!(byAgeDeviation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAgeGroup) as usize - ptr as usize }, + 169usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_INFO_ALARM), + "::", + stringify!(byAgeGroup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFacePicQuality) as usize - ptr as usize }, + 170usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_INFO_ALARM), + "::", + stringify!(byFacePicQuality) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 171usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_INFO_ALARM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwUIDLen) as usize - ptr as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_INFO_ALARM), + "::", + stringify!(dwUIDLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pUIDBuffer) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_INFO_ALARM), + "::", + stringify!(pUIDBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fStayDuration) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_INFO_ALARM), + "::", + stringify!(fStayDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer1) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_INFO_ALARM), + "::", + stringify!(pBuffer1) + ) + ); +} +pub type NET_VCA_FACESNAP_INFO_ALARM = tagNET_VCA_FACESNAP_INFO_ALARM; +pub type LPNET_VCA_FACESNAP_INFO_ALARM = *mut tagNET_VCA_FACESNAP_INFO_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_BLOCKLIST_INFO_ALARM { + pub struBlockListInfo: NET_VCA_BLOCKLIST_INFO, + pub dwBlockListPicLen: DWORD, + pub dwFDIDLen: DWORD, + pub pFDID: *mut BYTE, + pub dwPIDLen: DWORD, + pub pPID: *mut BYTE, + pub wThresholdValue: WORD, + pub byIsNoSaveFDPicture: BYTE, + pub byRealTimeContrast: BYTE, + pub pBuffer1: *mut BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_BLOCKLIST_INFO_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_VCA_BLOCKLIST_INFO_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_VCA_BLOCKLIST_INFO_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBlockListInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_INFO_ALARM), + "::", + stringify!(struBlockListInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBlockListPicLen) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_INFO_ALARM), + "::", + stringify!(dwBlockListPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFDIDLen) as usize - ptr as usize }, + 212usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_INFO_ALARM), + "::", + stringify!(dwFDIDLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pFDID) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_INFO_ALARM), + "::", + stringify!(pFDID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPIDLen) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_INFO_ALARM), + "::", + stringify!(dwPIDLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPID) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_INFO_ALARM), + "::", + stringify!(pPID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wThresholdValue) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_INFO_ALARM), + "::", + stringify!(wThresholdValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsNoSaveFDPicture) as usize - ptr as usize }, + 242usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_INFO_ALARM), + "::", + stringify!(byIsNoSaveFDPicture) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRealTimeContrast) as usize - ptr as usize }, + 243usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_INFO_ALARM), + "::", + stringify!(byRealTimeContrast) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer1) as usize - ptr as usize }, + 248usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_INFO_ALARM), + "::", + stringify!(pBuffer1) + ) + ); +} +pub type NET_VCA_BLOCKLIST_INFO_ALARM = tagNET_VCA_BLOCKLIST_INFO_ALARM; +pub type LPNET_VCA_BLOCKLIST_INFO_ALARM = *mut tagNET_VCA_BLOCKLIST_INFO_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_FACESNAP_MATCH_ALARM { + pub dwSize: DWORD, + pub fSimilarity: f32, + pub struSnapInfo: NET_VCA_FACESNAP_INFO_ALARM, + pub struBlockListInfo: NET_VCA_BLOCKLIST_INFO_ALARM, + pub sStorageIP: [::std::os::raw::c_char; 16usize], + pub wStoragePort: WORD, + pub byMatchPicNum: BYTE, + pub byPicTransType: BYTE, + pub dwSnapPicLen: DWORD, + pub pSnapPicBuffer: *mut BYTE, + pub struRegion: NET_VCA_RECT, + pub dwModelDataLen: DWORD, + pub pModelDataBuffer: *mut BYTE, + pub byModelingStatus: BYTE, + pub byLivenessDetectionStatus: BYTE, + pub cTimeDifferenceH: ::std::os::raw::c_char, + pub cTimeDifferenceM: ::std::os::raw::c_char, + pub byMask: BYTE, + pub bySmile: BYTE, + pub byContrastStatus: BYTE, + pub byBrokenNetHttp: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_FACESNAP_MATCH_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 536usize, + concat!("Size of: ", stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fSimilarity) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM), + "::", + stringify!(fSimilarity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSnapInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM), + "::", + stringify!(struSnapInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBlockListInfo) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM), + "::", + stringify!(struBlockListInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sStorageIP) as usize - ptr as usize }, + 464usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM), + "::", + stringify!(sStorageIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStoragePort) as usize - ptr as usize }, + 480usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM), + "::", + stringify!(wStoragePort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMatchPicNum) as usize - ptr as usize }, + 482usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM), + "::", + stringify!(byMatchPicNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicTransType) as usize - ptr as usize }, + 483usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM), + "::", + stringify!(byPicTransType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSnapPicLen) as usize - ptr as usize }, + 484usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM), + "::", + stringify!(dwSnapPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pSnapPicBuffer) as usize - ptr as usize }, + 488usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM), + "::", + stringify!(pSnapPicBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 496usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwModelDataLen) as usize - ptr as usize }, + 512usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM), + "::", + stringify!(dwModelDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pModelDataBuffer) as usize - ptr as usize }, + 520usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM), + "::", + stringify!(pModelDataBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byModelingStatus) as usize - ptr as usize }, + 528usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM), + "::", + stringify!(byModelingStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLivenessDetectionStatus) as usize - ptr as usize }, + 529usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM), + "::", + stringify!(byLivenessDetectionStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceH) as usize - ptr as usize }, + 530usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM), + "::", + stringify!(cTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceM) as usize - ptr as usize }, + 531usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM), + "::", + stringify!(cTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMask) as usize - ptr as usize }, + 532usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM), + "::", + stringify!(byMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySmile) as usize - ptr as usize }, + 533usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM), + "::", + stringify!(bySmile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byContrastStatus) as usize - ptr as usize }, + 534usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM), + "::", + stringify!(byContrastStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrokenNetHttp) as usize - ptr as usize }, + 535usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM), + "::", + stringify!(byBrokenNetHttp) + ) + ); +} +pub type NET_VCA_FACESNAP_MATCH_ALARM = tagNET_VCA_FACESNAP_MATCH_ALARM; +pub type LPNET_VCA_FACESNAP_MATCH_ALARM = *mut tagNET_VCA_FACESNAP_MATCH_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_BLOCKLIST_INFO_ALARM_LOG { + pub struBlockListInfo: NET_VCA_BLOCKLIST_INFO, + pub dwBlockListPicID: DWORD, + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_BLOCKLIST_INFO_ALARM_LOG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 232usize, + concat!("Size of: ", stringify!(tagNET_VCA_BLOCKLIST_INFO_ALARM_LOG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_VCA_BLOCKLIST_INFO_ALARM_LOG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBlockListInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_INFO_ALARM_LOG), + "::", + stringify!(struBlockListInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBlockListPicID) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_INFO_ALARM_LOG), + "::", + stringify!(dwBlockListPicID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 212usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_INFO_ALARM_LOG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_BLOCKLIST_INFO_ALARM_LOG = tagNET_VCA_BLOCKLIST_INFO_ALARM_LOG; +pub type LPNET_VCA_BLOCKLIST_INFO_ALARM_LOG = *mut tagNET_VCA_BLOCKLIST_INFO_ALARM_LOG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_FACESNAP_INFO_ALARM_LOG { + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub dwSnapFacePicID: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_FACESNAP_INFO_ALARM_LOG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 180usize, + concat!("Size of: ", stringify!(tagNET_VCA_FACESNAP_INFO_ALARM_LOG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_VCA_FACESNAP_INFO_ALARM_LOG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_INFO_ALARM_LOG), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_INFO_ALARM_LOG), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSnapFacePicID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_INFO_ALARM_LOG), + "::", + stringify!(dwSnapFacePicID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_INFO_ALARM_LOG), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_INFO_ALARM_LOG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_FACESNAP_INFO_ALARM_LOG = tagNET_VCA_FACESNAP_INFO_ALARM_LOG; +pub type LPNET_VCA_FACESNAP_INFO_ALARM_LOG = *mut tagNET_VCA_FACESNAP_INFO_ALARM_LOG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_FACESNAP_MATCH_ALARM_LOG { + pub dwSize: DWORD, + pub fSimilarity: f32, + pub struSnapInfoLog: NET_VCA_FACESNAP_INFO_ALARM_LOG, + pub struBlockListInfoLog: NET_VCA_BLOCKLIST_INFO_ALARM_LOG, + pub byRes: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_FACESNAP_MATCH_ALARM_LOG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 488usize, + concat!("Size of: ", stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM_LOG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM_LOG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM_LOG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fSimilarity) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM_LOG), + "::", + stringify!(fSimilarity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSnapInfoLog) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM_LOG), + "::", + stringify!(struSnapInfoLog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBlockListInfoLog) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM_LOG), + "::", + stringify!(struBlockListInfoLog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 424usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_MATCH_ALARM_LOG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_FACESNAP_MATCH_ALARM_LOG = tagNET_VCA_FACESNAP_MATCH_ALARM_LOG; +pub type LPNET_VCA_FACESNAP_MATCH_ALARM_LOG = *mut tagNET_VCA_FACESNAP_MATCH_ALARM_LOG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_FACEMATCH_PICCOND { + pub dwSize: DWORD, + pub dwSnapFaceID: DWORD, + pub dwBlockListID: DWORD, + pub dwBlockListFaceID: DWORD, + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_FACEMATCH_PICCOND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_VCA_FACEMATCH_PICCOND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_FACEMATCH_PICCOND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACEMATCH_PICCOND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSnapFaceID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACEMATCH_PICCOND), + "::", + stringify!(dwSnapFaceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBlockListID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACEMATCH_PICCOND), + "::", + stringify!(dwBlockListID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBlockListFaceID) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACEMATCH_PICCOND), + "::", + stringify!(dwBlockListFaceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACEMATCH_PICCOND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_FACEMATCH_PICCOND = tagNET_VCA_FACEMATCH_PICCOND; +pub type LPNET_VCA_FACEMATCH_PICCOND = *mut tagNET_VCA_FACEMATCH_PICCOND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_FACEMATCH_PICTURE { + pub dwSize: DWORD, + pub dwSnapFaceLen: DWORD, + pub dwBlockListFaceLen: DWORD, + pub byRes: [BYTE; 20usize], + pub pSnapFace: *mut BYTE, + pub pBlockListFace: *mut BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_FACEMATCH_PICTURE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_VCA_FACEMATCH_PICTURE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_VCA_FACEMATCH_PICTURE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACEMATCH_PICTURE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSnapFaceLen) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACEMATCH_PICTURE), + "::", + stringify!(dwSnapFaceLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBlockListFaceLen) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACEMATCH_PICTURE), + "::", + stringify!(dwBlockListFaceLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACEMATCH_PICTURE), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pSnapFace) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACEMATCH_PICTURE), + "::", + stringify!(pSnapFace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBlockListFace) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACEMATCH_PICTURE), + "::", + stringify!(pBlockListFace) + ) + ); +} +pub type NET_VCA_FACEMATCH_PICTURE = tagNET_VCA_FACEMATCH_PICTURE; +pub type LPNET_VCA_FACEMATCH_PICTURE = *mut tagNET_VCA_FACEMATCH_PICTURE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_BLOCKLIST_FASTREGISTER_PARA { + pub dwSize: DWORD, + pub struBlockListInfo: NET_VCA_BLOCKLIST_INFO, + pub dwImageLen: DWORD, + pub byRes: [BYTE; 124usize], + pub pImage: *mut BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_BLOCKLIST_FASTREGISTER_PARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 352usize, + concat!( + "Size of: ", + stringify!(tagNET_VCA_BLOCKLIST_FASTREGISTER_PARA) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_VCA_BLOCKLIST_FASTREGISTER_PARA) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_FASTREGISTER_PARA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBlockListInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_FASTREGISTER_PARA), + "::", + stringify!(struBlockListInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwImageLen) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_FASTREGISTER_PARA), + "::", + stringify!(dwImageLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_FASTREGISTER_PARA), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pImage) as usize - ptr as usize }, + 344usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_BLOCKLIST_FASTREGISTER_PARA), + "::", + stringify!(pImage) + ) + ); +} +pub type NET_VCA_BLOCKLIST_FASTREGISTER_PARA = tagNET_VCA_BLOCKLIST_FASTREGISTER_PARA; +pub type LPNET_VCA_BLOCKLIST_FASTREGISTER_PARA = *mut tagNET_VCA_BLOCKLIST_FASTREGISTER_PARA; +#[doc = "PJ01C20170209084����¼��NVS�������\u{73f}���������Ŀר��"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FRAMES_PEOPLE_COUNTING { + pub dwSize: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub dwPeopleCountingNum: DWORD, + pub dwPicLen: DWORD, + pub pPicBuffer: *mut BYTE, + pub byRes: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FRAMES_PEOPLE_COUNTING() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 688usize, + concat!("Size of: ", stringify!(tagNET_DVR_FRAMES_PEOPLE_COUNTING)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FRAMES_PEOPLE_COUNTING) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FRAMES_PEOPLE_COUNTING), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FRAMES_PEOPLE_COUNTING), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FRAMES_PEOPLE_COUNTING), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FRAMES_PEOPLE_COUNTING), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPeopleCountingNum) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FRAMES_PEOPLE_COUNTING), + "::", + stringify!(dwPeopleCountingNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicLen) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FRAMES_PEOPLE_COUNTING), + "::", + stringify!(dwPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPicBuffer) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FRAMES_PEOPLE_COUNTING), + "::", + stringify!(pPicBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FRAMES_PEOPLE_COUNTING), + "::", + stringify!(byRes) + ) + ); +} +#[doc = "PJ01C20170209084����¼��NVS�������\u{73f}���������Ŀר��"] +pub type NET_DVR_FRAMES_PEOPLE_COUNTING = tagNET_DVR_FRAMES_PEOPLE_COUNTING; +#[doc = "PJ01C20170209084����¼��NVS�������\u{73f}���������Ŀר��"] +pub type LPNET_DVR_FRAMES_PEOPLE_COUNTING = *mut tagNET_DVR_FRAMES_PEOPLE_COUNTING; +#[doc = "PJ01C20170209084����¼��NVS�������\u{73f}���������Ŀר��"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_SINGLE_PATH { + pub byActive: BYTE, + pub byType: BYTE, + pub bySaveAlarmPic: BYTE, + pub byRes1: [BYTE; 5usize], + pub dwDiskDriver: DWORD, + pub dwLeftSpace: DWORD, + pub byRes2: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_SINGLE_PATH() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_VCA_SINGLE_PATH)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_SINGLE_PATH)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byActive) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SINGLE_PATH), + "::", + stringify!(byActive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SINGLE_PATH), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySaveAlarmPic) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SINGLE_PATH), + "::", + stringify!(bySaveAlarmPic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SINGLE_PATH), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDiskDriver) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SINGLE_PATH), + "::", + stringify!(dwDiskDriver) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLeftSpace) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SINGLE_PATH), + "::", + stringify!(dwLeftSpace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SINGLE_PATH), + "::", + stringify!(byRes2) + ) + ); +} +#[doc = "PJ01C20170209084����¼��NVS�������\u{73f}���������Ŀר��"] +pub type NET_VCA_SINGLE_PATH = tagNET_VCA_SINGLE_PATH; +#[doc = "PJ01C20170209084����¼��NVS�������\u{73f}���������Ŀר��"] +pub type LPNET_VCA_SINGLE_PATH = *mut tagNET_VCA_SINGLE_PATH; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_SAVE_PATH_CFG { + pub dwSize: DWORD, + pub struPathInfo: [NET_VCA_SINGLE_PATH; 33usize], + pub byRes: [BYTE; 40usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_SAVE_PATH_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 836usize, + concat!("Size of: ", stringify!(tagNET_VCA_SAVE_PATH_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_SAVE_PATH_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SAVE_PATH_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPathInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SAVE_PATH_CFG), + "::", + stringify!(struPathInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 796usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SAVE_PATH_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_SAVE_PATH_CFG = tagNET_VCA_SAVE_PATH_CFG; +pub type LPNET_VCA_SAVE_PATH_CFG = *mut tagNET_VCA_SAVE_PATH_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEV_ACCESS_CFG { + pub dwSize: DWORD, + pub struIP: NET_DVR_IPADDR, + pub wDevicePort: WORD, + pub byEnable: BYTE, + pub byRes1: BYTE, + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub byRes2: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEV_ACCESS_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEV_ACCESS_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEV_ACCESS_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_ACCESS_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_ACCESS_CFG), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevicePort) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_ACCESS_CFG), + "::", + stringify!(wDevicePort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_ACCESS_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 151usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_ACCESS_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_ACCESS_CFG), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_ACCESS_CFG), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_ACCESS_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DEV_ACCESS_CFG = tagNET_DVR_DEV_ACCESS_CFG; +pub type LPNET_DVR_DEV_ACCESS_CFG = *mut tagNET_DVR_DEV_ACCESS_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DISPWINDOWMODE { + pub byDispChanType: BYTE, + pub byDispChanSeq: BYTE, + pub byRes: [BYTE; 2usize], + pub byDispMode: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DISPWINDOWMODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_DISPWINDOWMODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DISPWINDOWMODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispChanType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPWINDOWMODE), + "::", + stringify!(byDispChanType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispChanSeq) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPWINDOWMODE), + "::", + stringify!(byDispChanSeq) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPWINDOWMODE), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPWINDOWMODE), + "::", + stringify!(byDispMode) + ) + ); +} +pub type NET_DVR_DISPWINDOWMODE = tagNET_DVR_DISPWINDOWMODE; +pub type LPNET_DVR_DISPWINDOWMODE = *mut tagNET_DVR_DISPWINDOWMODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DISPINFO { + pub byChanNums: BYTE, + pub byStartChan: BYTE, + pub byRes: [BYTE; 2usize], + pub dwSupportResolution: [DWORD; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DISPINFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_DISPINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DISPINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanNums) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPINFO), + "::", + stringify!(byChanNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartChan) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPINFO), + "::", + stringify!(byStartChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPINFO), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSupportResolution) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPINFO), + "::", + stringify!(dwSupportResolution) + ) + ); +} +pub type NET_DVR_DISPINFO = tagNET_DVR_DISPINFO; +pub type LPNET_DVR_DISPINFO = *mut tagNET_DVR_DISPINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCREENINFO { + pub bySupportBigScreenNums: BYTE, + pub byStartBigScreenNum: BYTE, + pub byMaxScreenX: BYTE, + pub byMaxScreenY: BYTE, + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREENINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREENINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREENINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportBigScreenNums) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENINFO), + "::", + stringify!(bySupportBigScreenNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartBigScreenNum) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENINFO), + "::", + stringify!(byStartBigScreenNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMaxScreenX) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENINFO), + "::", + stringify!(byMaxScreenX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMaxScreenY) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENINFO), + "::", + stringify!(byMaxScreenY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCREENINFO = tagNET_DVR_SCREENINFO; +pub type LPNET_DVR_SCREENINFO = *mut tagNET_DVR_SCREENINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SDI_INFO { + pub byChanNums: BYTE, + pub byStartChan: BYTE, + pub byRes: [BYTE; 2usize], + pub dwSupportResolution: [DWORD; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SDI_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_SDI_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SDI_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanNums) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SDI_INFO), + "::", + stringify!(byChanNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartChan) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SDI_INFO), + "::", + stringify!(byStartChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SDI_INFO), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSupportResolution) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SDI_INFO), + "::", + stringify!(dwSupportResolution) + ) + ); +} +pub type NET_DVR_SDI_INFO = tagNET_DVR_SDI_INFO; +pub type LPNET_DVR_SDI_INFO = *mut tagNET_DVR_SDI_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIX_ABILITY_V41 { + pub dwSize: DWORD, + pub byDspNums: BYTE, + pub byDecChanNums: BYTE, + pub byStartChan: BYTE, + pub byRes1: [BYTE; 5usize], + pub struVgaInfo: NET_DVR_DISPINFO, + pub struBncInfo: NET_DVR_DISPINFO, + pub struHdmiInfo: NET_DVR_DISPINFO, + pub struDviInfo: NET_DVR_DISPINFO, + pub struDispMode: [NET_DVR_DISPWINDOWMODE; 32usize], + pub struBigScreenInfo: NET_DVR_SCREENINFO, + pub bySupportAutoReboot: BYTE, + pub byRes2: [BYTE; 3usize], + pub struSDIInfo: NET_DVR_SDI_INFO, + pub byRes3: [BYTE; 48usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_ABILITY_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1184usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIX_ABILITY_V41)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIX_ABILITY_V41)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY_V41), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDspNums) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY_V41), + "::", + stringify!(byDspNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecChanNums) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY_V41), + "::", + stringify!(byDecChanNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartChan) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY_V41), + "::", + stringify!(byStartChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY_V41), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVgaInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY_V41), + "::", + stringify!(struVgaInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBncInfo) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY_V41), + "::", + stringify!(struBncInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHdmiInfo) as usize - ptr as usize }, + 276usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY_V41), + "::", + stringify!(struHdmiInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDviInfo) as usize - ptr as usize }, + 408usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY_V41), + "::", + stringify!(struDviInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDispMode) as usize - ptr as usize }, + 540usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY_V41), + "::", + stringify!(struDispMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBigScreenInfo) as usize - ptr as usize }, + 1052usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY_V41), + "::", + stringify!(struBigScreenInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportAutoReboot) as usize - ptr as usize }, + 1064usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY_V41), + "::", + stringify!(bySupportAutoReboot) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1065usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY_V41), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSDIInfo) as usize - ptr as usize }, + 1068usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY_V41), + "::", + stringify!(struSDIInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 1136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ABILITY_V41), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_MATRIX_ABILITY_V41 = tagNET_DVR_MATRIX_ABILITY_V41; +pub type LPNET_DVR_MATRIX_ABILITY_V41 = *mut tagNET_DVR_MATRIX_ABILITY_V41; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_VIDEO_PLATFORM { + pub byRes: [BYTE; 160usize], + pub struVideoPlatform: tagNET_DVR_VIDEO_PLATFORM__bindgen_ty_1, + pub struNotVideoPlatform: tagNET_DVR_VIDEO_PLATFORM__bindgen_ty_2, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIDEO_PLATFORM__bindgen_ty_1 { + pub byJoinDecoderId: [BYTE; 36usize], + pub byDecResolution: [BYTE; 36usize], + pub struPosition: NET_DVR_RECTCFG, + pub byRes: [BYTE; 80usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEO_PLATFORM__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 160usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_VIDEO_PLATFORM__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VIDEO_PLATFORM__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJoinDecoderId) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_PLATFORM__bindgen_ty_1), + "::", + stringify!(byJoinDecoderId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecResolution) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_PLATFORM__bindgen_ty_1), + "::", + stringify!(byDecResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPosition) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_PLATFORM__bindgen_ty_1), + "::", + stringify!(struPosition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_PLATFORM__bindgen_ty_1), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIDEO_PLATFORM__bindgen_ty_2 { + pub byRes: [BYTE; 160usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEO_PLATFORM__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 160usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_VIDEO_PLATFORM__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VIDEO_PLATFORM__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_PLATFORM__bindgen_ty_2), + "::", + stringify!(byRes) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEO_PLATFORM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 160usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEO_PLATFORM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VIDEO_PLATFORM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_PLATFORM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVideoPlatform) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_PLATFORM), + "::", + stringify!(struVideoPlatform) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNotVideoPlatform) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_PLATFORM), + "::", + stringify!(struNotVideoPlatform) + ) + ); +} +pub type NET_DVR_VIDEO_PLATFORM = tagNET_DVR_VIDEO_PLATFORM; +pub type LPNET_DVR_VIDEO_PLATFORM = tagNET_DVR_VIDEO_PLATFORM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_MATRIX_VOUTCFG { + pub dwSize: DWORD, + pub byAudio: BYTE, + pub byAudioWindowIdx: BYTE, + pub byDispChanType: BYTE, + pub byVedioFormat: BYTE, + pub dwResolution: DWORD, + pub dwWindowMode: DWORD, + pub byJoinDecChan: [BYTE; 36usize], + pub byEnlargeStatus: BYTE, + pub byEnlargeSubWindowIndex: BYTE, + pub byScale: BYTE, + pub byUnionType: BYTE, + pub struDiff: NET_DVR_VIDEO_PLATFORM, + pub dwDispChanNum: DWORD, + pub wLEDWidth: WORD, + pub wLEDHeight: WORD, + pub byEnableVideoEffect: BYTE, + pub byRes: [BYTE; 3usize], + pub struVideoEffect: NET_DVR_VIDEOEFFECT, + pub byRes2: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_VOUTCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 296usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIX_VOUTCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIX_VOUTCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_VOUTCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudio) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_VOUTCFG), + "::", + stringify!(byAudio) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioWindowIdx) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_VOUTCFG), + "::", + stringify!(byAudioWindowIdx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispChanType) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_VOUTCFG), + "::", + stringify!(byDispChanType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVedioFormat) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_VOUTCFG), + "::", + stringify!(byVedioFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwResolution) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_VOUTCFG), + "::", + stringify!(dwResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWindowMode) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_VOUTCFG), + "::", + stringify!(dwWindowMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJoinDecChan) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_VOUTCFG), + "::", + stringify!(byJoinDecChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnlargeStatus) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_VOUTCFG), + "::", + stringify!(byEnlargeStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnlargeSubWindowIndex) as usize - ptr as usize }, + 53usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_VOUTCFG), + "::", + stringify!(byEnlargeSubWindowIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScale) as usize - ptr as usize }, + 54usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_VOUTCFG), + "::", + stringify!(byScale) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUnionType) as usize - ptr as usize }, + 55usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_VOUTCFG), + "::", + stringify!(byUnionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDiff) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_VOUTCFG), + "::", + stringify!(struDiff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDispChanNum) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_VOUTCFG), + "::", + stringify!(dwDispChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLEDWidth) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_VOUTCFG), + "::", + stringify!(wLEDWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLEDHeight) as usize - ptr as usize }, + 222usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_VOUTCFG), + "::", + stringify!(wLEDHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableVideoEffect) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_VOUTCFG), + "::", + stringify!(byEnableVideoEffect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 225usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_VOUTCFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVideoEffect) as usize - ptr as usize }, + 228usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_VOUTCFG), + "::", + stringify!(struVideoEffect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 236usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_VOUTCFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_MATRIX_VOUTCFG = tagNET_DVR_MATRIX_VOUTCFG; +pub type LPNET_DVR_MATRIX_VOUTCFG = *mut tagNET_DVR_MATRIX_VOUTCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DISP_CHAN_STATUS_V41 { + pub byDispStatus: BYTE, + pub byBVGA: BYTE, + pub byVideoFormat: BYTE, + pub byWindowMode: BYTE, + pub byJoinDecChan: [BYTE; 36usize], + pub byFpsDisp: [BYTE; 36usize], + pub byScreenMode: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwDispChan: DWORD, + pub byRes2: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DISP_CHAN_STATUS_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 108usize, + concat!("Size of: ", stringify!(tagNET_DVR_DISP_CHAN_STATUS_V41)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DISP_CHAN_STATUS_V41)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispStatus) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_CHAN_STATUS_V41), + "::", + stringify!(byDispStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBVGA) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_CHAN_STATUS_V41), + "::", + stringify!(byBVGA) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoFormat) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_CHAN_STATUS_V41), + "::", + stringify!(byVideoFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWindowMode) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_CHAN_STATUS_V41), + "::", + stringify!(byWindowMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJoinDecChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_CHAN_STATUS_V41), + "::", + stringify!(byJoinDecChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFpsDisp) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_CHAN_STATUS_V41), + "::", + stringify!(byFpsDisp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScreenMode) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_CHAN_STATUS_V41), + "::", + stringify!(byScreenMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 77usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_CHAN_STATUS_V41), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDispChan) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_CHAN_STATUS_V41), + "::", + stringify!(dwDispChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_CHAN_STATUS_V41), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DISP_CHAN_STATUS_V41 = tagNET_DVR_DISP_CHAN_STATUS_V41; +pub type LPNET_DVR_DISP_CHAN_STATUS_V41 = *mut tagNET_DVR_DISP_CHAN_STATUS_V41; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DECODER_WORK_STATUS_V41 { + pub dwSize: DWORD, + pub struDecChanStatus: [NET_DVR_MATRIX_CHAN_STATUS; 32usize], + pub struDispChanStatus: [NET_DVR_DISP_CHAN_STATUS_V41; 32usize], + pub byAlarmInStatus: [BYTE; 32usize], + pub byAlarmOutStatus: [BYTE; 32usize], + pub byAudioInChanStatus: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DECODER_WORK_STATUS_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 5316usize, + concat!("Size of: ", stringify!(tagNET_DVR_DECODER_WORK_STATUS_V41)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_DECODER_WORK_STATUS_V41) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODER_WORK_STATUS_V41), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDecChanStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODER_WORK_STATUS_V41), + "::", + stringify!(struDecChanStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDispChanStatus) as usize - ptr as usize }, + 1668usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODER_WORK_STATUS_V41), + "::", + stringify!(struDispChanStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInStatus) as usize - ptr as usize }, + 5124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODER_WORK_STATUS_V41), + "::", + stringify!(byAlarmInStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutStatus) as usize - ptr as usize }, + 5156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODER_WORK_STATUS_V41), + "::", + stringify!(byAlarmOutStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioInChanStatus) as usize - ptr as usize }, + 5188usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODER_WORK_STATUS_V41), + "::", + stringify!(byAudioInChanStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5189usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODER_WORK_STATUS_V41), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DECODER_WORK_STATUS_V41 = tagNET_DVR_DECODER_WORK_STATUS_V41; +pub type LPNET_DVR_DECODER_WORK_STATUS_V41 = *mut tagNET_DVR_DECODER_WORK_STATUS_V41; +#[doc = "�ļ��ط�-Զ�\u{33b}ط�����"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V41 { + pub dwSize: DWORD, + pub struIP: NET_DVR_IPADDR, + pub wDVRPort: WORD, + pub byChannel: BYTE, + pub byReserve: BYTE, + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub dwPlayMode: DWORD, + pub StartTime: NET_DVR_TIME, + pub StopTime: NET_DVR_TIME, + pub sFileName: [::std::os::raw::c_char; 128usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 444usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V41) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V41) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V41), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V41), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDVRPort) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V41), + "::", + stringify!(wDVRPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V41), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReserve) as usize - ptr as usize }, + 151usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V41), + "::", + stringify!(byReserve) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V41), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V41), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlayMode) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V41), + "::", + stringify!(dwPlayMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).StartTime) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V41), + "::", + stringify!(StartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).StopTime) as usize - ptr as usize }, + 228usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V41), + "::", + stringify!(StopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 252usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V41), + "::", + stringify!(sFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 380usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V41), + "::", + stringify!(byRes) + ) + ); +} +#[doc = "�ļ��ط�-Զ�\u{33b}ط�����"] +pub type NET_DVR_MATRIX_DEC_REMOTE_PLAY_V41 = tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V41; +#[doc = "�ļ��ط�-Զ�\u{33b}ط�����"] +pub type LPNET_DVR_MATRIX_DEC_REMOTE_PLAY_V41 = *mut tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V41; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECTCFG_SCENE { + pub wXCoordinate: WORD, + pub wYCoordinate: WORD, + pub wWidth: WORD, + pub wHeight: WORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECTCFG_SCENE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_RECTCFG_SCENE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RECTCFG_SCENE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wXCoordinate) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECTCFG_SCENE), + "::", + stringify!(wXCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wYCoordinate) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECTCFG_SCENE), + "::", + stringify!(wYCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wWidth) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECTCFG_SCENE), + "::", + stringify!(wWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHeight) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECTCFG_SCENE), + "::", + stringify!(wHeight) + ) + ); +} +pub type NET_DVR_RECTCFG_SCENE = tagNET_DVR_RECTCFG_SCENE; +pub type LPNET_DVR_RECTCFGSCENE = *mut tagNET_DVR_RECTCFG_SCENE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCENEDISPCFG { + pub byEnable: BYTE, + pub bySoltNum: BYTE, + pub byRes1: [BYTE; 2usize], + pub byDispChanNum: BYTE, + pub byAudio: BYTE, + pub byAudioWindowIdx: BYTE, + pub byVedioFormat: BYTE, + pub byWindowMode: BYTE, + pub byEnlargeStatus: BYTE, + pub byEnlargeSubWindowIndex: BYTE, + pub byScale: BYTE, + pub dwResolution: DWORD, + pub byJoinDecChan: [BYTE; 36usize], + pub byJoinDecoderId: [BYTE; 36usize], + pub byDecResolution: [BYTE; 36usize], + pub byRow: BYTE, + pub byColumn: BYTE, + pub byRes2: [BYTE; 5usize], + pub struDisp: NET_DVR_RECTCFG, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCENEDISPCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 140usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCENEDISPCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCENEDISPCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENEDISPCFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySoltNum) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENEDISPCFG), + "::", + stringify!(bySoltNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENEDISPCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispChanNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENEDISPCFG), + "::", + stringify!(byDispChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudio) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENEDISPCFG), + "::", + stringify!(byAudio) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioWindowIdx) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENEDISPCFG), + "::", + stringify!(byAudioWindowIdx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVedioFormat) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENEDISPCFG), + "::", + stringify!(byVedioFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWindowMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENEDISPCFG), + "::", + stringify!(byWindowMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnlargeStatus) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENEDISPCFG), + "::", + stringify!(byEnlargeStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnlargeSubWindowIndex) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENEDISPCFG), + "::", + stringify!(byEnlargeSubWindowIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScale) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENEDISPCFG), + "::", + stringify!(byScale) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwResolution) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENEDISPCFG), + "::", + stringify!(dwResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJoinDecChan) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENEDISPCFG), + "::", + stringify!(byJoinDecChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJoinDecoderId) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENEDISPCFG), + "::", + stringify!(byJoinDecoderId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecResolution) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENEDISPCFG), + "::", + stringify!(byDecResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRow) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENEDISPCFG), + "::", + stringify!(byRow) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byColumn) as usize - ptr as usize }, + 125usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENEDISPCFG), + "::", + stringify!(byColumn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 126usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENEDISPCFG), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDisp) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENEDISPCFG), + "::", + stringify!(struDisp) + ) + ); +} +pub type NET_DVR_SCENEDISPCFG = tagNET_DVR_SCENEDISPCFG; +pub type LPNET_DVR_SCENEDISPCFG = *mut tagNET_DVR_SCENEDISPCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagDEV_CHAN_INFO_SCENE { + pub struIP: NET_DVR_IPADDR, + pub wDVRPort: WORD, + pub byChannel: BYTE, + pub byTransProtocol: BYTE, + pub byTransMode: BYTE, + pub byFactoryType: BYTE, + pub byDeviceType: BYTE, + pub byRes: [BYTE; 5usize], + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagDEV_CHAN_INFO_SCENE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 204usize, + concat!("Size of: ", stringify!(tagDEV_CHAN_INFO_SCENE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagDEV_CHAN_INFO_SCENE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagDEV_CHAN_INFO_SCENE), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDVRPort) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagDEV_CHAN_INFO_SCENE), + "::", + stringify!(wDVRPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 146usize, + concat!( + "Offset of field: ", + stringify!(tagDEV_CHAN_INFO_SCENE), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransProtocol) as usize - ptr as usize }, + 147usize, + concat!( + "Offset of field: ", + stringify!(tagDEV_CHAN_INFO_SCENE), + "::", + stringify!(byTransProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransMode) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagDEV_CHAN_INFO_SCENE), + "::", + stringify!(byTransMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFactoryType) as usize - ptr as usize }, + 149usize, + concat!( + "Offset of field: ", + stringify!(tagDEV_CHAN_INFO_SCENE), + "::", + stringify!(byFactoryType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceType) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagDEV_CHAN_INFO_SCENE), + "::", + stringify!(byDeviceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 151usize, + concat!( + "Offset of field: ", + stringify!(tagDEV_CHAN_INFO_SCENE), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagDEV_CHAN_INFO_SCENE), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(tagDEV_CHAN_INFO_SCENE), + "::", + stringify!(sPassword) + ) + ); +} +pub type NET_DVR_DEV_CHAN_INFO_SCENE = tagDEV_CHAN_INFO_SCENE; +pub type LPNET_DVR_DEV_CHAN_INFO_SCENE = *mut tagDEV_CHAN_INFO_SCENE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagSTREAM_MEDIA_SERVER_CFG_SCENE { + pub byValid: BYTE, + pub byRes1: [BYTE; 3usize], + pub struDevIP: NET_DVR_IPADDR, + pub wDevPort: WORD, + pub byTransmitType: BYTE, + pub byRes2: [BYTE; 5usize], +} +#[test] +fn bindgen_test_layout_tagSTREAM_MEDIA_SERVER_CFG_SCENE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 156usize, + concat!("Size of: ", stringify!(tagSTREAM_MEDIA_SERVER_CFG_SCENE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagSTREAM_MEDIA_SERVER_CFG_SCENE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagSTREAM_MEDIA_SERVER_CFG_SCENE), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagSTREAM_MEDIA_SERVER_CFG_SCENE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagSTREAM_MEDIA_SERVER_CFG_SCENE), + "::", + stringify!(struDevIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevPort) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagSTREAM_MEDIA_SERVER_CFG_SCENE), + "::", + stringify!(wDevPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransmitType) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagSTREAM_MEDIA_SERVER_CFG_SCENE), + "::", + stringify!(byTransmitType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 151usize, + concat!( + "Offset of field: ", + stringify!(tagSTREAM_MEDIA_SERVER_CFG_SCENE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_STREAM_MEDIA_SERVER_CFG_SCENE = tagSTREAM_MEDIA_SERVER_CFG_SCENE; +pub type LPNET_DVR_STREAM_MEDIA_SERVER_CFG_SCENE = *mut tagSTREAM_MEDIA_SERVER_CFG_SCENE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagPU_STREAM_CFG_SCENE { + pub streamMediaServerCfg: NET_DVR_STREAM_MEDIA_SERVER_CFG_SCENE, + pub struDevChanInfo: NET_DVR_DEV_CHAN_INFO_SCENE, +} +#[test] +fn bindgen_test_layout_tagPU_STREAM_CFG_SCENE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 360usize, + concat!("Size of: ", stringify!(tagPU_STREAM_CFG_SCENE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagPU_STREAM_CFG_SCENE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).streamMediaServerCfg) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagPU_STREAM_CFG_SCENE), + "::", + stringify!(streamMediaServerCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevChanInfo) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagPU_STREAM_CFG_SCENE), + "::", + stringify!(struDevChanInfo) + ) + ); +} +pub type NET_DVR_PU_STREAM_CFG_SCENE = tagPU_STREAM_CFG_SCENE; +pub type LPNET_DVR_PU_STREAM_CFG_SCENE = *mut tagPU_STREAM_CFG_SCENE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CYC_SUR_CHAN_ELE_SCENE { + pub byEnable: BYTE, + pub byRes: [BYTE; 3usize], + pub struStreamMediaSvrCfg: NET_DVR_STREAM_MEDIA_SERVER_CFG_SCENE, + pub struDecChanInfo: NET_DVR_DEV_CHAN_INFO_SCENE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CYC_SUR_CHAN_ELE_SCENE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 364usize, + concat!("Size of: ", stringify!(tagNET_DVR_CYC_SUR_CHAN_ELE_SCENE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_CYC_SUR_CHAN_ELE_SCENE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CYC_SUR_CHAN_ELE_SCENE), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CYC_SUR_CHAN_ELE_SCENE), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamMediaSvrCfg) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CYC_SUR_CHAN_ELE_SCENE), + "::", + stringify!(struStreamMediaSvrCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDecChanInfo) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CYC_SUR_CHAN_ELE_SCENE), + "::", + stringify!(struDecChanInfo) + ) + ); +} +pub type NET_DVR_CYC_SUR_CHAN_ELE_SCENE = tagNET_DVR_CYC_SUR_CHAN_ELE_SCENE; +pub type LPNET_DVR_CYC_SUR_CHAN_ELE_SCENE = *mut tagNET_DVR_CYC_SUR_CHAN_ELE_SCENE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIX_LOOP_DECINFO_SCENE { + pub wPoolTime: WORD, + pub byRes1: [BYTE; 2usize], + pub struChanArray: [NET_DVR_CYC_SUR_CHAN_ELE_SCENE; 16usize], + pub byRes2: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_LOOP_DECINFO_SCENE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 5832usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_MATRIX_LOOP_DECINFO_SCENE) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MATRIX_LOOP_DECINFO_SCENE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPoolTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_LOOP_DECINFO_SCENE), + "::", + stringify!(wPoolTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_LOOP_DECINFO_SCENE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struChanArray) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_LOOP_DECINFO_SCENE), + "::", + stringify!(struChanArray) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 5828usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_LOOP_DECINFO_SCENE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_MATRIX_LOOP_DECINFO_SCENE = tagNET_DVR_MATRIX_LOOP_DECINFO_SCENE; +pub type LPNET_DVR_MATRIX_LOOP_DECINFO_SCENE = *mut tagNET_DVR_MATRIX_LOOP_DECINFO_SCENE; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_DECODECHANCFG_SCENE { + pub byDecodeEnable: BYTE, + pub bySlotNum: BYTE, + pub byDecChan: BYTE, + pub byJointAllDecodeChan: BYTE, + pub byJointSlotNum: BYTE, + pub byJointChanNum: BYTE, + pub byRes: [BYTE; 2usize], + pub struDecCfg: tagNET_DVR_DECODECHANCFG_SCENE__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_DECODECHANCFG_SCENE__bindgen_ty_1 { + pub struSceneDynamicDecCfg: NET_DVR_PU_STREAM_CFG_SCENE, + pub struSceneCycDecCfg: NET_DVR_MATRIX_LOOP_DECINFO_SCENE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DECODECHANCFG_SCENE__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 5832usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_DECODECHANCFG_SCENE__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_DECODECHANCFG_SCENE__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSceneDynamicDecCfg) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODECHANCFG_SCENE__bindgen_ty_1), + "::", + stringify!(struSceneDynamicDecCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSceneCycDecCfg) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODECHANCFG_SCENE__bindgen_ty_1), + "::", + stringify!(struSceneCycDecCfg) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DECODECHANCFG_SCENE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 5840usize, + concat!("Size of: ", stringify!(tagNET_DVR_DECODECHANCFG_SCENE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DECODECHANCFG_SCENE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecodeEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODECHANCFG_SCENE), + "::", + stringify!(byDecodeEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySlotNum) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODECHANCFG_SCENE), + "::", + stringify!(bySlotNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecChan) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODECHANCFG_SCENE), + "::", + stringify!(byDecChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJointAllDecodeChan) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODECHANCFG_SCENE), + "::", + stringify!(byJointAllDecodeChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJointSlotNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODECHANCFG_SCENE), + "::", + stringify!(byJointSlotNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJointChanNum) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODECHANCFG_SCENE), + "::", + stringify!(byJointChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODECHANCFG_SCENE), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDecCfg) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODECHANCFG_SCENE), + "::", + stringify!(struDecCfg) + ) + ); +} +pub type NET_DVR_DECODECHANCFG_SCENE = tagNET_DVR_DECODECHANCFG_SCENE; +pub type LPNET_DVR_DECODECHANCFG_SCENE = *mut tagNET_DVR_DECODECHANCFG_SCENE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BIGSCREENCFG_SCENE { + pub byAllValid: BYTE, + pub byAssociateBaseMap: BYTE, + pub byEnableSpartan: BYTE, + pub byRes: BYTE, + pub struWinCfg: [NET_DVR_WINCFG; 32usize], + pub struBigScreen: NET_DVR_BIGSCREENCFG, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BIGSCREENCFG_SCENE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2516usize, + concat!("Size of: ", stringify!(tagNET_DVR_BIGSCREENCFG_SCENE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BIGSCREENCFG_SCENE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAllValid) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIGSCREENCFG_SCENE), + "::", + stringify!(byAllValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAssociateBaseMap) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIGSCREENCFG_SCENE), + "::", + stringify!(byAssociateBaseMap) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableSpartan) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIGSCREENCFG_SCENE), + "::", + stringify!(byEnableSpartan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIGSCREENCFG_SCENE), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWinCfg) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIGSCREENCFG_SCENE), + "::", + stringify!(struWinCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBigScreen) as usize - ptr as usize }, + 1284usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIGSCREENCFG_SCENE), + "::", + stringify!(struBigScreen) + ) + ); +} +pub type NET_DVR_BIGSCREENCFG_SCENE = tagNET_DVR_BIGSCREENCFG_SCENE; +pub type LPNET_DVR_BIGSCREENCFG_SCENE = *mut tagNET_DVR_BIGSCREENCFG_SCENE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIX_SCENECFG { + pub dwSize: DWORD, + pub sSceneName: [BYTE; 32usize], + pub byBigScreenNums: BYTE, + pub byRes1: [BYTE; 3usize], + pub wDecChanNums: WORD, + pub wDispChanNums: WORD, + pub byRes2: [BYTE; 12usize], + pub pBigScreenBuffer: *mut BYTE, + pub pDecChanBuffer: *mut BYTE, + pub pDispChanBuffer: *mut BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_SCENECFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIX_SCENECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIX_SCENECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SCENECFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSceneName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SCENECFG), + "::", + stringify!(sSceneName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBigScreenNums) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SCENECFG), + "::", + stringify!(byBigScreenNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SCENECFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDecChanNums) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SCENECFG), + "::", + stringify!(wDecChanNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDispChanNums) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SCENECFG), + "::", + stringify!(wDispChanNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SCENECFG), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBigScreenBuffer) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SCENECFG), + "::", + stringify!(pBigScreenBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pDecChanBuffer) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SCENECFG), + "::", + stringify!(pDecChanBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pDispChanBuffer) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SCENECFG), + "::", + stringify!(pDispChanBuffer) + ) + ); +} +pub type NET_DVR_MATRIX_SCENECFG = tagNET_DVR_MATRIX_SCENECFG; +pub type LPNET_DVR_MATRIX_SCENECFG = *mut tagNET_DVR_MATRIX_SCENECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BIGSCREENASSOCIATECFG { + pub dwSize: DWORD, + pub byEnableBaseMap: BYTE, + pub byAssociateBaseMap: BYTE, + pub byEnableSpartan: BYTE, + pub byRes: [BYTE; 21usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BIGSCREENASSOCIATECFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28usize, + concat!("Size of: ", stringify!(tagNET_DVR_BIGSCREENASSOCIATECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_BIGSCREENASSOCIATECFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIGSCREENASSOCIATECFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableBaseMap) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIGSCREENASSOCIATECFG), + "::", + stringify!(byEnableBaseMap) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAssociateBaseMap) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIGSCREENASSOCIATECFG), + "::", + stringify!(byAssociateBaseMap) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableSpartan) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIGSCREENASSOCIATECFG), + "::", + stringify!(byEnableSpartan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIGSCREENASSOCIATECFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BIGSCREENASSOCIATECFG = tagNET_DVR_BIGSCREENASSOCIATECFG; +pub type LPNET_DVR_BIGSCREENASSOCIATECFG = *mut tagNET_DVR_BIGSCREENASSOCIATECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCREEN_WINCFG { + pub dwSize: DWORD, + pub byVaild: BYTE, + pub byInputType: BYTE, + pub wInputIdx: WORD, + pub dwLayerIdx: DWORD, + pub struWin: NET_DVR_RECTCFG, + pub byWndIndex: BYTE, + pub byCBD: BYTE, + pub bySubWnd: BYTE, + pub byRes1: BYTE, + pub dwDeviceIndex: DWORD, + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEN_WINCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEN_WINCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREEN_WINCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_WINCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVaild) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_WINCFG), + "::", + stringify!(byVaild) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInputType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_WINCFG), + "::", + stringify!(byInputType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInputIdx) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_WINCFG), + "::", + stringify!(wInputIdx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLayerIdx) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_WINCFG), + "::", + stringify!(dwLayerIdx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWin) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_WINCFG), + "::", + stringify!(struWin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWndIndex) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_WINCFG), + "::", + stringify!(byWndIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCBD) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_WINCFG), + "::", + stringify!(byCBD) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubWnd) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_WINCFG), + "::", + stringify!(bySubWnd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 23usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_WINCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeviceIndex) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_WINCFG), + "::", + stringify!(dwDeviceIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_WINCFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SCREEN_WINCFG = tagNET_DVR_SCREEN_WINCFG; +pub type LPNET_DVR_SCREEN_WINCFG = *mut tagNET_DVR_SCREEN_WINCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WINLIST { + pub dwSize: DWORD, + pub wScreenSeq: WORD, + pub byRes: [BYTE; 10usize], + pub dwWinNum: DWORD, + pub pBuffer: *mut BYTE, + pub dwBufLen: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WINLIST() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_WINLIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WINLIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WINLIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wScreenSeq) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WINLIST), + "::", + stringify!(wScreenSeq) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WINLIST), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWinNum) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WINLIST), + "::", + stringify!(dwWinNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WINLIST), + "::", + stringify!(pBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBufLen) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WINLIST), + "::", + stringify!(dwBufLen) + ) + ); +} +pub type NET_DVR_WINLIST = tagNET_DVR_WINLIST; +pub type LPNET_DVR_WINLIST = *mut tagNET_DVR_WINLIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LAYOUTCFG { + pub dwSize: DWORD, + pub byValid: BYTE, + pub byRes1: [BYTE; 3usize], + pub byLayoutName: [BYTE; 32usize], + pub struWinCfg: [NET_DVR_SCREEN_WINCFG; 224usize], + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LAYOUTCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 9912usize, + concat!("Size of: ", stringify!(tagNET_DVR_LAYOUTCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LAYOUTCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAYOUTCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAYOUTCFG), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAYOUTCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLayoutName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAYOUTCFG), + "::", + stringify!(byLayoutName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWinCfg) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAYOUTCFG), + "::", + stringify!(struWinCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 9896usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAYOUTCFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_LAYOUTCFG = tagNET_DVR_LAYOUTCFG; +pub type LPNET_DVR_LAYOUTCFG = *mut tagNET_DVR_LAYOUTCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LAYOUT_LIST { + pub dwSize: DWORD, + pub struLayoutInfo: [NET_DVR_LAYOUTCFG; 16usize], + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LAYOUT_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 158600usize, + concat!("Size of: ", stringify!(tagNET_DVR_LAYOUT_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LAYOUT_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAYOUT_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLayoutInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAYOUT_LIST), + "::", + stringify!(struLayoutInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 158596usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAYOUT_LIST), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LAYOUT_LIST = tagNET_DVR_LAYOUT_LIST; +pub type LPNET_DVR_LAYOUT_LIST = *mut tagNET_DVR_LAYOUT_LIST; +pub const tagNET_DVR_CAM_MODE_NET_DVR_UNKNOW: tagNET_DVR_CAM_MODE = 0; +pub const tagNET_DVR_CAM_MODE_NET_DVR_CAM_BNC: tagNET_DVR_CAM_MODE = 1; +pub const tagNET_DVR_CAM_MODE_NET_DVR_CAM_VGA: tagNET_DVR_CAM_MODE = 2; +pub const tagNET_DVR_CAM_MODE_NET_DVR_CAM_DVI: tagNET_DVR_CAM_MODE = 3; +pub const tagNET_DVR_CAM_MODE_NET_DVR_CAM_HDMI: tagNET_DVR_CAM_MODE = 4; +pub const tagNET_DVR_CAM_MODE_NET_DVR_CAM_IP: tagNET_DVR_CAM_MODE = 5; +pub const tagNET_DVR_CAM_MODE_NET_DVR_CAM_RGB: tagNET_DVR_CAM_MODE = 6; +pub const tagNET_DVR_CAM_MODE_NET_DVR_CAM_DECODER: tagNET_DVR_CAM_MODE = 7; +pub const tagNET_DVR_CAM_MODE_NET_DVR_CAM_MATRIX: tagNET_DVR_CAM_MODE = 8; +pub const tagNET_DVR_CAM_MODE_NET_DVR_CAM_YPBPR: tagNET_DVR_CAM_MODE = 9; +pub const tagNET_DVR_CAM_MODE_NET_DVR_CAM_USB: tagNET_DVR_CAM_MODE = 10; +pub const tagNET_DVR_CAM_MODE_NET_DVR_CAM_SDI: tagNET_DVR_CAM_MODE = 11; +pub const tagNET_DVR_CAM_MODE_NET_DVR_CAM_HDI: tagNET_DVR_CAM_MODE = 12; +pub const tagNET_DVR_CAM_MODE_NET_DVR_CAM_DP: tagNET_DVR_CAM_MODE = 13; +pub const tagNET_DVR_CAM_MODE_NET_DVR_CAM_HDTVI: tagNET_DVR_CAM_MODE = 14; +pub const tagNET_DVR_CAM_MODE_NET_DVR_CAM_JOINT: tagNET_DVR_CAM_MODE = 15; +pub const tagNET_DVR_CAM_MODE_NET_DVR_CAM_HDBASET: tagNET_DVR_CAM_MODE = 16; +pub const tagNET_DVR_CAM_MODE_NET_DVR_CAM_DVIT: tagNET_DVR_CAM_MODE = 17; +pub const tagNET_DVR_CAM_MODE_NET_DVR_CAM_FUSION: tagNET_DVR_CAM_MODE = 18; +pub const tagNET_DVR_CAM_MODE_NET_DVR_CAM_VSCREEN: tagNET_DVR_CAM_MODE = 19; +pub const tagNET_DVR_CAM_MODE_NET_DVR_CAM_FIBER: tagNET_DVR_CAM_MODE = 20; +pub const tagNET_DVR_CAM_MODE_NET_DVR_CAM_3GSDI: tagNET_DVR_CAM_MODE = 21; +pub const tagNET_DVR_CAM_MODE_NET_DVR_CAM_DISTRIBUTED_IP: tagNET_DVR_CAM_MODE = 22; +pub const tagNET_DVR_CAM_MODE_NET_DVR_CAM_JONIT_X86: tagNET_DVR_CAM_MODE = 23; +pub const tagNET_DVR_CAM_MODE_NET_DVR_CAM_TVI: tagNET_DVR_CAM_MODE = 24; +pub type tagNET_DVR_CAM_MODE = ::std::os::raw::c_uint; +pub use self::tagNET_DVR_CAM_MODE as NET_DVR_CAM_MODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INPUTSTREAMCFG { + pub dwSize: DWORD, + pub byValid: BYTE, + pub byCamMode: BYTE, + pub wInputNo: WORD, + pub sCamName: [BYTE; 32usize], + pub struVideoEffect: NET_DVR_VIDEOEFFECT, + pub struPuStream: NET_DVR_PU_STREAM_CFG, + pub wBoardNum: WORD, + pub wInputIdxOnBoard: WORD, + pub dwResolution: DWORD, + pub byVideoFormat: BYTE, + pub byStatus: BYTE, + pub sGroupName: [BYTE; 32usize], + pub byJointMatrix: BYTE, + pub byRes: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INPUTSTREAMCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 584usize, + concat!("Size of: ", stringify!(tagNET_DVR_INPUTSTREAMCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INPUTSTREAMCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCamMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG), + "::", + stringify!(byCamMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInputNo) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG), + "::", + stringify!(wInputNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCamName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG), + "::", + stringify!(sCamName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVideoEffect) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG), + "::", + stringify!(struVideoEffect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPuStream) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG), + "::", + stringify!(struPuStream) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBoardNum) as usize - ptr as usize }, + 540usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG), + "::", + stringify!(wBoardNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInputIdxOnBoard) as usize - ptr as usize }, + 542usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG), + "::", + stringify!(wInputIdxOnBoard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwResolution) as usize - ptr as usize }, + 544usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG), + "::", + stringify!(dwResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoFormat) as usize - ptr as usize }, + 548usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG), + "::", + stringify!(byVideoFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 549usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sGroupName) as usize - ptr as usize }, + 550usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG), + "::", + stringify!(sGroupName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJointMatrix) as usize - ptr as usize }, + 582usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG), + "::", + stringify!(byJointMatrix) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 583usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INPUTSTREAMCFG = tagNET_DVR_INPUTSTREAMCFG; +pub type LPNET_DVR_INPUTSTREAMCFG = *mut tagNET_DVR_INPUTSTREAMCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INPUTSTREAM_LIST { + pub dwSize: DWORD, + pub struInputStreamInfo: [NET_DVR_INPUTSTREAMCFG; 224usize], + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INPUTSTREAM_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 130824usize, + concat!("Size of: ", stringify!(tagNET_DVR_INPUTSTREAM_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INPUTSTREAM_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAM_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInputStreamInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAM_LIST), + "::", + stringify!(struInputStreamInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 130820usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAM_LIST), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INPUTSTREAM_LIST = tagNET_DVR_INPUTSTREAM_LIST; +pub type LPNET_DVR_INPUTSTREAM_LIST = *mut tagNET_DVR_INPUTSTREAM_LIST; +#[doc = "�����������"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OUTPUTPARAM { + pub dwSize: DWORD, + pub byMonMode: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwResolution: DWORD, + pub struVideoEffect: NET_DVR_VIDEOEFFECT, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OUTPUTPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 52usize, + concat!("Size of: ", stringify!(tagNET_DVR_OUTPUTPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OUTPUTPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUTPARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUTPARAM), + "::", + stringify!(byMonMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUTPARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwResolution) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUTPARAM), + "::", + stringify!(dwResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVideoEffect) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUTPARAM), + "::", + stringify!(struVideoEffect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUTPARAM), + "::", + stringify!(byRes2) + ) + ); +} +#[doc = "�����������"] +pub type NET_DVR_OUTPUTPARAM = tagNET_DVR_OUTPUTPARAM; +#[doc = "�����������"] +pub type LPNET_DVR_OUTPUTPARAM = *mut tagNET_DVR_OUTPUTPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OUTPUTCFG { + pub dwSize: DWORD, + pub byScreenLayX: BYTE, + pub byScreenLayY: BYTE, + pub wOutputChanNum: WORD, + pub byRes1: [BYTE; 4usize], + pub struOutputParam: NET_DVR_OUTPUTPARAM, + pub sWallName: [BYTE; 16usize], + pub byRes2: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OUTPUTCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(tagNET_DVR_OUTPUTCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OUTPUTCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUTCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScreenLayX) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUTCFG), + "::", + stringify!(byScreenLayX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScreenLayY) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUTCFG), + "::", + stringify!(byScreenLayY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wOutputChanNum) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUTCFG), + "::", + stringify!(wOutputChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUTCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOutputParam) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUTCFG), + "::", + stringify!(struOutputParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sWallName) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUTCFG), + "::", + stringify!(sWallName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUTCFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_OUTPUTCFG = tagNET_DVR_OUTPUTCFG; +pub type LPNET_DVR_OUTPUTCFG = *mut tagNET_DVR_OUTPUTCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCREENSERVER_ABILITY { + pub dwSize: DWORD, + pub byIsSupportScreenNum: BYTE, + pub bySerialNums: BYTE, + pub byMaxInputNums: BYTE, + pub byMaxLayoutNums: BYTE, + pub byMaxWinNums: BYTE, + pub byRes1: [BYTE; 19usize], + pub byMaxScreenLayX: BYTE, + pub byMaxScreenLayY: BYTE, + pub wMatrixProtoNum: WORD, + pub struScreenProto: [NET_DVR_PROTO_TYPE; 20usize], + pub byRes2: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREENSERVER_ABILITY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 456usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREENSERVER_ABILITY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREENSERVER_ABILITY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENSERVER_ABILITY), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsSupportScreenNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENSERVER_ABILITY), + "::", + stringify!(byIsSupportScreenNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySerialNums) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENSERVER_ABILITY), + "::", + stringify!(bySerialNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMaxInputNums) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENSERVER_ABILITY), + "::", + stringify!(byMaxInputNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMaxLayoutNums) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENSERVER_ABILITY), + "::", + stringify!(byMaxLayoutNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMaxWinNums) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENSERVER_ABILITY), + "::", + stringify!(byMaxWinNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENSERVER_ABILITY), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMaxScreenLayX) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENSERVER_ABILITY), + "::", + stringify!(byMaxScreenLayX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMaxScreenLayY) as usize - ptr as usize }, + 29usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENSERVER_ABILITY), + "::", + stringify!(byMaxScreenLayY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMatrixProtoNum) as usize - ptr as usize }, + 30usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENSERVER_ABILITY), + "::", + stringify!(wMatrixProtoNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struScreenProto) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENSERVER_ABILITY), + "::", + stringify!(struScreenProto) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 432usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENSERVER_ABILITY), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SCREENSERVER_ABILITY = tagNET_DVR_SCREENSERVER_ABILITY; +pub type LPNET_DVR_SCREENSERVER_ABILITY = *mut tagNET_DVR_SCREENSERVER_ABILITY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCREENCONTROL_ABILITY { + pub dwSize: DWORD, + pub byLayoutNum: BYTE, + pub byWinNum: BYTE, + pub byOsdNum: BYTE, + pub byLogoNum: BYTE, + pub byInputStreamNum: BYTE, + pub byOutputChanNum: BYTE, + pub byCamGroupNum: BYTE, + pub byPlanNum: BYTE, + pub byRes1: [BYTE; 5usize], + pub byIsSupportPlayBack: BYTE, + pub byMatrixInputNum: BYTE, + pub byMatrixOutputNum: BYTE, + pub struVgaInfo: NET_DVR_DISPINFO, + pub struBncInfo: NET_DVR_DISPINFO, + pub struHdmiInfo: NET_DVR_DISPINFO, + pub struDviInfo: NET_DVR_DISPINFO, + pub byMaxUserNums: BYTE, + pub byPicSpan: BYTE, + pub wDVCSDevNum: WORD, + pub wNetSignalNum: WORD, + pub wBaseCoordinateX: WORD, + pub wBaseCoordinateY: WORD, + pub byExternalMatrixNum: BYTE, + pub byRes2: [BYTE; 49usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREENCONTROL_ABILITY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 608usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREENCONTROL_ABILITY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SCREENCONTROL_ABILITY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENCONTROL_ABILITY), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLayoutNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENCONTROL_ABILITY), + "::", + stringify!(byLayoutNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWinNum) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENCONTROL_ABILITY), + "::", + stringify!(byWinNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOsdNum) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENCONTROL_ABILITY), + "::", + stringify!(byOsdNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLogoNum) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENCONTROL_ABILITY), + "::", + stringify!(byLogoNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInputStreamNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENCONTROL_ABILITY), + "::", + stringify!(byInputStreamNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutputChanNum) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENCONTROL_ABILITY), + "::", + stringify!(byOutputChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCamGroupNum) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENCONTROL_ABILITY), + "::", + stringify!(byCamGroupNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlanNum) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENCONTROL_ABILITY), + "::", + stringify!(byPlanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENCONTROL_ABILITY), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsSupportPlayBack) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENCONTROL_ABILITY), + "::", + stringify!(byIsSupportPlayBack) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMatrixInputNum) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENCONTROL_ABILITY), + "::", + stringify!(byMatrixInputNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMatrixOutputNum) as usize - ptr as usize }, + 19usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENCONTROL_ABILITY), + "::", + stringify!(byMatrixOutputNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVgaInfo) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENCONTROL_ABILITY), + "::", + stringify!(struVgaInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBncInfo) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENCONTROL_ABILITY), + "::", + stringify!(struBncInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHdmiInfo) as usize - ptr as usize }, + 284usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENCONTROL_ABILITY), + "::", + stringify!(struHdmiInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDviInfo) as usize - ptr as usize }, + 416usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENCONTROL_ABILITY), + "::", + stringify!(struDviInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMaxUserNums) as usize - ptr as usize }, + 548usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENCONTROL_ABILITY), + "::", + stringify!(byMaxUserNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicSpan) as usize - ptr as usize }, + 549usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENCONTROL_ABILITY), + "::", + stringify!(byPicSpan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDVCSDevNum) as usize - ptr as usize }, + 550usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENCONTROL_ABILITY), + "::", + stringify!(wDVCSDevNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wNetSignalNum) as usize - ptr as usize }, + 552usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENCONTROL_ABILITY), + "::", + stringify!(wNetSignalNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBaseCoordinateX) as usize - ptr as usize }, + 554usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENCONTROL_ABILITY), + "::", + stringify!(wBaseCoordinateX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBaseCoordinateY) as usize - ptr as usize }, + 556usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENCONTROL_ABILITY), + "::", + stringify!(wBaseCoordinateY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExternalMatrixNum) as usize - ptr as usize }, + 558usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENCONTROL_ABILITY), + "::", + stringify!(byExternalMatrixNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 559usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENCONTROL_ABILITY), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SCREENCONTROL_ABILITY = tagNET_DVR_SCREENCONTROL_ABILITY; +pub type LPNET_DVR_SCREENCONTROL_ABILITY = *mut tagNET_DVR_SCREENCONTROL_ABILITY; +#[doc = "�����ź�״\u{32c}"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ANALOGINPUTSTATUS { + pub dwLostFrame: DWORD, + pub byHaveSignal: BYTE, + pub byVideoFormat: BYTE, + pub byRes: [BYTE; 46usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ANALOGINPUTSTATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 52usize, + concat!("Size of: ", stringify!(tagNET_DVR_ANALOGINPUTSTATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ANALOGINPUTSTATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLostFrame) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANALOGINPUTSTATUS), + "::", + stringify!(dwLostFrame) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHaveSignal) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANALOGINPUTSTATUS), + "::", + stringify!(byHaveSignal) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoFormat) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANALOGINPUTSTATUS), + "::", + stringify!(byVideoFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANALOGINPUTSTATUS), + "::", + stringify!(byRes) + ) + ); +} +#[doc = "�����ź�״\u{32c}"] +pub type NET_DVR_ANALOGINPUTSTATUS = tagNET_DVR_ANALOGINPUTSTATUS; +#[doc = "�����ź�״\u{32c}"] +pub type LPNET_DVR_ANALOGINPUTSTATUS = *mut tagNET_DVR_ANALOGINPUTSTATUS; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_INPUTSTATUS_UNION { + pub struIpInputStatus: NET_DVR_MATRIX_CHAN_STATUS, + pub struAnalogInputStatus: NET_DVR_ANALOGINPUTSTATUS, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INPUTSTATUS_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 52usize, + concat!("Size of: ", stringify!(tagNET_DVR_INPUTSTATUS_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INPUTSTATUS_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIpInputStatus) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTATUS_UNION), + "::", + stringify!(struIpInputStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAnalogInputStatus) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTATUS_UNION), + "::", + stringify!(struAnalogInputStatus) + ) + ); +} +pub type NET_DVR_INPUTSTATUS_UNION = tagNET_DVR_INPUTSTATUS_UNION; +pub type LPNET_DVR_INPUTSTATUS_UNION = *mut tagNET_DVR_INPUTSTATUS_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_INPUTSTATUS { + pub wInputNo: WORD, + pub byInputType: BYTE, + pub byRes1: [BYTE; 9usize], + pub struStatusUnion: NET_DVR_INPUTSTATUS_UNION, + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INPUTSTATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_INPUTSTATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INPUTSTATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInputNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTATUS), + "::", + stringify!(wInputNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInputType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTATUS), + "::", + stringify!(byInputType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTATUS), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStatusUnion) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTATUS), + "::", + stringify!(struStatusUnion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTATUS), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_INPUTSTATUS = tagNET_DVR_INPUTSTATUS; +pub type LPNET_DVR_INPUTSTATUS = *mut tagNET_DVR_INPUTSTATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCREENINPUTSTATUS { + pub dwSize: DWORD, + pub byRes: [BYTE; 12usize], + pub dwNums: DWORD, + pub pBuffer: *mut BYTE, + pub dwBufLen: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREENINPUTSTATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREENINPUTSTATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREENINPUTSTATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENINPUTSTATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENINPUTSTATUS), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNums) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENINPUTSTATUS), + "::", + stringify!(dwNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENINPUTSTATUS), + "::", + stringify!(pBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBufLen) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENINPUTSTATUS), + "::", + stringify!(dwBufLen) + ) + ); +} +pub type NET_DVR_SCREENINPUTSTATUS = tagNET_DVR_SCREENINPUTSTATUS; +pub type LPNET_DVR_SCREENINPUTSTATUS = *mut tagNET_DVR_SCREENINPUTSTATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCREENALARMCFG { + pub dwSize: DWORD, + pub byAlarmType: BYTE, + pub byBoardType: BYTE, + pub bySubException: BYTE, + pub byRes1: BYTE, + pub wStartInputNum: WORD, + pub wEndInputNum: WORD, + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREENALARMCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREENALARMCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREENALARMCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENALARMCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENALARMCFG), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBoardType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENALARMCFG), + "::", + stringify!(byBoardType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubException) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENALARMCFG), + "::", + stringify!(bySubException) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENALARMCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStartInputNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENALARMCFG), + "::", + stringify!(wStartInputNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wEndInputNum) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENALARMCFG), + "::", + stringify!(wEndInputNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENALARMCFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SCREENALARMCFG = tagNET_DVR_SCREENALARMCFG; +pub type LPNET_DVR_SCREENALARMCFG = *mut tagNET_DVR_SCREENALARMCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIX_CFG { + pub byValid: BYTE, + pub byCommandProtocol: BYTE, + pub byScreenType: BYTE, + pub byRes1: BYTE, + pub byScreenToMatrix: [BYTE; 32usize], + pub byRes2: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIX_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIX_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_CFG), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCommandProtocol) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_CFG), + "::", + stringify!(byCommandProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScreenType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_CFG), + "::", + stringify!(byScreenType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScreenToMatrix) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_CFG), + "::", + stringify!(byScreenToMatrix) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_MATRIX_CFG = tagNET_DVR_MATRIX_CFG; +pub type LPNET_DVR_MATRIX_CFG = *mut tagNET_DVR_MATRIX_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DIGITALSCREEN { + pub struAddress: NET_DVR_IPADDR, + pub wPort: WORD, + pub byRes: [BYTE; 26usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DIGITALSCREEN() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 172usize, + concat!("Size of: ", stringify!(tagNET_DVR_DIGITALSCREEN)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DIGITALSCREEN)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAddress) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIGITALSCREEN), + "::", + stringify!(struAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIGITALSCREEN), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 146usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIGITALSCREEN), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DIGITALSCREEN = tagNET_DVR_DIGITALSCREEN; +pub type LPNET_DVR_DIGITALSCREEN = *mut tagNET_DVR_DIGITALSCREEN; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ANALOGSCREEN { + pub byDevSerPortNum: BYTE, + pub byScreenSerPort: BYTE, + pub byRes: [BYTE; 130usize], + pub struMatrixCfg: NET_DVR_MATRIX_CFG, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ANALOGSCREEN() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 172usize, + concat!("Size of: ", stringify!(tagNET_DVR_ANALOGSCREEN)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ANALOGSCREEN)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevSerPortNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANALOGSCREEN), + "::", + stringify!(byDevSerPortNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScreenSerPort) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANALOGSCREEN), + "::", + stringify!(byScreenSerPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANALOGSCREEN), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMatrixCfg) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANALOGSCREEN), + "::", + stringify!(struMatrixCfg) + ) + ); +} +pub type NET_DVR_ANALOGSCREEN = tagNET_DVR_ANALOGSCREEN; +pub type LPNET_DVR_ANALOGSCREEN = *mut tagNET_DVR_ANALOGSCREEN; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_SCREEN_UNION { + pub struDigitalScreen: NET_DVR_DIGITALSCREEN, + pub struAnalogScreen: NET_DVR_ANALOGSCREEN, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEN_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 172usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEN_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREEN_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDigitalScreen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_UNION), + "::", + stringify!(struDigitalScreen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAnalogScreen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_UNION), + "::", + stringify!(struAnalogScreen) + ) + ); +} +pub type NET_DVR_SCREEN_UNION = tagNET_DVR_SCREEN_UNION; +pub type LPNET_DVR_SCREEN_UNION = *mut tagNET_DVR_SCREEN_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SCREEN_SCREENINFO { + pub dwSize: DWORD, + pub byValid: BYTE, + pub nLinkMode: BYTE, + pub byDeviceType: BYTE, + pub byScreenLayX: BYTE, + pub byScreenLayY: BYTE, + pub byRes1: [BYTE; 3usize], + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub sDevName: [BYTE; 32usize], + pub struScreenUnion: NET_DVR_SCREEN_UNION, + pub byInputNum: BYTE, + pub byOutputNum: BYTE, + pub byCBDNum: BYTE, + pub byRes2: [BYTE; 29usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEN_SCREENINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 296usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEN_SCREENINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREEN_SCREENINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_SCREENINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_SCREENINFO), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nLinkMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_SCREENINFO), + "::", + stringify!(nLinkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceType) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_SCREENINFO), + "::", + stringify!(byDeviceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScreenLayX) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_SCREENINFO), + "::", + stringify!(byScreenLayX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScreenLayY) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_SCREENINFO), + "::", + stringify!(byScreenLayY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_SCREENINFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_SCREENINFO), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_SCREENINFO), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDevName) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_SCREENINFO), + "::", + stringify!(sDevName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struScreenUnion) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_SCREENINFO), + "::", + stringify!(struScreenUnion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInputNum) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_SCREENINFO), + "::", + stringify!(byInputNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutputNum) as usize - ptr as usize }, + 265usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_SCREENINFO), + "::", + stringify!(byOutputNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCBDNum) as usize - ptr as usize }, + 266usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_SCREENINFO), + "::", + stringify!(byCBDNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 267usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_SCREENINFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SCREEN_SCREENINFO = tagNET_DVR_SCREEN_SCREENINFO; +pub type LPNET_DVR_SCREEN_SCREENINFO = *mut tagNET_DVR_SCREEN_SCREENINFO; +#[doc = "��ͼ�ϴ�"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BASEMAP_CFG { + pub byScreenIndex: BYTE, + pub byMapNum: BYTE, + pub res: [BYTE; 2usize], + pub wSourWidth: WORD, + pub wSourHeight: WORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BASEMAP_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_BASEMAP_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BASEMAP_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScreenIndex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_CFG), + "::", + stringify!(byScreenIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMapNum) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_CFG), + "::", + stringify!(byMapNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).res) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_CFG), + "::", + stringify!(res) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSourWidth) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_CFG), + "::", + stringify!(wSourWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSourHeight) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_CFG), + "::", + stringify!(wSourHeight) + ) + ); +} +#[doc = "��ͼ�ϴ�"] +pub type NET_DVR_BASEMAP_CFG = tagNET_DVR_BASEMAP_CFG; +#[doc = "��ͼ�ϴ�"] +pub type LPNET_DVR_BASEMAP_CFG = tagNET_DVR_BASEMAP_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PICCFG { + pub dwSize: DWORD, + pub byUseType: BYTE, + pub bySequence: BYTE, + pub byOverlayEnabled: BYTE, + pub byRes: [BYTE; 1usize], + pub struBasemapCfg: NET_DVR_BASEMAP_CFG, + pub sPicName: [BYTE; 32usize], + pub dwVideoWall: DWORD, + pub byFlash: BYTE, + pub byTranslucent: BYTE, + pub byShowEnabled: BYTE, + pub byPictureType: BYTE, + pub byRes2: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PICCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_PICCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PICCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICCFG), + "::", + stringify!(byUseType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySequence) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICCFG), + "::", + stringify!(bySequence) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverlayEnabled) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICCFG), + "::", + stringify!(byOverlayEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICCFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBasemapCfg) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICCFG), + "::", + stringify!(struBasemapCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPicName) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICCFG), + "::", + stringify!(sPicName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoWall) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICCFG), + "::", + stringify!(dwVideoWall) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlash) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICCFG), + "::", + stringify!(byFlash) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTranslucent) as usize - ptr as usize }, + 53usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICCFG), + "::", + stringify!(byTranslucent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShowEnabled) as usize - ptr as usize }, + 54usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICCFG), + "::", + stringify!(byShowEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPictureType) as usize - ptr as usize }, + 55usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICCFG), + "::", + stringify!(byPictureType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICCFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PICTURECFG = tagNET_DVR_PICCFG; +pub type LPNET_DVR_PICTURECFG = *mut tagNET_DVR_PICCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OSDCFG { + pub dwSize: DWORD, + pub byValid: BYTE, + pub byDispMode: BYTE, + pub byFontColorY: BYTE, + pub byFontColorU: BYTE, + pub byFontColorV: BYTE, + pub byBackColorY: BYTE, + pub byBackColorU: BYTE, + pub byBackColorV: BYTE, + pub wXCoordinate: WORD, + pub wYCoordinate: WORD, + pub wWidth: WORD, + pub wHeight: WORD, + pub dwCharCnt: DWORD, + pub wOSDChar: [WORD; 256usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OSDCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 568usize, + concat!("Size of: ", stringify!(tagNET_DVR_OSDCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OSDCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSDCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSDCFG), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSDCFG), + "::", + stringify!(byDispMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFontColorY) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSDCFG), + "::", + stringify!(byFontColorY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFontColorU) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSDCFG), + "::", + stringify!(byFontColorU) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFontColorV) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSDCFG), + "::", + stringify!(byFontColorV) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBackColorY) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSDCFG), + "::", + stringify!(byBackColorY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBackColorU) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSDCFG), + "::", + stringify!(byBackColorU) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBackColorV) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSDCFG), + "::", + stringify!(byBackColorV) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wXCoordinate) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSDCFG), + "::", + stringify!(wXCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wYCoordinate) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSDCFG), + "::", + stringify!(wYCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wWidth) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSDCFG), + "::", + stringify!(wWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHeight) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSDCFG), + "::", + stringify!(wHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCharCnt) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSDCFG), + "::", + stringify!(dwCharCnt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wOSDChar) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSDCFG), + "::", + stringify!(wOSDChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 536usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSDCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_OSDCFG = tagNET_DVR_OSDCFG; +pub type LPNET_DVR_OSDCFG = *mut tagNET_DVR_OSDCFG; +#[doc = "��ȡ������Ϣ"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SERIAL_CONTROL { + pub dwSize: DWORD, + pub bySerialNum: BYTE, + pub byRes1: [BYTE; 3usize], + pub bySerial: [BYTE; 32usize], + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SERIAL_CONTROL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_SERIAL_CONTROL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SERIAL_CONTROL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERIAL_CONTROL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySerialNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERIAL_CONTROL), + "::", + stringify!(bySerialNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERIAL_CONTROL), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySerial) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERIAL_CONTROL), + "::", + stringify!(bySerial) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERIAL_CONTROL), + "::", + stringify!(byRes2) + ) + ); +} +#[doc = "��ȡ������Ϣ"] +pub type NET_DVR_SERIAL_CONTROL = tagNET_DVR_SERIAL_CONTROL; +#[doc = "��ȡ������Ϣ"] +pub type LPNET_DVR_SERIAL_CONTROL = *mut tagNET_DVR_SERIAL_CONTROL; +pub const tagINPUT_INTERFACE_TYPE_INTERFACE_VGA: tagINPUT_INTERFACE_TYPE = 0; +pub const tagINPUT_INTERFACE_TYPE_INTERFACE_SVIDEO: tagINPUT_INTERFACE_TYPE = 1; +pub const tagINPUT_INTERFACE_TYPE_INTERFACE_YPBPR: tagINPUT_INTERFACE_TYPE = 2; +pub const tagINPUT_INTERFACE_TYPE_INTERFACE_DVI: tagINPUT_INTERFACE_TYPE = 3; +pub const tagINPUT_INTERFACE_TYPE_INTERFACE_BNC: tagINPUT_INTERFACE_TYPE = 4; +pub const tagINPUT_INTERFACE_TYPE_INTERFACE_DVI_LOOP: tagINPUT_INTERFACE_TYPE = 5; +pub const tagINPUT_INTERFACE_TYPE_INTERFACE_BNC_LOOP: tagINPUT_INTERFACE_TYPE = 6; +pub const tagINPUT_INTERFACE_TYPE_INTERFACE_HDMI: tagINPUT_INTERFACE_TYPE = 7; +pub const tagINPUT_INTERFACE_TYPE_INTERFACE_IP: tagINPUT_INTERFACE_TYPE = 8; +pub const tagINPUT_INTERFACE_TYPE_INTERFACE_USB: tagINPUT_INTERFACE_TYPE = 9; +pub const tagINPUT_INTERFACE_TYPE_INTERFACE_SDI: tagINPUT_INTERFACE_TYPE = 10; +pub const tagINPUT_INTERFACE_TYPE_INTERFACE_DP: tagINPUT_INTERFACE_TYPE = 11; +pub const tagINPUT_INTERFACE_TYPE_INTERFACE_HDBASET: tagINPUT_INTERFACE_TYPE = 12; +#[doc = "��Ļ����"] +pub type tagINPUT_INTERFACE_TYPE = ::std::os::raw::c_uint; +#[doc = "��Ļ����"] +pub use self::tagINPUT_INTERFACE_TYPE as INPUT_INTERFACE_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INPUT_INTERFACE_CTRL { + pub byInputSourceType: BYTE, + pub byRes: [BYTE; 15usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INPUT_INTERFACE_CTRL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_INPUT_INTERFACE_CTRL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INPUT_INTERFACE_CTRL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInputSourceType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_INTERFACE_CTRL), + "::", + stringify!(byInputSourceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_INTERFACE_CTRL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INPUT_INTERFACE_CTRL = tagNET_DVR_INPUT_INTERFACE_CTRL; +pub type LPNET_DVR_INPUT_INTERFACE_CTRL = *mut tagNET_DVR_INPUT_INTERFACE_CTRL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DISPLAY_COLOR_CTRL { + pub byColorType: BYTE, + pub byScale: ::std::os::raw::c_char, + pub byRes: [BYTE; 14usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DISPLAY_COLOR_CTRL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_DISPLAY_COLOR_CTRL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DISPLAY_COLOR_CTRL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byColorType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPLAY_COLOR_CTRL), + "::", + stringify!(byColorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScale) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPLAY_COLOR_CTRL), + "::", + stringify!(byScale) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPLAY_COLOR_CTRL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DISPLAY_COLOR_CTRL = tagNET_DVR_DISPLAY_COLOR_CTRL; +pub type LPNET_DVR_DISPLAY_COLOR_CTRL = *mut tagNET_DVR_DISPLAY_COLOR_CTRL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DISPLAY_POSITION_CTRL { + pub byPositionType: BYTE, + pub byScale: ::std::os::raw::c_char, + pub byRes: [BYTE; 14usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DISPLAY_POSITION_CTRL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_DISPLAY_POSITION_CTRL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_DISPLAY_POSITION_CTRL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPositionType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPLAY_POSITION_CTRL), + "::", + stringify!(byPositionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScale) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPLAY_POSITION_CTRL), + "::", + stringify!(byScale) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPLAY_POSITION_CTRL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DISPLAY_POSITION_CTRL = tagNET_DVR_DISPLAY_POSITION_CTRL; +pub type LPNET_DVR_DISPLAY_POSITION_CTRL = *mut tagNET_DVR_DISPLAY_POSITION_CTRL; +#[doc = "��Ļ����V41"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECTCFG_EX { + pub dwXCoordinate: DWORD, + pub dwYCoordinate: DWORD, + pub dwWidth: DWORD, + pub dwHeight: DWORD, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECTCFG_EX() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_RECTCFG_EX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RECTCFG_EX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwXCoordinate) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECTCFG_EX), + "::", + stringify!(dwXCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwYCoordinate) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECTCFG_EX), + "::", + stringify!(dwYCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWidth) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECTCFG_EX), + "::", + stringify!(dwWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHeight) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECTCFG_EX), + "::", + stringify!(dwHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECTCFG_EX), + "::", + stringify!(byRes) + ) + ); +} +#[doc = "��Ļ����V41"] +pub type NET_DVR_RECTCFG_EX = tagNET_DVR_RECTCFG_EX; +#[doc = "��Ļ����V41"] +pub type LPNET_DVR_RECTCFG_EX = *mut tagNET_DVR_RECTCFG_EX; +pub const NET_DVR_PLAN_OPERATE_TYPE_NET_DVR_SWITCH_LAYOUT: NET_DVR_PLAN_OPERATE_TYPE = 1; +pub const NET_DVR_PLAN_OPERATE_TYPE_NET_DVR_SCREEN_POWER_OFF: NET_DVR_PLAN_OPERATE_TYPE = 2; +pub const NET_DVR_PLAN_OPERATE_TYPE_NET_DVR_SCREEN_POWER_ON: NET_DVR_PLAN_OPERATE_TYPE = 3; +pub const NET_DVR_PLAN_OPERATE_TYPE_NET_DVR_SWITCH_BASEMAP: NET_DVR_PLAN_OPERATE_TYPE = 4; +pub type NET_DVR_PLAN_OPERATE_TYPE = ::std::os::raw::c_uint; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLAN_INFO { + pub byValid: BYTE, + pub byType: BYTE, + pub wLayoutNo: WORD, + pub byScreenStyle: BYTE, + pub byBaseMapType: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwDelayTime: DWORD, + pub dwSerialNo: DWORD, + pub dwBaseMapWndNo: DWORD, + pub dwBaseMapNo: DWORD, + pub byRes2: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLAN_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLAN_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PLAN_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_INFO), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_INFO), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLayoutNo) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_INFO), + "::", + stringify!(wLayoutNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScreenStyle) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_INFO), + "::", + stringify!(byScreenStyle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBaseMapType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_INFO), + "::", + stringify!(byBaseMapType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDelayTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_INFO), + "::", + stringify!(dwDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSerialNo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_INFO), + "::", + stringify!(dwSerialNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBaseMapWndNo) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_INFO), + "::", + stringify!(dwBaseMapWndNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBaseMapNo) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_INFO), + "::", + stringify!(dwBaseMapNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PLAN_INFO = tagNET_DVR_PLAN_INFO; +pub type LPNET_DVR_PLAN_INFO = *mut tagNET_DVR_PLAN_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CYCLE_TIME { + pub byValid: BYTE, + pub byRes: [BYTE; 3usize], + pub struTime: NET_DVR_TIME_EX, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CYCLE_TIME() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_CYCLE_TIME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CYCLE_TIME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CYCLE_TIME), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CYCLE_TIME), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CYCLE_TIME), + "::", + stringify!(struTime) + ) + ); +} +pub type NET_DVR_CYCLE_TIME = tagNET_DVR_CYCLE_TIME; +pub type LPNET_DVR_CYCLE_TIME = *mut tagNET_DVR_CYCLE_TIME; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLAN_CFG { + pub dwSize: DWORD, + pub byValid: BYTE, + pub byWorkMode: BYTE, + pub byWallNo: BYTE, + pub byPlanNo: BYTE, + pub byPlanName: [BYTE; 32usize], + pub struTime: NET_DVR_TIME_EX, + pub struTimeCycle: [NET_DVR_CYCLE_TIME; 7usize], + pub dwWorkCount: DWORD, + pub strPlanEntry: [NET_DVR_PLAN_INFO; 32usize], + pub dwPlanNo: DWORD, + pub byRes2: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLAN_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1608usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLAN_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PLAN_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_CFG), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_CFG), + "::", + stringify!(byWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWallNo) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_CFG), + "::", + stringify!(byWallNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlanNo) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_CFG), + "::", + stringify!(byPlanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlanName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_CFG), + "::", + stringify!(byPlanName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_CFG), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTimeCycle) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_CFG), + "::", + stringify!(struTimeCycle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWorkCount) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_CFG), + "::", + stringify!(dwWorkCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strPlanEntry) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_CFG), + "::", + stringify!(strPlanEntry) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlanNo) as usize - ptr as usize }, + 1544usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_CFG), + "::", + stringify!(dwPlanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1548usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PLAN_CFG = tagNET_DVR_PLAN_CFG; +pub type LPNET_DVR_PLAN_CFG = *mut tagNET_DVR_PLAN_CFG; +#[doc = "��ȡ�豸״\u{32c}"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLAN_LIST { + pub dwSize: DWORD, + pub dwPlanNums: DWORD, + pub pBuffer: *mut BYTE, + pub byWallNo: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwBufLen: DWORD, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLAN_LIST() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLAN_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PLAN_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlanNums) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_LIST), + "::", + stringify!(dwPlanNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_LIST), + "::", + stringify!(pBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWallNo) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_LIST), + "::", + stringify!(byWallNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_LIST), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBufLen) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_LIST), + "::", + stringify!(dwBufLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_LIST), + "::", + stringify!(byRes2) + ) + ); +} +#[doc = "��ȡ�豸״\u{32c}"] +pub type NET_DVR_PLAN_LIST = tagNET_DVR_PLAN_LIST; +#[doc = "��ȡ�豸״\u{32c}"] +pub type LPNET_DVR_PLAN_LIST = *mut tagNET_DVR_PLAN_LIST; +#[doc = "Ԥ������"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CONTROL_PARAM { + pub dwSize: DWORD, + pub sDeviceID: [BYTE; 32usize], + pub wChan: WORD, + pub byIndex: BYTE, + pub byRes1: BYTE, + pub dwControlParam: DWORD, + pub byMandatoryAlarm: BYTE, + pub byRes2: BYTE, + pub wZoneIndex: WORD, + pub byOperatorCode: [BYTE; 16usize], + pub dwPlanNo: DWORD, + pub byRes3: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CONTROL_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_CONTROL_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CONTROL_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDeviceID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_PARAM), + "::", + stringify!(sDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wChan) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_PARAM), + "::", + stringify!(wChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIndex) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_PARAM), + "::", + stringify!(byIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwControlParam) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_PARAM), + "::", + stringify!(dwControlParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMandatoryAlarm) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_PARAM), + "::", + stringify!(byMandatoryAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 45usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_PARAM), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wZoneIndex) as usize - ptr as usize }, + 46usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_PARAM), + "::", + stringify!(wZoneIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOperatorCode) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_PARAM), + "::", + stringify!(byOperatorCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlanNo) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_PARAM), + "::", + stringify!(dwPlanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_PARAM), + "::", + stringify!(byRes3) + ) + ); +} +#[doc = "Ԥ������"] +pub type NET_DVR_CONTROL_PARAM = tagNET_DVR_CONTROL_PARAM; +#[doc = "Ԥ������"] +pub type LPNET_DVR_CONTROL_PARAM = *mut tagNET_DVR_CONTROL_PARAM; +#[doc = "��ȡ�豸״\u{32c}"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEVICE_RUN_STATUS { + pub dwSize: DWORD, + pub dwMemoryTotal: DWORD, + pub dwMemoryUsage: DWORD, + pub byCPUUsage: BYTE, + pub byMainFrameTemp: BYTE, + pub byBackPanelTemp: BYTE, + pub byRes1: BYTE, + pub byLeftDecResource: [BYTE; 32usize], + pub fNetworkFlow: f32, + pub byRes2: [BYTE; 88usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEVICE_RUN_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 140usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEVICE_RUN_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEVICE_RUN_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_RUN_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMemoryTotal) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_RUN_STATUS), + "::", + stringify!(dwMemoryTotal) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMemoryUsage) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_RUN_STATUS), + "::", + stringify!(dwMemoryUsage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCPUUsage) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_RUN_STATUS), + "::", + stringify!(byCPUUsage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainFrameTemp) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_RUN_STATUS), + "::", + stringify!(byMainFrameTemp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBackPanelTemp) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_RUN_STATUS), + "::", + stringify!(byBackPanelTemp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_RUN_STATUS), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLeftDecResource) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_RUN_STATUS), + "::", + stringify!(byLeftDecResource) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fNetworkFlow) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_RUN_STATUS), + "::", + stringify!(fNetworkFlow) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_RUN_STATUS), + "::", + stringify!(byRes2) + ) + ); +} +#[doc = "��ȡ�豸״\u{32c}"] +pub type NET_DVR_DEVICE_RUN_STATUS = tagNET_DVR_DEVICE_RUN_STATUS; +#[doc = "��ȡ�豸״\u{32c}"] +pub type LPNET_DVR_DEVICE_RUN_STATUS = *mut tagNET_DVR_DEVICE_RUN_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ACCESS_CAMERA_INFO { + pub dwSize: DWORD, + pub sCameraInfo: [::std::os::raw::c_char; 32usize], + pub byInterfaceType: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwChannel: DWORD, + pub byRes: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ACCESS_CAMERA_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_ACCESS_CAMERA_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ACCESS_CAMERA_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCESS_CAMERA_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCameraInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCESS_CAMERA_INFO), + "::", + stringify!(sCameraInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInterfaceType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCESS_CAMERA_INFO), + "::", + stringify!(byInterfaceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCESS_CAMERA_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCESS_CAMERA_INFO), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCESS_CAMERA_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ACCESS_CAMERA_INFO = tagNET_DVR_ACCESS_CAMERA_INFO; +pub type LPNET_DVR_ACCESS_CAMERA_INFO = *mut tagNET_DVR_ACCESS_CAMERA_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUDIO_INPUT_PARAM { + pub byAudioInputType: BYTE, + pub byVolume: BYTE, + pub byEnableNoiseFilter: BYTE, + pub byres: [BYTE; 5usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUDIO_INPUT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUDIO_INPUT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AUDIO_INPUT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioInputType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_INPUT_PARAM), + "::", + stringify!(byAudioInputType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVolume) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_INPUT_PARAM), + "::", + stringify!(byVolume) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableNoiseFilter) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_INPUT_PARAM), + "::", + stringify!(byEnableNoiseFilter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byres) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_INPUT_PARAM), + "::", + stringify!(byres) + ) + ); +} +pub type NET_DVR_AUDIO_INPUT_PARAM = tagNET_DVR_AUDIO_INPUT_PARAM; +pub type LPNET_DVR_AUDIO_INPUT_PARAM = *mut tagNET_DVR_AUDIO_INPUT_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CAMERA_DEHAZE_CFG { + pub dwSize: DWORD, + pub byDehazeMode: BYTE, + pub byLevel: BYTE, + pub byRes: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CAMERA_DEHAZE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_CAMERA_DEHAZE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CAMERA_DEHAZE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_DEHAZE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDehazeMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_DEHAZE_CFG), + "::", + stringify!(byDehazeMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLevel) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_DEHAZE_CFG), + "::", + stringify!(byLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_DEHAZE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CAMERA_DEHAZE_CFG = tagNET_DVR_CAMERA_DEHAZE_CFG; +pub type LPNET_DVR_CAMERA_DEHAZE_CFG = *mut tagNET_DVR_CAMERA_DEHAZE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INPUT_SIGNAL_LIST { + pub dwSize: DWORD, + pub dwInputSignalNums: DWORD, + pub pBuffer: *mut BYTE, + pub byRes1: [BYTE; 3usize], + pub dwBufLen: DWORD, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INPUT_SIGNAL_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(tagNET_DVR_INPUT_SIGNAL_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INPUT_SIGNAL_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SIGNAL_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInputSignalNums) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SIGNAL_LIST), + "::", + stringify!(dwInputSignalNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SIGNAL_LIST), + "::", + stringify!(pBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SIGNAL_LIST), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBufLen) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SIGNAL_LIST), + "::", + stringify!(dwBufLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SIGNAL_LIST), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_INPUT_SIGNAL_LIST = tagNET_DVR_INPUT_SIGNAL_LIST; +pub type LPNET_DVR_INPUT_SIGNAL_LIST = *mut tagNET_DVR_INPUT_SIGNAL_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECORD_TIME_SPAN_INQUIRY { + pub dwSize: DWORD, + pub byType: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECORD_TIME_SPAN_INQUIRY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_RECORD_TIME_SPAN_INQUIRY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_RECORD_TIME_SPAN_INQUIRY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_TIME_SPAN_INQUIRY), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_TIME_SPAN_INQUIRY), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_TIME_SPAN_INQUIRY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RECORD_TIME_SPAN_INQUIRY = tagNET_DVR_RECORD_TIME_SPAN_INQUIRY; +pub type LPNET_DVR_RECORD_TIME_SPAN_INQUIRY = *mut tagNET_DVR_RECORD_TIME_SPAN_INQUIRY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECORD_TIME_SPAN { + pub dwSize: DWORD, + pub strBeginTime: NET_DVR_TIME, + pub strEndTime: NET_DVR_TIME, + pub byType: BYTE, + pub byRes: [BYTE; 35usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECORD_TIME_SPAN() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(tagNET_DVR_RECORD_TIME_SPAN)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RECORD_TIME_SPAN)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_TIME_SPAN), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strBeginTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_TIME_SPAN), + "::", + stringify!(strBeginTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strEndTime) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_TIME_SPAN), + "::", + stringify!(strEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_TIME_SPAN), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 53usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_TIME_SPAN), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RECORD_TIME_SPAN = tagNET_DVR_RECORD_TIME_SPAN; +pub type LPNET_DVR_RECORD_TIME_SPAN = *mut tagNET_DVR_RECORD_TIME_SPAN; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DRAWFRAME_DISK_QUOTA_CFG { + pub dwSize: DWORD, + pub byPicQuota: BYTE, + pub byRecordQuota: BYTE, + pub byDrawFrameRecordQuota: BYTE, + pub byRes: [BYTE; 61usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DRAWFRAME_DISK_QUOTA_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_DRAWFRAME_DISK_QUOTA_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_DRAWFRAME_DISK_QUOTA_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DRAWFRAME_DISK_QUOTA_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicQuota) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DRAWFRAME_DISK_QUOTA_CFG), + "::", + stringify!(byPicQuota) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordQuota) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DRAWFRAME_DISK_QUOTA_CFG), + "::", + stringify!(byRecordQuota) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDrawFrameRecordQuota) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DRAWFRAME_DISK_QUOTA_CFG), + "::", + stringify!(byDrawFrameRecordQuota) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DRAWFRAME_DISK_QUOTA_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DRAWFRAME_DISK_QUOTA_CFG = tagNET_DVR_DRAWFRAME_DISK_QUOTA_CFG; +pub type LPNET_DVR_DRAWFRAME_DISK_QUOTA_CFG = *mut tagNET_DVR_DRAWFRAME_DISK_QUOTA_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_NAT_PORT { + pub wEnable: WORD, + pub wExtPort: WORD, + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NAT_PORT() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_NAT_PORT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NAT_PORT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAT_PORT), + "::", + stringify!(wEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wExtPort) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAT_PORT), + "::", + stringify!(wExtPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAT_PORT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_NAT_PORT = tagNET_DVR_NAT_PORT; +pub type LPNET_DVR_NAT_PORT = *mut tagNET_DVR_NAT_PORT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_NAT_CFG { + pub dwSize: DWORD, + pub wEnableUpnp: WORD, + pub wEnableNat: WORD, + pub struIpAddr: NET_DVR_IPADDR, + pub struHttpPort: NET_DVR_NAT_PORT, + pub struCmdPort: NET_DVR_NAT_PORT, + pub struRtspPort: NET_DVR_NAT_PORT, + pub byFriendName: [BYTE; 64usize], + pub byNatType: BYTE, + pub byRes1: [BYTE; 3usize], + pub struHttpsPort: NET_DVR_NAT_PORT, + pub struSDKOverTLSPort: NET_DVR_NAT_PORT, + pub struRtspsPort: NET_DVR_NAT_PORT, + pub byres: [BYTE; 44usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NAT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 360usize, + concat!("Size of: ", stringify!(tagNET_DVR_NAT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NAT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wEnableUpnp) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAT_CFG), + "::", + stringify!(wEnableUpnp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wEnableNat) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAT_CFG), + "::", + stringify!(wEnableNat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIpAddr) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAT_CFG), + "::", + stringify!(struIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHttpPort) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAT_CFG), + "::", + stringify!(struHttpPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCmdPort) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAT_CFG), + "::", + stringify!(struCmdPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRtspPort) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAT_CFG), + "::", + stringify!(struRtspPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFriendName) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAT_CFG), + "::", + stringify!(byFriendName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNatType) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAT_CFG), + "::", + stringify!(byNatType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 265usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAT_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHttpsPort) as usize - ptr as usize }, + 268usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAT_CFG), + "::", + stringify!(struHttpsPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSDKOverTLSPort) as usize - ptr as usize }, + 284usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAT_CFG), + "::", + stringify!(struSDKOverTLSPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRtspsPort) as usize - ptr as usize }, + 300usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAT_CFG), + "::", + stringify!(struRtspsPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byres) as usize - ptr as usize }, + 316usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAT_CFG), + "::", + stringify!(byres) + ) + ); +} +pub type NET_DVR_NAT_CFG = tagNET_DVR_NAT_CFG; +pub type LPNET_DVR_NAT_CFG = *mut tagNET_DVR_NAT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_UPNP_PORT_STATE { + pub dwEnabled: DWORD, + pub wInternalPort: WORD, + pub wExternalPort: WORD, + pub dwStatus: DWORD, + pub struNatExternalIp: NET_DVR_IPADDR, + pub struNatInternalIp: NET_DVR_IPADDR, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_UPNP_PORT_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 316usize, + concat!("Size of: ", stringify!(NET_DVR_UPNP_PORT_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_UPNP_PORT_STATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnabled) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_UPNP_PORT_STATE), + "::", + stringify!(dwEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInternalPort) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_UPNP_PORT_STATE), + "::", + stringify!(wInternalPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wExternalPort) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_UPNP_PORT_STATE), + "::", + stringify!(wExternalPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStatus) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_UPNP_PORT_STATE), + "::", + stringify!(dwStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNatExternalIp) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_UPNP_PORT_STATE), + "::", + stringify!(struNatExternalIp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNatInternalIp) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_UPNP_PORT_STATE), + "::", + stringify!(struNatInternalIp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 300usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_UPNP_PORT_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_UPNP_PORT_STATE = *mut NET_DVR_UPNP_PORT_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_UPNP_NAT_STATE { + pub strUpnpPort: [NET_DVR_UPNP_PORT_STATE; 12usize], + pub byRes: [BYTE; 200usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_UPNP_NAT_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 3992usize, + concat!("Size of: ", stringify!(NET_DVR_UPNP_NAT_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_UPNP_NAT_STATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strUpnpPort) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_UPNP_NAT_STATE), + "::", + stringify!(strUpnpPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3792usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_UPNP_NAT_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_UPNP_NAT_STATE = *mut NET_DVR_UPNP_NAT_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLAYCOND { + pub dwChannel: DWORD, + pub struStartTime: NET_DVR_TIME, + pub struStopTime: NET_DVR_TIME, + pub byDrawFrame: BYTE, + pub byStreamType: BYTE, + pub byStreamID: [BYTE; 32usize], + pub byCourseFile: BYTE, + pub byDownload: BYTE, + pub byOptimalStreamType: BYTE, + pub byVODFileType: BYTE, + pub byRes: [BYTE; 26usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLAYCOND() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 116usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLAYCOND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PLAYCOND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYCOND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYCOND), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYCOND), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDrawFrame) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYCOND), + "::", + stringify!(byDrawFrame) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 53usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYCOND), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamID) as usize - ptr as usize }, + 54usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYCOND), + "::", + stringify!(byStreamID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCourseFile) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYCOND), + "::", + stringify!(byCourseFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDownload) as usize - ptr as usize }, + 87usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYCOND), + "::", + stringify!(byDownload) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOptimalStreamType) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYCOND), + "::", + stringify!(byOptimalStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVODFileType) as usize - ptr as usize }, + 89usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYCOND), + "::", + stringify!(byVODFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 90usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYCOND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PLAYCOND = tagNET_DVR_PLAYCOND; +pub type LPNET_DVR_PLAYCOND = *mut tagNET_DVR_PLAYCOND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ATMFINDINFO { + pub byTransactionType: BYTE, + pub byRes: [BYTE; 3usize], + pub dwTransationAmount: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ATMFINDINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_ATMFINDINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ATMFINDINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransactionType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATMFINDINFO), + "::", + stringify!(byTransactionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATMFINDINFO), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTransationAmount) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATMFINDINFO), + "::", + stringify!(dwTransationAmount) + ) + ); +} +pub type NET_DVR_ATMFINDINFO = tagNET_DVR_ATMFINDINFO; +pub type LPNET_DVR_ATMFINDINFO = *mut tagNET_DVR_ATMFINDINFO; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_SPECIAL_FINDINFO_UNION { + pub byLenth: [BYTE; 8usize], + pub struATMFindInfo: NET_DVR_ATMFINDINFO, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SPECIAL_FINDINFO_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_SPECIAL_FINDINFO_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SPECIAL_FINDINFO_UNION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLenth) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPECIAL_FINDINFO_UNION), + "::", + stringify!(byLenth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struATMFindInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPECIAL_FINDINFO_UNION), + "::", + stringify!(struATMFindInfo) + ) + ); +} +pub type NET_DVR_SPECIAL_FINDINFO_UNION = tagNET_DVR_SPECIAL_FINDINFO_UNION; +pub type LPNET_DVR_SPECIAL_FINDINFO_UNION = *mut tagNET_DVR_SPECIAL_FINDINFO_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_FILECOND_V40 { + pub lChannel: LONG, + pub dwFileType: DWORD, + pub dwIsLocked: DWORD, + pub dwUseCardNo: DWORD, + pub sCardNumber: [BYTE; 32usize], + pub struStartTime: NET_DVR_TIME, + pub struStopTime: NET_DVR_TIME, + pub byDrawFrame: BYTE, + pub byFindType: BYTE, + pub byQuickSearch: BYTE, + pub bySpecialFindInfoType: BYTE, + pub dwVolumeNum: DWORD, + pub byWorkingDeviceGUID: [BYTE; 16usize], + pub uSpecialFindInfo: NET_DVR_SPECIAL_FINDINFO_UNION, + pub byStreamType: BYTE, + pub byAudioFile: BYTE, + pub byRes2: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FILECOND_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 160usize, + concat!("Size of: ", stringify!(tagNET_DVR_FILECOND_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FILECOND_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V40), + "::", + stringify!(lChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V40), + "::", + stringify!(dwFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIsLocked) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V40), + "::", + stringify!(dwIsLocked) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwUseCardNo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V40), + "::", + stringify!(dwUseCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCardNumber) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V40), + "::", + stringify!(sCardNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V40), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V40), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDrawFrame) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V40), + "::", + stringify!(byDrawFrame) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFindType) as usize - ptr as usize }, + 97usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V40), + "::", + stringify!(byFindType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byQuickSearch) as usize - ptr as usize }, + 98usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V40), + "::", + stringify!(byQuickSearch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpecialFindInfoType) as usize - ptr as usize }, + 99usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V40), + "::", + stringify!(bySpecialFindInfoType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVolumeNum) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V40), + "::", + stringify!(dwVolumeNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkingDeviceGUID) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V40), + "::", + stringify!(byWorkingDeviceGUID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uSpecialFindInfo) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V40), + "::", + stringify!(uSpecialFindInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V40), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioFile) as usize - ptr as usize }, + 129usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V40), + "::", + stringify!(byAudioFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 130usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V40), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_FILECOND_V40 = tagNET_DVR_FILECOND_V40; +pub type LPNET_DVR_FILECOND_V40 = *mut tagNET_DVR_FILECOND_V40; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_FILECOND_V50 { + pub struStreamID: NET_DVR_STREAM_INFO, + pub struStartTime: NET_DVR_TIME_SEARCH_COND, + pub struStopTime: NET_DVR_TIME_SEARCH_COND, + pub byFindType: BYTE, + pub byDrawFrame: BYTE, + pub byQuickSearch: BYTE, + pub byStreamType: BYTE, + pub dwFileType: DWORD, + pub dwVolumeNum: DWORD, + pub byIsLocked: BYTE, + pub byNeedCard: BYTE, + pub byOnlyAudioFile: BYTE, + pub bySpecialFindInfoType: BYTE, + pub szCardNum: [::std::os::raw::c_char; 32usize], + pub szWorkingDeviceGUID: [::std::os::raw::c_char; 16usize], + pub uSpecialFindInfo: NET_DVR_SPECIAL_FINDINFO_UNION, + pub dwTimeout: DWORD, + pub byRes: [BYTE; 252usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FILECOND_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 424usize, + concat!("Size of: ", stringify!(tagNET_DVR_FILECOND_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FILECOND_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V50), + "::", + stringify!(struStreamID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V50), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V50), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFindType) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V50), + "::", + stringify!(byFindType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDrawFrame) as usize - ptr as usize }, + 97usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V50), + "::", + stringify!(byDrawFrame) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byQuickSearch) as usize - ptr as usize }, + 98usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V50), + "::", + stringify!(byQuickSearch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 99usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V50), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileType) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V50), + "::", + stringify!(dwFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVolumeNum) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V50), + "::", + stringify!(dwVolumeNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsLocked) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V50), + "::", + stringify!(byIsLocked) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNeedCard) as usize - ptr as usize }, + 109usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V50), + "::", + stringify!(byNeedCard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOnlyAudioFile) as usize - ptr as usize }, + 110usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V50), + "::", + stringify!(byOnlyAudioFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpecialFindInfoType) as usize - ptr as usize }, + 111usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V50), + "::", + stringify!(bySpecialFindInfoType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szCardNum) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V50), + "::", + stringify!(szCardNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szWorkingDeviceGUID) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V50), + "::", + stringify!(szWorkingDeviceGUID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uSpecialFindInfo) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V50), + "::", + stringify!(uSpecialFindInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTimeout) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V50), + "::", + stringify!(dwTimeout) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FILECOND_V50 = tagNET_DVR_FILECOND_V50; +pub type LPNET_DVR_FILECOND_V50 = *mut tagNET_DVR_FILECOND_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_AES_KEY_INFO { + pub sAESKey: [BYTE; 16usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_AES_KEY_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(NET_DVR_AES_KEY_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_AES_KEY_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sAESKey) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_AES_KEY_INFO), + "::", + stringify!(sAESKey) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_AES_KEY_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_AES_KEY_INFO = *mut NET_DVR_AES_KEY_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_POE_CFG { + pub struIP: NET_DVR_IPADDR, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_POE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 272usize, + concat!("Size of: ", stringify!(NET_DVR_POE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_POE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POE_CFG), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_POE_CFG = *mut NET_DVR_POE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_CUSTOM_PROTOCAL { + pub dwSize: DWORD, + pub dwEnabled: DWORD, + pub sProtocalName: [::std::os::raw::c_char; 16usize], + pub byRes1: [BYTE; 64usize], + pub dwEnableSubStream: DWORD, + pub byMainProType: BYTE, + pub byMainTransType: BYTE, + pub wMainPort: WORD, + pub sMainPath: [::std::os::raw::c_char; 256usize], + pub bySubProType: BYTE, + pub bySubTransType: BYTE, + pub wSubPort: WORD, + pub sSubPath: [::std::os::raw::c_char; 256usize], + pub byRes2: [BYTE; 200usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_CUSTOM_PROTOCAL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 812usize, + concat!("Size of: ", stringify!(NET_DVR_CUSTOM_PROTOCAL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_CUSTOM_PROTOCAL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CUSTOM_PROTOCAL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CUSTOM_PROTOCAL), + "::", + stringify!(dwEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sProtocalName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CUSTOM_PROTOCAL), + "::", + stringify!(sProtocalName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CUSTOM_PROTOCAL), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnableSubStream) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CUSTOM_PROTOCAL), + "::", + stringify!(dwEnableSubStream) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainProType) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CUSTOM_PROTOCAL), + "::", + stringify!(byMainProType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainTransType) as usize - ptr as usize }, + 93usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CUSTOM_PROTOCAL), + "::", + stringify!(byMainTransType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMainPort) as usize - ptr as usize }, + 94usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CUSTOM_PROTOCAL), + "::", + stringify!(wMainPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sMainPath) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CUSTOM_PROTOCAL), + "::", + stringify!(sMainPath) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubProType) as usize - ptr as usize }, + 352usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CUSTOM_PROTOCAL), + "::", + stringify!(bySubProType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubTransType) as usize - ptr as usize }, + 353usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CUSTOM_PROTOCAL), + "::", + stringify!(bySubTransType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSubPort) as usize - ptr as usize }, + 354usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CUSTOM_PROTOCAL), + "::", + stringify!(wSubPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSubPath) as usize - ptr as usize }, + 356usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CUSTOM_PROTOCAL), + "::", + stringify!(sSubPath) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 612usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CUSTOM_PROTOCAL), + "::", + stringify!(byRes2) + ) + ); +} +pub type LPNET_DVR_CUSTOM_PROTOCAL = *mut NET_DVR_CUSTOM_PROTOCAL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_MATRIX_CHAN_INFO_EX { + pub dwEnable: DWORD, + pub byType: BYTE, + pub byRes: [BYTE; 3usize], + pub streamMediaServerCfg: NET_DVR_STREAM_MEDIA_SERVER_CFG, + pub struDevChanInfo: NET_DVR_DEV_CHAN_INFO, + pub sRtspUrl: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_MATRIX_CHAN_INFO_EX() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 624usize, + concat!("Size of: ", stringify!(NET_DVR_MATRIX_CHAN_INFO_EX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_MATRIX_CHAN_INFO_EX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_CHAN_INFO_EX), + "::", + stringify!(dwEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_CHAN_INFO_EX), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_CHAN_INFO_EX), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).streamMediaServerCfg) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_CHAN_INFO_EX), + "::", + stringify!(streamMediaServerCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevChanInfo) as usize - ptr as usize }, + 228usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_CHAN_INFO_EX), + "::", + stringify!(struDevChanInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sRtspUrl) as usize - ptr as usize }, + 496usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_CHAN_INFO_EX), + "::", + stringify!(sRtspUrl) + ) + ); +} +pub type LPNET_DVR_MATRIX_CHAN_INFO_EX = *mut NET_DVR_MATRIX_CHAN_INFO_EX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_MATRIX_LOOP_DECINFO_EX { + pub dwSize: DWORD, + pub dwPoolTime: DWORD, + pub struchanConInfo: [NET_DVR_MATRIX_CHAN_INFO_EX; 64usize], + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_MATRIX_LOOP_DECINFO_EX() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 39960usize, + concat!("Size of: ", stringify!(NET_DVR_MATRIX_LOOP_DECINFO_EX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_MATRIX_LOOP_DECINFO_EX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_LOOP_DECINFO_EX), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPoolTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_LOOP_DECINFO_EX), + "::", + stringify!(dwPoolTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struchanConInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_LOOP_DECINFO_EX), + "::", + stringify!(struchanConInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 39944usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MATRIX_LOOP_DECINFO_EX), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_MATRIX_LOOP_DECINFO_EX = *mut NET_DVR_MATRIX_LOOP_DECINFO_EX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PU_STREAM_CFG_EX { + pub dwSize: DWORD, + pub byType: BYTE, + pub byRes: [BYTE; 3usize], + pub struStreamMediaSvrCfg: NET_DVR_STREAM_MEDIA_SERVER_CFG, + pub struDevChanInfo: NET_DVR_DEV_CHAN_INFO, + pub sRtspUrl: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_PU_STREAM_CFG_EX() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 624usize, + concat!("Size of: ", stringify!(NET_DVR_PU_STREAM_CFG_EX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_PU_STREAM_CFG_EX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PU_STREAM_CFG_EX), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PU_STREAM_CFG_EX), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PU_STREAM_CFG_EX), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamMediaSvrCfg) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PU_STREAM_CFG_EX), + "::", + stringify!(struStreamMediaSvrCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevChanInfo) as usize - ptr as usize }, + 228usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PU_STREAM_CFG_EX), + "::", + stringify!(struDevChanInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sRtspUrl) as usize - ptr as usize }, + 496usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PU_STREAM_CFG_EX), + "::", + stringify!(sRtspUrl) + ) + ); +} +pub type LPNET_DVR_PU_STREAM_CFG_EX = *mut NET_DVR_PU_STREAM_CFG_EX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIX_TRUNKCFG { + pub dwGlobalIndex: DWORD, + pub dwInterIndex: DWORD, + pub sTrunkName: [BYTE; 32usize], + pub byType: BYTE, + pub byDir: BYTE, + pub byAbility: BYTE, + pub bySubsys: BYTE, + pub byChan: BYTE, + pub byRes: [BYTE; 255usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_TRUNKCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 300usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIX_TRUNKCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIX_TRUNKCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGlobalIndex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRUNKCFG), + "::", + stringify!(dwGlobalIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInterIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRUNKCFG), + "::", + stringify!(dwInterIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sTrunkName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRUNKCFG), + "::", + stringify!(sTrunkName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRUNKCFG), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDir) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRUNKCFG), + "::", + stringify!(byDir) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAbility) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRUNKCFG), + "::", + stringify!(byAbility) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubsys) as usize - ptr as usize }, + 43usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRUNKCFG), + "::", + stringify!(bySubsys) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChan) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRUNKCFG), + "::", + stringify!(byChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 45usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_TRUNKCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MATRIX_TRUNKCFG = tagNET_DVR_MATRIX_TRUNKCFG; +pub type LPNET_DVR_MATRIX_TRUNKCFG = *mut tagNET_DVR_MATRIX_TRUNKCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DECSUBSYSTEMJIONSTATUS_V41 { + pub byJoinStatus: BYTE, + pub byJoinSubSystem: BYTE, + pub byJoinDispNum: BYTE, + pub byJoinSubWindowNum: BYTE, + pub byDecodeAbility: BYTE, + pub byRes: [BYTE; 15usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DECSUBSYSTEMJIONSTATUS_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_DECSUBSYSTEMJIONSTATUS_V41) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_DECSUBSYSTEMJIONSTATUS_V41) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJoinStatus) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECSUBSYSTEMJIONSTATUS_V41), + "::", + stringify!(byJoinStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJoinSubSystem) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECSUBSYSTEMJIONSTATUS_V41), + "::", + stringify!(byJoinSubSystem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJoinDispNum) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECSUBSYSTEMJIONSTATUS_V41), + "::", + stringify!(byJoinDispNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJoinSubWindowNum) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECSUBSYSTEMJIONSTATUS_V41), + "::", + stringify!(byJoinSubWindowNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecodeAbility) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECSUBSYSTEMJIONSTATUS_V41), + "::", + stringify!(byDecodeAbility) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECSUBSYSTEMJIONSTATUS_V41), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DECSUBSYSTEMJIONSTATUS_V41 = tagNET_DVR_DECSUBSYSTEMJIONSTATUS_V41; +pub type LPNET_DVR_DECSUBSYSTEMJIONSTATUS_V41 = tagNET_DVR_DECSUBSYSTEMJIONSTATUS_V41; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SINGLESUBSYSTEMJOININFO_V41 { + pub bySubSystemType: BYTE, + pub byConnectStatus: BYTE, + pub byMatrixNum: BYTE, + pub bySubSystemNum: BYTE, + pub struSubSystem: [NET_DVR_DECSUBSYSTEMJIONSTATUS_V41; 32usize], + pub byBindStatus: BYTE, + pub bySlotNum: BYTE, + pub byUsedTrunk: BYTE, + pub byRes: [BYTE; 65usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SINGLESUBSYSTEMJOININFO_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 712usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO_V41) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO_V41) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO_V41), + "::", + stringify!(bySubSystemType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byConnectStatus) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO_V41), + "::", + stringify!(byConnectStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMatrixNum) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO_V41), + "::", + stringify!(byMatrixNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemNum) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO_V41), + "::", + stringify!(bySubSystemNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSubSystem) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO_V41), + "::", + stringify!(struSubSystem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBindStatus) as usize - ptr as usize }, + 644usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO_V41), + "::", + stringify!(byBindStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySlotNum) as usize - ptr as usize }, + 645usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO_V41), + "::", + stringify!(bySlotNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUsedTrunk) as usize - ptr as usize }, + 646usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO_V41), + "::", + stringify!(byUsedTrunk) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 647usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLESUBSYSTEMJOININFO_V41), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SINGLESUBSYSTEMJOININFO_V41 = tagNET_DVR_SINGLESUBSYSTEMJOININFO_V41; +pub type LPNET_DVR_SINGLESUBSYSTEMJOININFO_V41 = tagNET_DVR_SINGLESUBSYSTEMJOININFO_V41; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALLDECSUBSYSTEMJOININFO_V41 { + pub dwSize: DWORD, + pub struSingleSubSystemJoinInfo: [NET_DVR_SINGLESUBSYSTEMJOININFO_V41; 120usize], + pub byRes: [BYTE; 48usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALLDECSUBSYSTEMJOININFO_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 85492usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALLDECSUBSYSTEMJOININFO_V41) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALLDECSUBSYSTEMJOININFO_V41) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALLDECSUBSYSTEMJOININFO_V41), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSingleSubSystemJoinInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALLDECSUBSYSTEMJOININFO_V41), + "::", + stringify!(struSingleSubSystemJoinInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 85444usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALLDECSUBSYSTEMJOININFO_V41), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALLDECSUBSYSTEMJOININFO_V41 = tagNET_DVR_ALLDECSUBSYSTEMJOININFO_V41; +pub type LPNET_DVR_ALLDECSUBSYSTEMJOININFO_V41 = *mut tagNET_DVR_ALLDECSUBSYSTEMJOININFO_V41; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PUBLIC_SUB_SYSTEM { + pub dwJointSubSystem: DWORD, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PUBLIC_SUB_SYSTEM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_PUBLIC_SUB_SYSTEM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PUBLIC_SUB_SYSTEM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwJointSubSystem) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLIC_SUB_SYSTEM), + "::", + stringify!(dwJointSubSystem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLIC_SUB_SYSTEM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PUBLIC_SUB_SYSTEM = tagNET_DVR_PUBLIC_SUB_SYSTEM; +pub type LPNET_DVR_PUBLIC_SUB_SYSTEM = *mut tagNET_DVR_PUBLIC_SUB_SYSTEM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_NOAMAL_SUB_SYSTEM { + pub dwBeJoinedSubSystem: DWORD, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NOAMAL_SUB_SYSTEM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_NOAMAL_SUB_SYSTEM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NOAMAL_SUB_SYSTEM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBeJoinedSubSystem) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOAMAL_SUB_SYSTEM), + "::", + stringify!(dwBeJoinedSubSystem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOAMAL_SUB_SYSTEM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_NOAMAL_SUB_SYSTEM = tagNET_DVR_NOAMAL_SUB_SYSTEM; +pub type LPNET_DVR_NOAMAL_SUB_SYSTEM = *mut tagNET_DVR_NOAMAL_SUB_SYSTEM; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_JOINT_SUB_SYSTEM { + pub struNormalSubSystem: NET_DVR_NOAMAL_SUB_SYSTEM, + pub struPublicSubSystem: NET_DVR_PUBLIC_SUB_SYSTEM, + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_JOINT_SUB_SYSTEM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_JOINT_SUB_SYSTEM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_JOINT_SUB_SYSTEM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNormalSubSystem) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JOINT_SUB_SYSTEM), + "::", + stringify!(struNormalSubSystem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPublicSubSystem) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JOINT_SUB_SYSTEM), + "::", + stringify!(struPublicSubSystem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JOINT_SUB_SYSTEM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_JOINT_SUB_SYSTEM = tagNET_DVR_JOINT_SUB_SYSTEM; +pub type LPNET_DVR_JOINT_SUB_SYSTEM = *mut tagNET_DVR_JOINT_SUB_SYSTEM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_ALARMSUBSYSTEMPARAM { + pub dwSize: DWORD, + pub wEnterDelay: WORD, + pub wExitDelay: WORD, + pub byHostageReport: BYTE, + pub bySubsystemEnable: BYTE, + pub byKeyToneOfArmOrDisarm: BYTE, + pub byKeyToneOfManualTestReport: BYTE, + pub wDelayTime: WORD, + pub byEnableAlarmInDelay: BYTE, + pub byPublicAttributeEnable: BYTE, + pub struJointSubSystem: NET_DVR_JOINT_SUB_SYSTEM, + pub byKeyZoneArm: BYTE, + pub byKeyZoneArmReport: BYTE, + pub byKeyZoneDisarm: BYTE, + pub byKeyZoneDisarmReport: BYTE, + pub bySubSystemID: [BYTE; 16usize], + pub byKeyZoneArmReportEnable: BYTE, + pub byKeyZoneArmEnable: BYTE, + pub byOneKeySetupAlarmEnable: BYTE, + pub bySingleZoneSetupAlarmEnable: BYTE, + pub byCenterType: BYTE, + pub sCenterAccount: [BYTE; 6usize], + pub sCenterAccountV40: [BYTE; 32usize], + pub byRes2: [BYTE; 565usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMSUBSYSTEMPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 664usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMSUBSYSTEMPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMSUBSYSTEMPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSUBSYSTEMPARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wEnterDelay) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSUBSYSTEMPARAM), + "::", + stringify!(wEnterDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wExitDelay) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSUBSYSTEMPARAM), + "::", + stringify!(wExitDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHostageReport) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSUBSYSTEMPARAM), + "::", + stringify!(byHostageReport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubsystemEnable) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSUBSYSTEMPARAM), + "::", + stringify!(bySubsystemEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byKeyToneOfArmOrDisarm) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSUBSYSTEMPARAM), + "::", + stringify!(byKeyToneOfArmOrDisarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byKeyToneOfManualTestReport) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSUBSYSTEMPARAM), + "::", + stringify!(byKeyToneOfManualTestReport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDelayTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSUBSYSTEMPARAM), + "::", + stringify!(wDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableAlarmInDelay) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSUBSYSTEMPARAM), + "::", + stringify!(byEnableAlarmInDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPublicAttributeEnable) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSUBSYSTEMPARAM), + "::", + stringify!(byPublicAttributeEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struJointSubSystem) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSUBSYSTEMPARAM), + "::", + stringify!(struJointSubSystem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byKeyZoneArm) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSUBSYSTEMPARAM), + "::", + stringify!(byKeyZoneArm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byKeyZoneArmReport) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSUBSYSTEMPARAM), + "::", + stringify!(byKeyZoneArmReport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byKeyZoneDisarm) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSUBSYSTEMPARAM), + "::", + stringify!(byKeyZoneDisarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byKeyZoneDisarmReport) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSUBSYSTEMPARAM), + "::", + stringify!(byKeyZoneDisarmReport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemID) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSUBSYSTEMPARAM), + "::", + stringify!(bySubSystemID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byKeyZoneArmReportEnable) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSUBSYSTEMPARAM), + "::", + stringify!(byKeyZoneArmReportEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byKeyZoneArmEnable) as usize - ptr as usize }, + 57usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSUBSYSTEMPARAM), + "::", + stringify!(byKeyZoneArmEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOneKeySetupAlarmEnable) as usize - ptr as usize }, + 58usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSUBSYSTEMPARAM), + "::", + stringify!(byOneKeySetupAlarmEnable) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).bySingleZoneSetupAlarmEnable) as usize - ptr as usize + }, + 59usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSUBSYSTEMPARAM), + "::", + stringify!(bySingleZoneSetupAlarmEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCenterType) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSUBSYSTEMPARAM), + "::", + stringify!(byCenterType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCenterAccount) as usize - ptr as usize }, + 61usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSUBSYSTEMPARAM), + "::", + stringify!(sCenterAccount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCenterAccountV40) as usize - ptr as usize }, + 67usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSUBSYSTEMPARAM), + "::", + stringify!(sCenterAccountV40) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 99usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSUBSYSTEMPARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ALARMSUBSYSTEMPARAM = tagNET_DVR_ALARMSUBSYSTEMPARAM; +pub type LPNET_DVR_ALARMSUBSYSTEMPARAM = *mut tagNET_DVR_ALARMSUBSYSTEMPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REMIND_TIME { + pub byEnable: BYTE, + pub byHour: BYTE, + pub byMinute: BYTE, + pub bySecond: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REMIND_TIME() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(tagNET_DVR_REMIND_TIME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_REMIND_TIME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMIND_TIME), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHour) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMIND_TIME), + "::", + stringify!(byHour) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMinute) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMIND_TIME), + "::", + stringify!(byMinute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySecond) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMIND_TIME), + "::", + stringify!(bySecond) + ) + ); +} +pub type NET_DVR_REMIND_TIME = tagNET_DVR_REMIND_TIME; +pub type LPNET_DVR_REMIND_TIME = *mut tagNET_DVR_REMIND_TIME; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SUBSYSTEM_PARAM_EX { + pub dwSize: DWORD, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub byAlarmInAdvance: BYTE, + pub byRes1: [BYTE; 3usize], + pub byJointAlarmIn: [BYTE; 64usize], + pub byJointKeyboard: [BYTE; 8usize], + pub byJointOpetaterUser: [BYTE; 32usize], + pub struAlarmRemindTime: [[NET_DVR_REMIND_TIME; 8usize]; 7usize], + pub byJointNetUser: [BYTE; 8usize], + pub byRes2: [BYTE; 280usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUBSYSTEM_PARAM_EX() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 848usize, + concat!("Size of: ", stringify!(tagNET_DVR_SUBSYSTEM_PARAM_EX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SUBSYSTEM_PARAM_EX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_PARAM_EX), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_PARAM_EX), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInAdvance) as usize - ptr as usize }, + 228usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_PARAM_EX), + "::", + stringify!(byAlarmInAdvance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 229usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_PARAM_EX), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJointAlarmIn) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_PARAM_EX), + "::", + stringify!(byJointAlarmIn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJointKeyboard) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_PARAM_EX), + "::", + stringify!(byJointKeyboard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJointOpetaterUser) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_PARAM_EX), + "::", + stringify!(byJointOpetaterUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmRemindTime) as usize - ptr as usize }, + 336usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_PARAM_EX), + "::", + stringify!(struAlarmRemindTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJointNetUser) as usize - ptr as usize }, + 560usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_PARAM_EX), + "::", + stringify!(byJointNetUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 568usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_PARAM_EX), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SUBSYSTEM_PARAM_EX = tagNET_DVR_SUBSYSTEM_PARAM_EX; +pub type LPNET_DVR_SUBSYSTEM_PARAM_EX = *mut tagNET_DVR_SUBSYSTEM_PARAM_EX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_PRINTER_CFG { + pub dwSize: DWORD, + pub byPrinterEnable: BYTE, + pub byPrintTime: BYTE, + pub byFaultDetect: BYTE, + pub byRes1: BYTE, + pub dwAlarmInfo: DWORD, + pub dwDeviceInfo: DWORD, + pub dwOperateInfo: DWORD, + pub byRes2: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_PRINTER_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 276usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMHOST_PRINTER_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_PRINTER_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_PRINTER_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPrinterEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_PRINTER_CFG), + "::", + stringify!(byPrinterEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPrintTime) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_PRINTER_CFG), + "::", + stringify!(byPrintTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaultDetect) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_PRINTER_CFG), + "::", + stringify!(byFaultDetect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_PRINTER_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_PRINTER_CFG), + "::", + stringify!(dwAlarmInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeviceInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_PRINTER_CFG), + "::", + stringify!(dwDeviceInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOperateInfo) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_PRINTER_CFG), + "::", + stringify!(dwOperateInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_PRINTER_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ALARMHOST_PRINTER_CFG = tagNET_DVR_ALARMHOST_PRINTER_CFG; +pub type LPNET_DVR_ALARMHOST_PRINTER_CFG = *mut tagNET_DVR_ALARMHOST_PRINTER_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_NETPARAM { + pub dwSize: DWORD, + pub struIP: NET_DVR_IPADDR, + pub wPort: WORD, + pub byAddressType: BYTE, + pub byRes1: [BYTE; 1usize], + pub byDomainName: [BYTE; 64usize], + pub byReportProtocol: BYTE, + pub byDevID: [BYTE; 32usize], + pub byRes2: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_NETPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMHOST_NETPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMHOST_NETPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_NETPARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_NETPARAM), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_NETPARAM), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddressType) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_NETPARAM), + "::", + stringify!(byAddressType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 151usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_NETPARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDomainName) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_NETPARAM), + "::", + stringify!(byDomainName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReportProtocol) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_NETPARAM), + "::", + stringify!(byReportProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevID) as usize - ptr as usize }, + 217usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_NETPARAM), + "::", + stringify!(byDevID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 249usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_NETPARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ALARMHOST_NETPARAM = tagNET_DVR_ALARMHOST_NETPARAM; +pub type LPNET_DVR_ALARMHOST_NETPARAM = *mut tagNET_DVR_ALARMHOST_NETPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REGISTER_RS485CFG { + pub dwSize: DWORD, + pub wDeviceProtocol: WORD, + pub byRes: [BYTE; 2usize], + pub dwBaudRate: DWORD, + pub byRes1: [BYTE; 124usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REGISTER_RS485CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_REGISTER_RS485CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_REGISTER_RS485CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGISTER_RS485CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDeviceProtocol) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGISTER_RS485CFG), + "::", + stringify!(wDeviceProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGISTER_RS485CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBaudRate) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGISTER_RS485CFG), + "::", + stringify!(dwBaudRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGISTER_RS485CFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_REGISTER_RS485CFG = tagNET_DVR_REGISTER_RS485CFG; +pub type LPNET_DVR_REGISTER_RS485CFG = *mut tagNET_DVR_REGISTER_RS485CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_WIRELESS_NETWORK_CFG { + pub dwSize: DWORD, + pub struNetCenter: [NET_DVR_ALARMHOST_NETPARAM; 4usize], + pub byAPNName: [BYTE; 32usize], + pub byAPNUserName: [BYTE; 24usize], + pub byAPNPassWord: [BYTE; 16usize], + pub byReconnTime: BYTE, + pub byOverTime: BYTE, + pub byDetectLinkTime: BYTE, + pub byRes1: BYTE, + pub bySIMNum: [BYTE; 32usize], + pub struSIMIP: NET_DVR_IPADDR, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_WIRELESS_NETWORK_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1344usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_WIRELESS_NETWORK_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_WIRELESS_NETWORK_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_WIRELESS_NETWORK_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNetCenter) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_WIRELESS_NETWORK_CFG), + "::", + stringify!(struNetCenter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAPNName) as usize - ptr as usize }, + 1028usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_WIRELESS_NETWORK_CFG), + "::", + stringify!(byAPNName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAPNUserName) as usize - ptr as usize }, + 1060usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_WIRELESS_NETWORK_CFG), + "::", + stringify!(byAPNUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAPNPassWord) as usize - ptr as usize }, + 1084usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_WIRELESS_NETWORK_CFG), + "::", + stringify!(byAPNPassWord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReconnTime) as usize - ptr as usize }, + 1100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_WIRELESS_NETWORK_CFG), + "::", + stringify!(byReconnTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverTime) as usize - ptr as usize }, + 1101usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_WIRELESS_NETWORK_CFG), + "::", + stringify!(byOverTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectLinkTime) as usize - ptr as usize }, + 1102usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_WIRELESS_NETWORK_CFG), + "::", + stringify!(byDetectLinkTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1103usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_WIRELESS_NETWORK_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySIMNum) as usize - ptr as usize }, + 1104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_WIRELESS_NETWORK_CFG), + "::", + stringify!(bySIMNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSIMIP) as usize - ptr as usize }, + 1136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_WIRELESS_NETWORK_CFG), + "::", + stringify!(struSIMIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1280usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_WIRELESS_NETWORK_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ALARMHOST_WIRELESS_NETWORK_CFG = tagNET_DVR_ALARMHOST_WIRELESS_NETWORK_CFG; +pub type LPNET_DVR_ALARMHOST_WIRELESS_NETWORK_CFG = *mut tagNET_DVR_ALARMHOST_WIRELESS_NETWORK_CFG; +#[doc = "�����������/////////////"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_NETCFG { + pub dwSize: DWORD, + pub struNetCenter: [NET_DVR_ALARMHOST_NETPARAM; 4usize], + pub byRes1: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_NETCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1060usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMHOST_NETCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMHOST_NETCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_NETCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNetCenter) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_NETCFG), + "::", + stringify!(struNetCenter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1028usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_NETCFG), + "::", + stringify!(byRes1) + ) + ); +} +#[doc = "�����������/////////////"] +pub type NET_DVR_ALARMHOST_NETCFG = tagNET_DVR_ALARMHOST_NETCFG; +#[doc = "�����������/////////////"] +pub type LPNET_DVR_ALARMHOST_NETCFG = *mut tagNET_DVR_ALARMHOST_NETCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_REPORTCENTER_CFG { + pub dwSize: DWORD, + pub byValid: BYTE, + pub byRes: [BYTE; 3usize], + pub byChanAlarmMode: [BYTE; 4usize], + pub byDealFailCenter: [BYTE; 16usize], + pub byDataType: BYTE, + pub byRes2: [BYTE; 15usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_REPORTCENTER_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_REPORTCENTER_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_REPORTCENTER_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_REPORTCENTER_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_REPORTCENTER_CFG), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_REPORTCENTER_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanAlarmMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_REPORTCENTER_CFG), + "::", + stringify!(byChanAlarmMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDealFailCenter) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_REPORTCENTER_CFG), + "::", + stringify!(byDealFailCenter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataType) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_REPORTCENTER_CFG), + "::", + stringify!(byDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 29usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_REPORTCENTER_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ALARMHOST_REPORTCENTER_CFG = tagNET_DVR_ALARMHOST_REPORTCENTER_CFG; +pub type LPNET_DVR_ALARMHOST_REPORTCENTER_CFG = *mut tagNET_DVR_ALARMHOST_REPORTCENTER_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_REPORT_CENTER_CFG_V40 { + pub dwSize: DWORD, + pub byValid: BYTE, + pub byDataType: BYTE, + pub byRes: [BYTE; 2usize], + pub byChanAlarmMode: [BYTE; 4usize], + pub byDealFailCenter: [BYTE; 16usize], + pub byZoneReport: [BYTE; 512usize], + pub byNonZoneReport: [BYTE; 32usize], + pub byAlarmNetCard: [BYTE; 4usize], + pub byRes2: [BYTE; 252usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_REPORT_CENTER_CFG_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 828usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_REPORT_CENTER_CFG_V40) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_REPORT_CENTER_CFG_V40) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_REPORT_CENTER_CFG_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_REPORT_CENTER_CFG_V40), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_REPORT_CENTER_CFG_V40), + "::", + stringify!(byDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_REPORT_CENTER_CFG_V40), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanAlarmMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_REPORT_CENTER_CFG_V40), + "::", + stringify!(byChanAlarmMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDealFailCenter) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_REPORT_CENTER_CFG_V40), + "::", + stringify!(byDealFailCenter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZoneReport) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_REPORT_CENTER_CFG_V40), + "::", + stringify!(byZoneReport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNonZoneReport) as usize - ptr as usize }, + 540usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_REPORT_CENTER_CFG_V40), + "::", + stringify!(byNonZoneReport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmNetCard) as usize - ptr as usize }, + 572usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_REPORT_CENTER_CFG_V40), + "::", + stringify!(byAlarmNetCard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 576usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_REPORT_CENTER_CFG_V40), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ALARMHOST_REPORT_CENTER_CFG_V40 = tagNET_DVR_ALARMHOST_REPORT_CENTER_CFG_V40; +pub type LPNET_DVR_ALARMHOST_REPORT_CENTER_CFG_V40 = + *mut tagNET_DVR_ALARMHOST_REPORT_CENTER_CFG_V40; +#[doc = "������״\u{32c}�ϴ�/////////////"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_SAFETYCABINSTATE { + pub dwSize: DWORD, + pub byEnterButton: BYTE, + pub byExitButton: BYTE, + pub byDoorState: BYTE, + pub byLockState: BYTE, + pub byUrgencyButton: BYTE, + pub byManState: BYTE, + pub byAbnormal: BYTE, + pub byLightState: BYTE, + pub byFanState: BYTE, + pub byFollow: BYTE, + pub byFighting: BYTE, + pub byFaint: BYTE, + pub byManyPerson: BYTE, + pub byRes: [BYTE; 59usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_SAFETYCABINSTATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_SAFETYCABINSTATE) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_SAFETYCABINSTATE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SAFETYCABINSTATE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnterButton) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SAFETYCABINSTATE), + "::", + stringify!(byEnterButton) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExitButton) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SAFETYCABINSTATE), + "::", + stringify!(byExitButton) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDoorState) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SAFETYCABINSTATE), + "::", + stringify!(byDoorState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLockState) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SAFETYCABINSTATE), + "::", + stringify!(byLockState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUrgencyButton) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SAFETYCABINSTATE), + "::", + stringify!(byUrgencyButton) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byManState) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SAFETYCABINSTATE), + "::", + stringify!(byManState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAbnormal) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SAFETYCABINSTATE), + "::", + stringify!(byAbnormal) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLightState) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SAFETYCABINSTATE), + "::", + stringify!(byLightState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFanState) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SAFETYCABINSTATE), + "::", + stringify!(byFanState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFollow) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SAFETYCABINSTATE), + "::", + stringify!(byFollow) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFighting) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SAFETYCABINSTATE), + "::", + stringify!(byFighting) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaint) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SAFETYCABINSTATE), + "::", + stringify!(byFaint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byManyPerson) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SAFETYCABINSTATE), + "::", + stringify!(byManyPerson) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SAFETYCABINSTATE), + "::", + stringify!(byRes) + ) + ); +} +#[doc = "������״\u{32c}�ϴ�/////////////"] +pub type NET_DVR_ALARMHOST_SAFETYCABINSTATE = tagNET_DVR_ALARMHOST_SAFETYCABINSTATE; +#[doc = "������״\u{32c}�ϴ�/////////////"] +pub type LPNET_DVR_ALARMHOST_SAFETYCABINSTATE = *mut tagNET_DVR_ALARMHOST_SAFETYCABINSTATE; +#[doc = "��������ڣ�����״\u{32c}�ϴ�/////////////"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_ALARMOUTSTATUS { + pub dwSize: DWORD, + pub byName: [BYTE; 32usize], + pub byAlarmType: BYTE, + pub wChan: WORD, + pub byAlarmStatus: BYTE, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_ALARMOUTSTATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMHOST_ALARMOUTSTATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_ALARMOUTSTATUS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ALARMOUTSTATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ALARMOUTSTATUS), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ALARMOUTSTATUS), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wChan) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ALARMOUTSTATUS), + "::", + stringify!(wChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmStatus) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ALARMOUTSTATUS), + "::", + stringify!(byAlarmStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ALARMOUTSTATUS), + "::", + stringify!(byRes) + ) + ); +} +#[doc = "��������ڣ�����״\u{32c}�ϴ�/////////////"] +pub type NET_DVR_ALARMHOST_ALARMOUTSTATUS = tagNET_DVR_ALARMHOST_ALARMOUTSTATUS; +#[doc = "��������ڣ�����״\u{32c}�ϴ�/////////////"] +pub type LPNET_DVR_ALARMHOST_ALARMOUTSTATUS = *mut tagNET_DVR_ALARMHOST_ALARMOUTSTATUS; +#[doc = "�����ϴ�����/////////////"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUDIO_PARAM { + pub dwSize: DWORD, + pub byAudioFormat: BYTE, + pub byRes1: BYTE, + pub wChannels: WORD, + pub dwSamplesPerSec: DWORD, + pub byRes2: [BYTE; 20usize], + pub dwAudioSize: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUDIO_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUDIO_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AUDIO_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioFormat) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_PARAM), + "::", + stringify!(byAudioFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wChannels) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_PARAM), + "::", + stringify!(wChannels) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSamplesPerSec) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_PARAM), + "::", + stringify!(dwSamplesPerSec) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_PARAM), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAudioSize) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_PARAM), + "::", + stringify!(dwAudioSize) + ) + ); +} +#[doc = "�����ϴ�����/////////////"] +pub type NET_DVR_AUDIO_PARAM = tagNET_DVR_AUDIO_PARAM; +#[doc = "�����ϴ�����/////////////"] +pub type LPNET_DVR_AUDIO_PARAM = *mut tagNET_DVR_AUDIO_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PREVIEWINFO { + pub lChannel: LONG, + pub dwStreamType: DWORD, + pub dwLinkMode: DWORD, + pub hPlayWnd: HWND, + pub bBlocked: DWORD, + pub bPassbackRecord: DWORD, + pub byPreviewMode: BYTE, + pub byStreamID: [BYTE; 32usize], + pub byProtoType: BYTE, + pub byRes1: BYTE, + pub byVideoCodingType: BYTE, + pub dwDisplayBufNum: DWORD, + pub byNPQMode: BYTE, + pub byRecvMetaData: BYTE, + pub byDataType: BYTE, + pub byRes: [BYTE; 213usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PREVIEWINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 288usize, + concat!("Size of: ", stringify!(tagNET_DVR_PREVIEWINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PREVIEWINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWINFO), + "::", + stringify!(lChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStreamType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWINFO), + "::", + stringify!(dwStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLinkMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWINFO), + "::", + stringify!(dwLinkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).hPlayWnd) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWINFO), + "::", + stringify!(hPlayWnd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bBlocked) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWINFO), + "::", + stringify!(bBlocked) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bPassbackRecord) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWINFO), + "::", + stringify!(bPassbackRecord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPreviewMode) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWINFO), + "::", + stringify!(byPreviewMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamID) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWINFO), + "::", + stringify!(byStreamID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProtoType) as usize - ptr as usize }, + 65usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWINFO), + "::", + stringify!(byProtoType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 66usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWINFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoCodingType) as usize - ptr as usize }, + 67usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWINFO), + "::", + stringify!(byVideoCodingType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDisplayBufNum) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWINFO), + "::", + stringify!(dwDisplayBufNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNPQMode) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWINFO), + "::", + stringify!(byNPQMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecvMetaData) as usize - ptr as usize }, + 73usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWINFO), + "::", + stringify!(byRecvMetaData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataType) as usize - ptr as usize }, + 74usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWINFO), + "::", + stringify!(byDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 75usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PREVIEWINFO = tagNET_DVR_PREVIEWINFO; +pub type LPNET_DVR_PREVIEWINFO = *mut tagNET_DVR_PREVIEWINFO; +pub const _NET_DVR_LINK_KIND__ENUM_LINK_PREVIEW: _NET_DVR_LINK_KIND_ = 1; +pub const _NET_DVR_LINK_KIND__ENUM_LINK_PLAYBACK: _NET_DVR_LINK_KIND_ = 2; +pub const _NET_DVR_LINK_KIND__ENUM_LINK_VOICEPLAY: _NET_DVR_LINK_KIND_ = 3; +pub type _NET_DVR_LINK_KIND_ = ::std::os::raw::c_uint; +pub use self::_NET_DVR_LINK_KIND_ as NET_DVR_LINK_KIND; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_LINK_ADDR { + pub uLocalIP: NET_DVR_IPADDR_UNION, + pub wLocalPort: [WORD; 10usize], + pub byLocalPortNum: BYTE, + pub byRes1: [BYTE; 3usize], + pub uDevIP: NET_DVR_IPADDR_UNION, + pub wDevPort: [WORD; 10usize], + pub byDevPortNum: BYTE, + pub byRes2: [BYTE; 3usize], + pub byRes: [BYTE; 80usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LINK_ADDR() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 640usize, + concat!("Size of: ", stringify!(tagNET_DVR_LINK_ADDR)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LINK_ADDR)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLocalIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINK_ADDR), + "::", + stringify!(uLocalIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalPort) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINK_ADDR), + "::", + stringify!(wLocalPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalPortNum) as usize - ptr as usize }, + 276usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINK_ADDR), + "::", + stringify!(byLocalPortNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 277usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINK_ADDR), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uDevIP) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINK_ADDR), + "::", + stringify!(uDevIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevPort) as usize - ptr as usize }, + 536usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINK_ADDR), + "::", + stringify!(wDevPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevPortNum) as usize - ptr as usize }, + 556usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINK_ADDR), + "::", + stringify!(byDevPortNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 557usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINK_ADDR), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 560usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINK_ADDR), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LINK_ADDR = tagNET_DVR_LINK_ADDR; +pub type LPNET_DVR_LINK_ADDR = *mut tagNET_DVR_LINK_ADDR; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PREVIEWINFO_SPECIAL { + pub sURL: [::std::os::raw::c_char; 1024usize], + pub dwLinkMode: DWORD, + pub hPlayWnd: HWND, + pub bBlocked: DWORD, + pub dwDisplayBufNum: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PREVIEWINFO_SPECIAL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1112usize, + concat!("Size of: ", stringify!(tagNET_DVR_PREVIEWINFO_SPECIAL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PREVIEWINFO_SPECIAL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sURL) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWINFO_SPECIAL), + "::", + stringify!(sURL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLinkMode) as usize - ptr as usize }, + 1024usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWINFO_SPECIAL), + "::", + stringify!(dwLinkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).hPlayWnd) as usize - ptr as usize }, + 1032usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWINFO_SPECIAL), + "::", + stringify!(hPlayWnd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bBlocked) as usize - ptr as usize }, + 1040usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWINFO_SPECIAL), + "::", + stringify!(bBlocked) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDisplayBufNum) as usize - ptr as usize }, + 1044usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWINFO_SPECIAL), + "::", + stringify!(dwDisplayBufNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1048usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEWINFO_SPECIAL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PREVIEWINFO_SPECIAL = tagNET_DVR_PREVIEWINFO_SPECIAL; +pub type LPNET_DVR_PREVIEWINFO_SPECIAL = *mut tagNET_DVR_PREVIEWINFO_SPECIAL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRIGGER_EVENT { + pub dwSize: DWORD, + pub dwOverallEventTriggerAlarmoutOn: DWORD, + pub dwOverallEventTriggerAlarmoutOff: DWORD, + pub dwSubSystemEventTriggerAlarmoutOn: [DWORD; 32usize], + pub dwSubSystemEventTriggerAlarmoutOff: [DWORD; 32usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRIGGER_EVENT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 396usize, + concat!("Size of: ", stringify!(tagNET_DVR_TRIGGER_EVENT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TRIGGER_EVENT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRIGGER_EVENT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).dwOverallEventTriggerAlarmoutOn) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRIGGER_EVENT), + "::", + stringify!(dwOverallEventTriggerAlarmoutOn) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).dwOverallEventTriggerAlarmoutOff) as usize - ptr as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRIGGER_EVENT), + "::", + stringify!(dwOverallEventTriggerAlarmoutOff) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).dwSubSystemEventTriggerAlarmoutOn) as usize - ptr as usize + }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRIGGER_EVENT), + "::", + stringify!(dwSubSystemEventTriggerAlarmoutOn) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).dwSubSystemEventTriggerAlarmoutOff) as usize - ptr as usize + }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRIGGER_EVENT), + "::", + stringify!(dwSubSystemEventTriggerAlarmoutOff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 268usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRIGGER_EVENT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TRIGGER_EVENT = tagNET_DVR_TRIGGER_EVENT; +pub type LPNET_DVR_TRIGGER_EVENT = *mut tagNET_DVR_TRIGGER_EVENT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_FAULT_CFG { + pub dwSize: DWORD, + pub dwCheckFault: DWORD, + pub dwOverallFaultJointLED: DWORD, + pub dwOverallFaultJointSound: DWORD, + pub dwSubSystemFaultJointLED: [DWORD; 32usize], + pub dwSubSystemFaultJointSound: [DWORD; 32usize], + pub dwFaultJointFaultLight: DWORD, + pub byRes: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_FAULT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 336usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMHOST_FAULT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMHOST_FAULT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_FAULT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCheckFault) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_FAULT_CFG), + "::", + stringify!(dwCheckFault) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOverallFaultJointLED) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_FAULT_CFG), + "::", + stringify!(dwOverallFaultJointLED) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOverallFaultJointSound) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_FAULT_CFG), + "::", + stringify!(dwOverallFaultJointSound) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSubSystemFaultJointLED) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_FAULT_CFG), + "::", + stringify!(dwSubSystemFaultJointLED) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSubSystemFaultJointSound) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_FAULT_CFG), + "::", + stringify!(dwSubSystemFaultJointSound) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFaultJointFaultLight) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_FAULT_CFG), + "::", + stringify!(dwFaultJointFaultLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 276usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_FAULT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_FAULT_CFG = tagNET_DVR_ALARMHOST_FAULT_CFG; +pub type LPNET_DVR_ALARMHOST_FAULT_CFG = *mut tagNET_DVR_ALARMHOST_FAULT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LIST_INFO { + pub dwSize: DWORD, + pub byIndex: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LIST_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_LIST_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LIST_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LIST_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LIST_INFO), + "::", + stringify!(byIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LIST_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LIST_INFO = tagNET_DVR_LIST_INFO; +pub type LPNET_DVR_LIST_INFO = *mut tagNET_DVR_LIST_INFO; +pub const tagNET_DVR_ALARMHOST_REPORT_TYPE_NET_DVR_DEFENCE_ALARM: tagNET_DVR_ALARMHOST_REPORT_TYPE = + 1; +pub const tagNET_DVR_ALARMHOST_REPORT_TYPE_NET_DVR_VIDEO_ALARM: tagNET_DVR_ALARMHOST_REPORT_TYPE = + 2; +pub const tagNET_DVR_ALARMHOST_REPORT_TYPE_NET_DVR_VIRTUAL_DEFENCE_ALARM: + tagNET_DVR_ALARMHOST_REPORT_TYPE = 3; +pub const tagNET_DVR_ALARMHOST_REPORT_TYPE_NET_DVR_HOSTAGE_ALARM: tagNET_DVR_ALARMHOST_REPORT_TYPE = + 4; +pub const tagNET_DVR_ALARMHOST_REPORT_TYPE_NET_DVR_KNOCK_DOWN_ALARM: + tagNET_DVR_ALARMHOST_REPORT_TYPE = 5; +pub const tagNET_DVR_ALARMHOST_REPORT_TYPE_NET_DVR_OPERATE_ALARM: tagNET_DVR_ALARMHOST_REPORT_TYPE = + 6; +pub const tagNET_DVR_ALARMHOST_REPORT_TYPE_NET_DVR_OHTER_ABNORMAL_ALARM: + tagNET_DVR_ALARMHOST_REPORT_TYPE = 7; +pub type tagNET_DVR_ALARMHOST_REPORT_TYPE = ::std::os::raw::c_uint; +pub use self::tagNET_DVR_ALARMHOST_REPORT_TYPE as NET_DVR_ALARMHOST_REPORT_TYPE; +pub const tagNET_DVR_ALARMHOST_CID_MAIN_TYPE_CID_ENTER: tagNET_DVR_ALARMHOST_CID_MAIN_TYPE = 1000; +pub const tagNET_DVR_ALARMHOST_CID_MAIN_TYPE_CID_EXIT: tagNET_DVR_ALARMHOST_CID_MAIN_TYPE = 3000; +pub type tagNET_DVR_ALARMHOST_CID_MAIN_TYPE = ::std::os::raw::c_uint; +pub use self::tagNET_DVR_ALARMHOST_CID_MAIN_TYPE as NET_DVR_ALARMHOST_CID_MAIN_TYPE; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_MEDICAL_ALARM: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 100; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_ALARM: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 103; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_FIRE_ALARM: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 110; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_ABDUCT_REPORT: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 121; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_SILENT_24: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 122; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_AUDIO_24: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 123; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_AUXILIARY_24: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 124; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_SHOCK_24: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 125; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_OVERTIME_ALARM: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 126; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_EMERGENCE_CALL_HELP: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 129; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_BURGLARY_ALARM: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 130; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_PERIMETER_ALARM: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 131; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_INNET_ALARM: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 132; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_ENTER_EXIT: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 134; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_DEVICE_OPEN: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 137; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_ZONE_BUS_BREAK: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 141; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_ZONE_BUS_SHORT: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 142; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_MOTION_ALARM: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 148; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_GAS_LEAKAGE: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 151; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_ZONE_EARLY_WARNING: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 207; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_AC_LOSS: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 301; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_LOW_BATT_VOL: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 302; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_DEV_RESET: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 305; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_MBUS_MODEL_FAULT: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 333; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_PRINTER_FAIL: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 336; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_LOW_EXPANDER_VOL: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 338; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_EXPANDER_OPEN: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 341; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_EXPANDER_AC_POWER_DOWN: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 342; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_WIRELESS_REPEATER_TAMPERED: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 343; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_WIRELESS_SIREN_TAMPERED: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 344; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_WIRELESS_SIREN_DISCONNECTED: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 345; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_LINE_LOSS: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 354; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_BUS_LOSS: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 382; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_DETECTOR_OPEN: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 383; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_ZONE_OPEN_CIRCUIT: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 386; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_ZONE_SHORT_CIRCUIT: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 387; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_GUARD: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 401; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_GUARD_AUTO: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 403; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_CANCEL_ARM: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 406; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_GUARD_IMME: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 408; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_KEY_ZONE_GUARD: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 409; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_GUARD_STAY: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 441; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_FORCED_ARM: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 442; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_AUTOCTRL_TRIG: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 443; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_ONETOUCH_AWAY_ARMING: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 444; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_ONETOUCH_STAY_ARMING: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 445; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_CARD_ARMING_OR_DISARMING: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 446; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_LATE_TO_DISARM: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 452; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_AUTOGUARD_FAIL: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 455; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_AOPEN_TRIG_FAIL: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 460; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_ACLOSE_TRIG_FAIL: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 461; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_AUTOUNGUARD_FAIL: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 462; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_BYPASS: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 570; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_GROUP_BYPASS: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 574; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_MANUAL_TEST_RPT: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 601; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_AUTO_TEST_RPT: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 602; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_PHONE_CONNET_TEST: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 617; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_ENTER_PROG: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 627; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_EXIT_PROG: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 628; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_FIELD_DETECTION: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 759; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_LINE_DETECTION: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 773; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_PIR_ALARM: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 774; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_SOUND_INTENSITY_RISE: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 775; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_SOUND_INTENSITY_DROP: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 776; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_AUDIO_INPUT_EXCEPTION: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 777; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_SOFT_INSTAND: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 810; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_SOFT_FIRE: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 811; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_SOFT_MOBS: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 812; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_KEYPAD_LOCKED: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 862; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_ABSENCE_ALARM: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 863; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_KEY_FAIL: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 910; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_TRIGGER_FAIL: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 911; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_GPK_FAIL: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 912; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_MODULE_FAIL: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 913; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_WIRELESS_DETECTOR_FAIL: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 914; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_WIRELESS_DETECTOR_BATTERY_LOW: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 915; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_EXPANDER_DISCONNECT: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 916; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_WIRELESS_REPEATER_DISCONNECT: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 917; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_RADAR_TRANS_FAULT: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 918; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_WIRELESS_SIREN_LOW_BATTERY: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 919; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_WRIE_LESS_NET: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 920; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_SIM_FAULT: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 921; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_WIFI_ABNORMAL: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 922; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_RF_ABNORMAL: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 923; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_DATE_TRAFFIC_OVERFLOW: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 924; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_IPADDR_CONFLICT: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 930; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_ETHERNET_BROKEN: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 931; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_GROUP_OUT_RP: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 932; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_GROUP_IN_RP: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 933; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_MOTION_DECTECT: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 940; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_MASK_ALARM: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 941; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_VI_LOST: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 942; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_VS_MISMATCH: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 943; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_VI_EXCEPTION: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 944; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_HD_FULL: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 945; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_HD_ERROR: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 946; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_PIC_SEND_FAILED: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 947; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_KEY_LOCKED: tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = + 948; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_NETWORK_CAMERA_DISCONNECT: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 949; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_DUTY_CHECKING: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 960; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_POST_RESPONSE: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 961; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_ZONE_BUS_SEARCH: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 970; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_ZONE_BUS_REGIST: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 971; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_GUARD_DELAY_OP: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 972; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_GUARD_SINGLE: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 973; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_SINGLE_ZONE_CLEARED: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 974; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_ZONE_ASSOCIATED_DETECTOR: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 975; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_ZONE_CONSULTING: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 976; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_EXPANDER_DELETED: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 977; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_WIRELESS_REPEATER_DELETED: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 978; +pub const tagNET_DVR_ALARMHOST_CID_MINOR_TYPE_CID_WIRELESS_SIREN_DELETED: + tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = 979; +pub type tagNET_DVR_ALARMHOST_CID_MINOR_TYPE = ::std::os::raw::c_uint; +pub use self::tagNET_DVR_ALARMHOST_CID_MINOR_TYPE as NET_DVR_ALARMHOST_CID_MINOR_TYPE; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_MEDICAL_ALARM: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1100; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_MEDICAL_ALARM_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3100; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ALARM: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1103; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ALARM_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3103; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_FIRE_ALARM: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1110; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_FIRE_ALARM_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3110; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ABDUCT_REPORT: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1121; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_SILENT_24: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1122; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_SILENT_24_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3122; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_AUDIO_24: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1123; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_AUDIO_24_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3123; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_AUXILIARY_24: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1124; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_AUXILIARY_24_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3124; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_SHOCK_24: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1125; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_SHOCK_24_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3125; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_TIMEOUT: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1126; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_TIMEOUT_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3126; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_EMERGENCE_CALL_HELP: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1129; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_EMERGENCE_CALL_HELP_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3129; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_BURGLARY_ALARM: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1130; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_BURGLARY_ALARM_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3130; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_PERIMETER_ALARM: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1131; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_PERIMETER_ALARM_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3131; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_INNET_ALARM: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1132; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_INNET_ALARM_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3132; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ENTER_EXIT: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1134; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ENTER_EXIT_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3134; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_DEVICE_OPEN: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1137; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_DEVICE_OPEN_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3137; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ZONE_BUS_BREAK: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1141; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ZONE_BUS_BREAK_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3141; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ZONE_BUS_SHORT: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1142; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ZONE_BUS_SHORT_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3142; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_MOTION_ALARM: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1148; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_MOTION_ALARM_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3148; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_GAS_LEAKAGE_ALARM: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1151; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_GAS_LEAKAGE_ALARM_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3151; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ZONE_EARLY_WARNING: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1207; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ZONE_EARLY_WARNING_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3207; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_AC_LOSS: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1301; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_AC_LOSS_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3301; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_LOW_BATT_VOL: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1302; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_LOW_BATT_VOL_NORMAL: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3302; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_DEV_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1305; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_MBUS_MODEL_FAULT: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1333; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_MBUS_MODEL_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3333; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_PRINTER_OFF: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1336; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_PRINTER_ON: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3336; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_EXTEND_MODULE_VOL_LOW: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1338; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_EXTEND_MODULE_VOL_NORMAL: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3338; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_EXTEND_MODULE_REMOVE: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1341; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_EXTEND_MODULE_RECOVER: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3341; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_EXTEND_MODULE_AC_LOSS: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1342; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_EXTEND_MODULE_AC_LOSS_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3342; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_WIRELESS_REPEATER_TAMPER: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1343; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_WIRELESS_REPEATER_RESTORE: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3343; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_WIRELESS_SIREN_TAMPER: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1344; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_WIRELESS_SIREN_RESTORE: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3344; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_WIRELESS_SIREN_DISCONNECT: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1345; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_WIRELESS_SIREN_CONNECT: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3345; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_LINE_LOSS: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1354; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_LINE_LOSS_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3354; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_BUS_LOSS: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1382; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_BUS_LOSS_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3382; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_SENSOR_TAMPER: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1383; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_SENSOR_TAMPER_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3383; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ZONE_OPEN_CIRCUIT_ALARM: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1386; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ZONE_SHORT_CIRCUIT_ALARM: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1387; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_DISARM: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1401; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ARM: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3401; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_DISARM_AUTO: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1403; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ARM_AUTO: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3403; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_CANCEL_ARM: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1406; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ARM_IMME: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3408; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_KEY_ZONE_ARM: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1409; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_KEY_ZONE_DISARM: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3409; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_GUARD_STAY: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3441; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_FORCED_ARM: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3442; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_AUTOCTRL_TRIG_ON: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1443; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_AUTOCTRL_TRIG_OFF: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3443; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_LATE_TO_DISARM: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1452; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_AUTOGUARD_FAIL: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1455; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_AOPEN_TRIG_FAIL: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1460; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ACLOSE_TRIG_FAIL: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1461; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_AUTOUNGUARD_FAIL: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1462; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_BYPASS: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1570; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_BYPASS_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3570; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_GROUP_BYPASS: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1574; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_GROUP_BYPASS_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3574; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_MANUAL_TEST_RPT: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1601; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_AUTO_TEST_RPT: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1602; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_LINE_TEST: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1617; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ENTER_PROG: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1627; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_EXIT_PROG: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1628; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_FIELD_DETECTION: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1759; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_FIELD_DETECTION_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3759; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_LINE_DETECTION: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1773; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_LINE_DETECTION_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3773; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_PIR_ALARM: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1774; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_PIR_ALARM_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3774; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_SOUND_INTENSITY_RISE: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1775; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_SOUND_INTENSITY_RISE_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3775; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_SOUND_INTENSITY_DROP: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1776; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_SOUND_INTENSITY_DROP_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3776; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_AUDIO_INPUT_EXCEPTION: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1777; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_AUDIO_INPUT_EXCEPTION_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3777; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_SOFT_INSTAND: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1810; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_SOFT_FIRE: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1811; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_SOFT_MOBS: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1812; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_KEYPAD_LOCK: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1862; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_KEYPAD_UNLOCK: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3862; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ABSENCE_ALARM: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1863; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_KEY_FAIL: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1910; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_KEY_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3910; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_TRIGGER_FAIL: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1911; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_TRIGGER_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3911; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_GPK_FAIL: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1912; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_GPK_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3912; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_MODULE_FAIL: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1913; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_MODULE_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3913; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_WIRELESS_DETECTOR_FAIL: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1914; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_WIRELESS_DETECTOR_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3914; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_WIRELESS_DETECTOR_BATTERY_LOW: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1915; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_WIRELESS_DETECTOR_BATTERY_NORMAL: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3915; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_EXTEND_MODULE_LOSS: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1916; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_EXTEND_MODULE_LOSS_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3916; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_WIRELESS_REPEATER_DISCONNECT: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1917; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_WIRELESS_REPEATER_CONNECT: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3917; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_RADAR_TRANS_FAULT: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1918; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_RADAR_TRANS_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3918; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_WRIELESS_SIREN_LOW_BATTERY: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1919; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_NORMAL_WRIELESS_SIREN_BATTERY: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3919; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_WRIELESS_NET_FAULT: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1920; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_WRIELESS_NET_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3920; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_SIM_FAULT: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1921; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_SIM_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3921; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_WIFI_ABNORMAL: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1922; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_WIFI_NORMAL: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3922; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_RF_ABNORMAL: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1923; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_RF_NORMAL: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3923; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_DATE_TRAFFIC_OVERFLOW: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1924; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_IPADDR_CONFLICT: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1930; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_IPADDR_NORMAL: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3930; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ETHERNET_BROKEN: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1931; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ETHERNET_NORMAL: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3931; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_MOTION_DECTECT_START: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1940; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_MOTION_DECTECT_STOP: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3940; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_MASK_ALARM_START: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1941; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_MASK_ALARM_STOP: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3941; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_VI_LOST_START: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1942; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_VI_LOST_STOP: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3942; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_VS_MISMATCH: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1943; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_VS_MATCH: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3943; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_VI_EXCEPTION: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1944; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_VI_NORMAL: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3944; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_HD_FULL: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1945; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_HD_FREE: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3945; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_HD_ERROR: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1946; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_HD_RESET: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3946; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_PIC_SEND_FAILED: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1947; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_SENDING_EMAIL_FAILED: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1948; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_NETWORK_CAMERA_DISCONNECT: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1949; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_NETWORK_CAMERA_CONNECT: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3949; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_DUTY_CHECKING: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1960; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_POST_RESPONSE: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1961; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ZONE_BUS_SEARCH: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1970; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ZONE_BUS_REGIST: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1971; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_GUARD_SINGLE_ARM: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1973; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_GUARD_SINGLE_DISARM: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3973; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_SINGLE_ZONE_ALARM_CLEARED: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1974; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ZONE_ASSOCIATED_DETECTOR_DEL: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1975; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ZONE_ASSOCIATED_DETECTOR_ADD: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3975; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ZONE_CONSULT: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1976; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_ZONE_CONSULT_STOP: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3976; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_EXTEND_MODULE_DEL: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1977; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_EXTEND_MODULE_ADD: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3977; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_WIRELESS_REPEATER_DEL: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1978; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_WIRELESS_REPEATER_ADD: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3978; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_WIRELESS_SIREN_DEL: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 1979; +pub const tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE_CID_TYPE_WIRELESS_SIREN_ADD: + tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = 3979; +pub type tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE = ::std::os::raw::c_uint; +pub use self::tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE as NET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CID_ALARM { + pub dwSize: DWORD, + pub sCIDCode: [BYTE; 4usize], + pub sCIDDescribe: [BYTE; 32usize], + pub struTriggerTime: NET_DVR_TIME_EX, + pub struUploadTime: NET_DVR_TIME_EX, + pub sCenterAccount: [BYTE; 6usize], + pub byReportType: BYTE, + pub byUserType: BYTE, + pub sUserName: [BYTE; 32usize], + pub wKeyUserNo: WORD, + pub byKeypadNo: BYTE, + pub bySubSysNo: BYTE, + pub wDefenceNo: WORD, + pub byVideoChanNo: BYTE, + pub byDiskNo: BYTE, + pub wModuleAddr: WORD, + pub byCenterType: BYTE, + pub byRelativeChannel: BYTE, + pub sCenterAccountV40: [BYTE; 32usize], + pub byDevSerialNo: [BYTE; 9usize], + pub byRepeaterNo: BYTE, + pub wRemoteCtrllerUserNo: WORD, + pub dwIOTChannelNo: DWORD, + pub standardCIDcode: BYTE, + pub byRes2: [BYTE; 11usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CID_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 168usize, + concat!("Size of: ", stringify!(tagNET_DVR_CID_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CID_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CID_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCIDCode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CID_ALARM), + "::", + stringify!(sCIDCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCIDDescribe) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CID_ALARM), + "::", + stringify!(sCIDDescribe) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTriggerTime) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CID_ALARM), + "::", + stringify!(struTriggerTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struUploadTime) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CID_ALARM), + "::", + stringify!(struUploadTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCenterAccount) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CID_ALARM), + "::", + stringify!(sCenterAccount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReportType) as usize - ptr as usize }, + 62usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CID_ALARM), + "::", + stringify!(byReportType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUserType) as usize - ptr as usize }, + 63usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CID_ALARM), + "::", + stringify!(byUserType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CID_ALARM), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wKeyUserNo) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CID_ALARM), + "::", + stringify!(wKeyUserNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byKeypadNo) as usize - ptr as usize }, + 98usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CID_ALARM), + "::", + stringify!(byKeypadNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSysNo) as usize - ptr as usize }, + 99usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CID_ALARM), + "::", + stringify!(bySubSysNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDefenceNo) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CID_ALARM), + "::", + stringify!(wDefenceNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoChanNo) as usize - ptr as usize }, + 102usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CID_ALARM), + "::", + stringify!(byVideoChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDiskNo) as usize - ptr as usize }, + 103usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CID_ALARM), + "::", + stringify!(byDiskNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wModuleAddr) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CID_ALARM), + "::", + stringify!(wModuleAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCenterType) as usize - ptr as usize }, + 106usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CID_ALARM), + "::", + stringify!(byCenterType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelativeChannel) as usize - ptr as usize }, + 107usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CID_ALARM), + "::", + stringify!(byRelativeChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCenterAccountV40) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CID_ALARM), + "::", + stringify!(sCenterAccountV40) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevSerialNo) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CID_ALARM), + "::", + stringify!(byDevSerialNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRepeaterNo) as usize - ptr as usize }, + 149usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CID_ALARM), + "::", + stringify!(byRepeaterNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRemoteCtrllerUserNo) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CID_ALARM), + "::", + stringify!(wRemoteCtrllerUserNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIOTChannelNo) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CID_ALARM), + "::", + stringify!(dwIOTChannelNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).standardCIDcode) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CID_ALARM), + "::", + stringify!(standardCIDcode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 157usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CID_ALARM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CID_ALARM = tagNET_DVR_CID_ALARM; +pub type LPNET_DVR_CID_ALARM = *mut tagNET_DVR_CID_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_MODULE_CFG { + pub dwSize: DWORD, + pub byModuleType: BYTE, + pub byZoneType: BYTE, + pub byTriggerType: BYTE, + pub byRes1: [BYTE; 1usize], + pub sModelInfo: [::std::os::raw::c_char; 32usize], + pub sDeviceVersionInfo: [::std::os::raw::c_char; 32usize], + pub byRes: [BYTE; 188usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_MODULE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMHOST_MODULE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMHOST_MODULE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MODULE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byModuleType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MODULE_CFG), + "::", + stringify!(byModuleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZoneType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MODULE_CFG), + "::", + stringify!(byZoneType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTriggerType) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MODULE_CFG), + "::", + stringify!(byTriggerType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MODULE_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sModelInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MODULE_CFG), + "::", + stringify!(sModelInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDeviceVersionInfo) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MODULE_CFG), + "::", + stringify!(sDeviceVersionInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_MODULE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_MODULE_CFG = tagNET_DVR_ALARMHOST_MODULE_CFG; +pub type LPNET_DVR_ALARMHOST_MODULE_CFG = *mut tagNET_DVR_ALARMHOST_MODULE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DECCARD_ABILITY_V41 { + pub byCardType: BYTE, + pub byDecNums: BYTE, + pub byDispNums: BYTE, + pub byDecStartIdx: BYTE, + pub byDispStartIdx: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwVgaSupportResolution: [DWORD; 32usize], + pub dwHdmiSupportResolution: [DWORD; 32usize], + pub dwDviSupportResolution: [DWORD; 32usize], + pub dwYpbprSupportResolution: [DWORD; 32usize], + pub byDispFormat: [BYTE; 8usize], + pub byWindowMode: [[BYTE; 12usize]; 8usize], + pub byRes2: [BYTE; 36usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DECCARD_ABILITY_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 660usize, + concat!("Size of: ", stringify!(tagNET_DVR_DECCARD_ABILITY_V41)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DECCARD_ABILITY_V41)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECCARD_ABILITY_V41), + "::", + stringify!(byCardType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecNums) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECCARD_ABILITY_V41), + "::", + stringify!(byDecNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispNums) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECCARD_ABILITY_V41), + "::", + stringify!(byDispNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecStartIdx) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECCARD_ABILITY_V41), + "::", + stringify!(byDecStartIdx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispStartIdx) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECCARD_ABILITY_V41), + "::", + stringify!(byDispStartIdx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECCARD_ABILITY_V41), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVgaSupportResolution) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECCARD_ABILITY_V41), + "::", + stringify!(dwVgaSupportResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHdmiSupportResolution) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECCARD_ABILITY_V41), + "::", + stringify!(dwHdmiSupportResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDviSupportResolution) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECCARD_ABILITY_V41), + "::", + stringify!(dwDviSupportResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwYpbprSupportResolution) as usize - ptr as usize }, + 392usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECCARD_ABILITY_V41), + "::", + stringify!(dwYpbprSupportResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispFormat) as usize - ptr as usize }, + 520usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECCARD_ABILITY_V41), + "::", + stringify!(byDispFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWindowMode) as usize - ptr as usize }, + 528usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECCARD_ABILITY_V41), + "::", + stringify!(byWindowMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 624usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECCARD_ABILITY_V41), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DECCARD_ABILITY_V41 = tagNET_DVR_DECCARD_ABILITY_V41; +pub type LPNET_DVR_DECCARD_ABILITY_V41 = *mut tagNET_DVR_DECCARD_ABILITY_V41; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DECODESVR_ABILITY_V41 { + pub dwSize: DWORD, + pub byCardNums: BYTE, + pub byStartChan: BYTE, + pub byRes1: [BYTE; 2usize], + pub struDecCardAbility: [NET_DVR_DECCARD_ABILITY_V41; 6usize], + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DECODESVR_ABILITY_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4032usize, + concat!("Size of: ", stringify!(tagNET_DVR_DECODESVR_ABILITY_V41)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_DECODESVR_ABILITY_V41) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODESVR_ABILITY_V41), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNums) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODESVR_ABILITY_V41), + "::", + stringify!(byCardNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartChan) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODESVR_ABILITY_V41), + "::", + stringify!(byStartChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODESVR_ABILITY_V41), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDecCardAbility) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODESVR_ABILITY_V41), + "::", + stringify!(struDecCardAbility) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 3968usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODESVR_ABILITY_V41), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DECODESVR_ABILITY_V41 = tagNET_DVR_DECODESVR_ABILITY_V41; +pub type LPNET_DVR_DECODESVR_ABILITY_V41 = *mut tagNET_DVR_DECODESVR_ABILITY_V41; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_STREAM_RECORD_STATUS { + pub dwSize: DWORD, + pub byRecord: BYTE, + pub byOffLineRecord: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwRelatedHD: DWORD, + pub byRes2: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STREAM_RECORD_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_STREAM_RECORD_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_STREAM_RECORD_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_RECORD_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecord) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_RECORD_STATUS), + "::", + stringify!(byRecord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOffLineRecord) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_RECORD_STATUS), + "::", + stringify!(byOffLineRecord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_RECORD_STATUS), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelatedHD) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_RECORD_STATUS), + "::", + stringify!(dwRelatedHD) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_RECORD_STATUS), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_STREAM_RECORD_STATUS = tagNET_DVR_STREAM_RECORD_STATUS; +pub type LPNET_DVR_STREAM_RECORD_STATUS = *mut tagNET_DVR_STREAM_RECORD_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DIRECT_CONNECT_CHAN_INFO { + pub byEnable: BYTE, + pub byProType: BYTE, + pub byZeroChan: BYTE, + pub byPriority: BYTE, + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub byDomain: [BYTE; 64usize], + pub struIP: NET_DVR_IPADDR, + pub wDVRPort: WORD, + pub byStreamType: BYTE, + pub byOnline: BYTE, + pub dwChannel: DWORD, + pub byTransProtocol: BYTE, + pub byLocalBackUp: BYTE, + pub wDirectLastTime: WORD, + pub byChanNo: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DIRECT_CONNECT_CHAN_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 296usize, + concat!("Size of: ", stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO), + "::", + stringify!(byProType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZeroChan) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO), + "::", + stringify!(byZeroChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPriority) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO), + "::", + stringify!(byPriority) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDomain) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO), + "::", + stringify!(byDomain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDVRPort) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO), + "::", + stringify!(wDVRPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 262usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOnline) as usize - ptr as usize }, + 263usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO), + "::", + stringify!(byOnline) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransProtocol) as usize - ptr as usize }, + 268usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO), + "::", + stringify!(byTransProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalBackUp) as usize - ptr as usize }, + 269usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO), + "::", + stringify!(byLocalBackUp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDirectLastTime) as usize - ptr as usize }, + 270usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO), + "::", + stringify!(wDirectLastTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanNo) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO), + "::", + stringify!(byChanNo) + ) + ); +} +pub type NET_DVR_DIRECT_CONNECT_CHAN_INFO = tagNET_DVR_DIRECT_CONNECT_CHAN_INFO; +pub type LPNET_DVR_DIRECT_CONNECT_CHAN_INFO = *mut tagNET_DVR_DIRECT_CONNECT_CHAN_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40 { + pub byEnable: BYTE, + pub byProType: BYTE, + pub byZeroChan: BYTE, + pub byRes1: BYTE, + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub byAddress: [BYTE; 64usize], + pub wDVRPort: WORD, + pub byStreamType: BYTE, + pub byOnline: BYTE, + pub dwChannel: DWORD, + pub byTransProtocol: BYTE, + pub byLocalBackUp: BYTE, + pub byRes2: [BYTE; 2usize], + pub byVAGChanNo: [BYTE; 32usize], + pub byRes: [BYTE; 340usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 500usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40), + "::", + stringify!(byProType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZeroChan) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40), + "::", + stringify!(byZeroChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddress) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40), + "::", + stringify!(byAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDVRPort) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40), + "::", + stringify!(wDVRPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 118usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOnline) as usize - ptr as usize }, + 119usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40), + "::", + stringify!(byOnline) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransProtocol) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40), + "::", + stringify!(byTransProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalBackUp) as usize - ptr as usize }, + 125usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40), + "::", + stringify!(byLocalBackUp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 126usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVAGChanNo) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40), + "::", + stringify!(byVAGChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DIRECT_CONNECT_CHAN_INFO_V40 = tagNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40; +pub type LPNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40 = *mut tagNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PU_STREAM_URL_CFG { + pub byEnable: BYTE, + pub byRes: [BYTE; 3usize], + pub byStreamMediaIP: [BYTE; 64usize], + pub wStreamMediaPort: WORD, + pub byTransmitType: BYTE, + pub byRes1: [BYTE; 33usize], + pub byDevIP: [BYTE; 64usize], + pub wDevPort: WORD, + pub byChannel: BYTE, + pub byTransMode: BYTE, + pub byProType: BYTE, + pub byTransProtocol: BYTE, + pub byRes3: [BYTE; 2usize], + pub sUserName: [BYTE; 32usize], + pub sPassWord: [BYTE; 16usize], + pub byRes2: [BYTE; 28usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PU_STREAM_URL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 252usize, + concat!("Size of: ", stringify!(tagNET_DVR_PU_STREAM_URL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PU_STREAM_URL_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamMediaIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG), + "::", + stringify!(byStreamMediaIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStreamMediaPort) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG), + "::", + stringify!(wStreamMediaPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransmitType) as usize - ptr as usize }, + 70usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG), + "::", + stringify!(byTransmitType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 71usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevIP) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG), + "::", + stringify!(byDevIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevPort) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG), + "::", + stringify!(wDevPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 170usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransMode) as usize - ptr as usize }, + 171usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG), + "::", + stringify!(byTransMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProType) as usize - ptr as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG), + "::", + stringify!(byProType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransProtocol) as usize - ptr as usize }, + 173usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG), + "::", + stringify!(byTransProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 174usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassWord) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG), + "::", + stringify!(sPassWord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PU_STREAM_URL_CFG = tagNET_DVR_PU_STREAM_URL_CFG; +pub type LPNET_DVR_PU_STREAM_URL_CFG = *mut tagNET_DVR_PU_STREAM_URL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PU_STREAM_URL_CFG_V40 { + pub byEnable: BYTE, + pub byRes: [BYTE; 3usize], + pub byStreamMediaIP: [BYTE; 64usize], + pub wStreamMediaPort: WORD, + pub byTransmitType: BYTE, + pub byRes1: BYTE, + pub byDevIP: [BYTE; 64usize], + pub wDevPort: WORD, + pub byChannel: BYTE, + pub byTransMode: BYTE, + pub byProType: BYTE, + pub byTransProtocol: BYTE, + pub byRes3: [BYTE; 2usize], + pub sUserName: [BYTE; 32usize], + pub sPassWord: [BYTE; 16usize], + pub byRes2: [BYTE; 308usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PU_STREAM_URL_CFG_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 500usize, + concat!("Size of: ", stringify!(tagNET_DVR_PU_STREAM_URL_CFG_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG_V40) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG_V40), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG_V40), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamMediaIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG_V40), + "::", + stringify!(byStreamMediaIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStreamMediaPort) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG_V40), + "::", + stringify!(wStreamMediaPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransmitType) as usize - ptr as usize }, + 70usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG_V40), + "::", + stringify!(byTransmitType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 71usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG_V40), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevIP) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG_V40), + "::", + stringify!(byDevIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevPort) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG_V40), + "::", + stringify!(wDevPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 138usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG_V40), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransMode) as usize - ptr as usize }, + 139usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG_V40), + "::", + stringify!(byTransMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProType) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG_V40), + "::", + stringify!(byProType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransProtocol) as usize - ptr as usize }, + 141usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG_V40), + "::", + stringify!(byTransProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 142usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG_V40), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG_V40), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassWord) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG_V40), + "::", + stringify!(sPassWord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_URL_CFG_V40), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PU_STREAM_URL_CFG_V40 = tagNET_DVR_PU_STREAM_URL_CFG_V40; +pub type LPNET_DVR_PU_STREAM_URL_CFG_V40 = *mut tagNET_DVR_PU_STREAM_URL_CFG_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_STREAM_URL_V40 { + pub byEnable: BYTE, + pub byStreamType: BYTE, + pub byLocalBackUp: BYTE, + pub byRes: BYTE, + pub strURL: [BYTE; 256usize], + pub dwProtocalType: DWORD, + pub sUserName: [BYTE; 32usize], + pub sPassWord: [BYTE; 16usize], + pub byAddress: [BYTE; 64usize], + pub wIPPort: WORD, + pub wChanNo: WORD, + pub byVAGChanNo: [BYTE; 32usize], + pub byRes1: [BYTE; 88usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STREAM_URL_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 500usize, + concat!("Size of: ", stringify!(tagNET_DVR_STREAM_URL_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_STREAM_URL_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_URL_V40), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_URL_V40), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalBackUp) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_URL_V40), + "::", + stringify!(byLocalBackUp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_URL_V40), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strURL) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_URL_V40), + "::", + stringify!(strURL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwProtocalType) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_URL_V40), + "::", + stringify!(dwProtocalType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_URL_V40), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassWord) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_URL_V40), + "::", + stringify!(sPassWord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddress) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_URL_V40), + "::", + stringify!(byAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wIPPort) as usize - ptr as usize }, + 376usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_URL_V40), + "::", + stringify!(wIPPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wChanNo) as usize - ptr as usize }, + 378usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_URL_V40), + "::", + stringify!(wChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVAGChanNo) as usize - ptr as usize }, + 380usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_URL_V40), + "::", + stringify!(byVAGChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 412usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_URL_V40), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_STREAM_URL_V40 = tagNET_DVR_STREAM_URL_V40; +pub type LPNET_DVR_STREAM_URL_V40 = *mut tagNET_DVR_STREAM_URL_V40; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_STREAM_TYPE_UNION { + pub struChanInfo: NET_DVR_DIRECT_CONNECT_CHAN_INFO, + pub struStreamUrl: NET_DVR_PU_STREAM_URL, + pub struStreamUrlCfg: NET_DVR_PU_STREAM_URL_CFG, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STREAM_TYPE_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 296usize, + concat!("Size of: ", stringify!(tagNET_DVR_STREAM_TYPE_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_STREAM_TYPE_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struChanInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_TYPE_UNION), + "::", + stringify!(struChanInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamUrl) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_TYPE_UNION), + "::", + stringify!(struStreamUrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamUrlCfg) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_TYPE_UNION), + "::", + stringify!(struStreamUrlCfg) + ) + ); +} +pub type NET_DVR_STREAM_TYPE_UNION = tagNET_DVR_STREAM_TYPE_UNION; +pub type LPNET_DVR_STREAM_TYPE_UNION = *mut tagNET_DVR_STREAM_TYPE_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_STREAM_TYPE_V40_UNION { + pub struChanInfo: NET_DVR_DIRECT_CONNECT_CHAN_INFO_V40, + pub struPuStreamUrl: NET_DVR_PU_STREAM_URL, + pub struStreamUrlCfg: NET_DVR_PU_STREAM_URL_CFG_V40, + pub struRtspCfg: NET_DVR_RTSP_PROTOCAL_CFG, + pub struStreamUrlV40: NET_DVR_STREAM_URL_V40, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STREAM_TYPE_V40_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 500usize, + concat!("Size of: ", stringify!(tagNET_DVR_STREAM_TYPE_V40_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_STREAM_TYPE_V40_UNION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struChanInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_TYPE_V40_UNION), + "::", + stringify!(struChanInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPuStreamUrl) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_TYPE_V40_UNION), + "::", + stringify!(struPuStreamUrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamUrlCfg) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_TYPE_V40_UNION), + "::", + stringify!(struStreamUrlCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRtspCfg) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_TYPE_V40_UNION), + "::", + stringify!(struRtspCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamUrlV40) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_TYPE_V40_UNION), + "::", + stringify!(struStreamUrlV40) + ) + ); +} +pub type NET_DVR_STREAM_TYPE_V40_UNION = tagNET_DVR_STREAM_TYPE_V40_UNION; +pub type LPNET_DVR_STREAM_TYPE_V40_UNION = *mut tagNET_DVR_STREAM_TYPE_V40_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_STREAM_MODE_TYPE { + pub byGetStreamType: BYTE, + pub byRes: [BYTE; 3usize], + pub uGetStream: NET_DVR_STREAM_TYPE_UNION, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STREAM_MODE_TYPE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 300usize, + concat!("Size of: ", stringify!(tagNET_DVR_STREAM_MODE_TYPE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_STREAM_MODE_TYPE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGetStreamType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MODE_TYPE), + "::", + stringify!(byGetStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MODE_TYPE), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uGetStream) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MODE_TYPE), + "::", + stringify!(uGetStream) + ) + ); +} +pub type NET_DVR_STREAM_MODE_TYPE = tagNET_DVR_STREAM_MODE_TYPE; +pub type LPNET_DVR_STREAM_MODE_TYPE = *mut tagNET_DVR_STREAM_MODE_TYPE; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_STREAM_SRC_INFO { + pub dwSize: DWORD, + pub struStreamSrcInfo: NET_DVR_STREAM_MODE_TYPE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STREAM_SRC_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 304usize, + concat!("Size of: ", stringify!(tagNET_DVR_STREAM_SRC_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_STREAM_SRC_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_SRC_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamSrcInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_SRC_INFO), + "::", + stringify!(struStreamSrcInfo) + ) + ); +} +pub type NET_DVR_STREAM_SRC_INFO = tagNET_DVR_STREAM_SRC_INFO; +pub type LPNET_DVR_STREAM_SRC_INFO = *mut tagNET_DVR_STREAM_SRC_INFO; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_STREAM_SRC_INFO_V40 { + pub dwSize: DWORD, + pub byGetStreamType: BYTE, + pub byRes1: [BYTE; 3usize], + pub uGetStream: NET_DVR_STREAM_TYPE_V40_UNION, + pub byMonitorName: [BYTE; 128usize], + pub byRes: [BYTE; 384usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STREAM_SRC_INFO_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1020usize, + concat!("Size of: ", stringify!(tagNET_DVR_STREAM_SRC_INFO_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_STREAM_SRC_INFO_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_SRC_INFO_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGetStreamType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_SRC_INFO_V40), + "::", + stringify!(byGetStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_SRC_INFO_V40), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uGetStream) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_SRC_INFO_V40), + "::", + stringify!(uGetStream) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonitorName) as usize - ptr as usize }, + 508usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_SRC_INFO_V40), + "::", + stringify!(byMonitorName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 636usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_SRC_INFO_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_STREAM_SRC_INFO_V40 = tagNET_DVR_STREAM_SRC_INFO_V40; +pub type LPNET_DVR_STREAM_SRC_INFO_V40 = *mut tagNET_DVR_STREAM_SRC_INFO_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_STREAM_RECORD_INFO { + pub dwSize: DWORD, + pub struRecordInfo: NET_DVR_RECORD_V30, +} +#[test] +fn bindgen_test_layout_NET_DVR_STREAM_RECORD_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(NET_DVR_STREAM_RECORD_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_STREAM_RECORD_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_STREAM_RECORD_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRecordInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_STREAM_RECORD_INFO), + "::", + stringify!(struRecordInfo) + ) + ); +} +pub type LPNET_DVR_STREAM_RECORD_INFO = *mut NET_DVR_STREAM_RECORD_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_STREAM_TIME_LOCK { + pub dwSize: DWORD, + pub strBeginTime: NET_DVR_TIME, + pub strEndTime: NET_DVR_TIME, + pub struStreamInfo: NET_DVR_STREAM_INFO, + pub dwRecordType: DWORD, + pub dwLockDuration: DWORD, + pub strUnlockTimePoint: NET_DVR_TIME_EX, + pub byISO8601: BYTE, + pub cTimeDifferenceH: ::std::os::raw::c_char, + pub cTimeDifferenceM: ::std::os::raw::c_char, + pub byRes: [BYTE; 1usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STREAM_TIME_LOCK() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!("Size of: ", stringify!(tagNET_DVR_STREAM_TIME_LOCK)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_STREAM_TIME_LOCK)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_TIME_LOCK), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strBeginTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_TIME_LOCK), + "::", + stringify!(strBeginTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strEndTime) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_TIME_LOCK), + "::", + stringify!(strEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamInfo) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_TIME_LOCK), + "::", + stringify!(struStreamInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordType) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_TIME_LOCK), + "::", + stringify!(dwRecordType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLockDuration) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_TIME_LOCK), + "::", + stringify!(dwLockDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strUnlockTimePoint) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_TIME_LOCK), + "::", + stringify!(strUnlockTimePoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byISO8601) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_TIME_LOCK), + "::", + stringify!(byISO8601) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceH) as usize - ptr as usize }, + 141usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_TIME_LOCK), + "::", + stringify!(cTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceM) as usize - ptr as usize }, + 142usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_TIME_LOCK), + "::", + stringify!(cTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 143usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_TIME_LOCK), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_STREAM_TIME_LOCK = tagNET_DVR_STREAM_TIME_LOCK; +pub type LPNET_DVR_STREAM_TIME_LOCK = *mut tagNET_DVR_STREAM_TIME_LOCK; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VOD_DRAWFRAME_PARA { + pub struTime: NET_DVR_TIME_EX, + pub dwDrawType: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VOD_DRAWFRAME_PARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 140usize, + concat!("Size of: ", stringify!(tagNET_DVR_VOD_DRAWFRAME_PARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VOD_DRAWFRAME_PARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_DRAWFRAME_PARA), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDrawType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_DRAWFRAME_PARA), + "::", + stringify!(dwDrawType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_DRAWFRAME_PARA), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VOD_DRAWFRAME_PARA = tagNET_DVR_VOD_DRAWFRAME_PARA; +pub type LPNET_DVR_VOD_DRAWFRAME_PARA = *mut tagNET_DVR_VOD_DRAWFRAME_PARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VOD_PARA { + pub dwSize: DWORD, + pub struIDInfo: NET_DVR_STREAM_INFO, + pub struBeginTime: NET_DVR_TIME, + pub struEndTime: NET_DVR_TIME, + pub hWnd: HWND, + pub byDrawFrame: BYTE, + pub byVolumeType: BYTE, + pub byVolumeNum: BYTE, + pub byStreamType: BYTE, + pub dwFileIndex: DWORD, + pub byAudioFile: BYTE, + pub byCourseFile: BYTE, + pub byDownload: BYTE, + pub byOptimalStreamType: BYTE, + pub byUseAsyn: BYTE, + pub byRes2: [BYTE; 19usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VOD_PARA() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 168usize, + concat!("Size of: ", stringify!(tagNET_DVR_VOD_PARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VOD_PARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIDInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA), + "::", + stringify!(struIDInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBeginTime) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA), + "::", + stringify!(struBeginTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).hWnd) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA), + "::", + stringify!(hWnd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDrawFrame) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA), + "::", + stringify!(byDrawFrame) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVolumeType) as usize - ptr as usize }, + 137usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA), + "::", + stringify!(byVolumeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVolumeNum) as usize - ptr as usize }, + 138usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA), + "::", + stringify!(byVolumeNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 139usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileIndex) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA), + "::", + stringify!(dwFileIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioFile) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA), + "::", + stringify!(byAudioFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCourseFile) as usize - ptr as usize }, + 145usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA), + "::", + stringify!(byCourseFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDownload) as usize - ptr as usize }, + 146usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA), + "::", + stringify!(byDownload) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOptimalStreamType) as usize - ptr as usize }, + 147usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA), + "::", + stringify!(byOptimalStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseAsyn) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA), + "::", + stringify!(byUseAsyn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 149usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_VOD_PARA = tagNET_DVR_VOD_PARA; +pub type LPNET_DVR_VOD_PARA = *mut tagNET_DVR_VOD_PARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VOD_PARA_V50 { + pub dwSize: DWORD, + pub struIDInfo: NET_DVR_STREAM_INFO, + pub struBeginTime: NET_DVR_TIME_V50, + pub struEndTime: NET_DVR_TIME_V50, + pub hWnd: HWND, + pub byDrawFrame: BYTE, + pub byVolumeType: BYTE, + pub byVolumeNum: BYTE, + pub byStreamType: BYTE, + pub dwFileIndex: DWORD, + pub byAudioFile: BYTE, + pub byCourseFile: BYTE, + pub byPlayMode: BYTE, + pub byLinkMode: BYTE, + pub byDownload: BYTE, + pub byOptimalStreamType: BYTE, + pub byDisplayBufNum: BYTE, + pub byNPQMode: BYTE, + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub byRemoteFile: BYTE, + pub byUseAsyn: BYTE, + pub byRes2: [BYTE; 201usize], + pub byHls: BYTE, + pub pSavedFileName: *mut ::std::os::raw::c_char, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VOD_PARA_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 392usize, + concat!("Size of: ", stringify!(tagNET_DVR_VOD_PARA_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VOD_PARA_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIDInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA_V50), + "::", + stringify!(struIDInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBeginTime) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA_V50), + "::", + stringify!(struBeginTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA_V50), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).hWnd) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA_V50), + "::", + stringify!(hWnd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDrawFrame) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA_V50), + "::", + stringify!(byDrawFrame) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVolumeType) as usize - ptr as usize }, + 113usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA_V50), + "::", + stringify!(byVolumeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVolumeNum) as usize - ptr as usize }, + 114usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA_V50), + "::", + stringify!(byVolumeNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 115usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA_V50), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileIndex) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA_V50), + "::", + stringify!(dwFileIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioFile) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA_V50), + "::", + stringify!(byAudioFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCourseFile) as usize - ptr as usize }, + 121usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA_V50), + "::", + stringify!(byCourseFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlayMode) as usize - ptr as usize }, + 122usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA_V50), + "::", + stringify!(byPlayMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLinkMode) as usize - ptr as usize }, + 123usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA_V50), + "::", + stringify!(byLinkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDownload) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA_V50), + "::", + stringify!(byDownload) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOptimalStreamType) as usize - ptr as usize }, + 125usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA_V50), + "::", + stringify!(byOptimalStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDisplayBufNum) as usize - ptr as usize }, + 126usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA_V50), + "::", + stringify!(byDisplayBufNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNPQMode) as usize - ptr as usize }, + 127usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA_V50), + "::", + stringify!(byNPQMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA_V50), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA_V50), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRemoteFile) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA_V50), + "::", + stringify!(byRemoteFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseAsyn) as usize - ptr as usize }, + 177usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA_V50), + "::", + stringify!(byUseAsyn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 178usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA_V50), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHls) as usize - ptr as usize }, + 379usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA_V50), + "::", + stringify!(byHls) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pSavedFileName) as usize - ptr as usize }, + 384usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOD_PARA_V50), + "::", + stringify!(pSavedFileName) + ) + ); +} +pub type NET_DVR_VOD_PARA_V50 = tagNET_DVR_VOD_PARA_V50; +pub type LPNET_DVR_VOD_PARA_V50 = *mut tagNET_DVR_VOD_PARA_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MANUAL_RECORD_PARA { + pub struStreamInfo: NET_DVR_STREAM_INFO, + pub lRecordType: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MANUAL_RECORD_PARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 108usize, + concat!("Size of: ", stringify!(tagNET_DVR_MANUAL_RECORD_PARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MANUAL_RECORD_PARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANUAL_RECORD_PARA), + "::", + stringify!(struStreamInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lRecordType) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANUAL_RECORD_PARA), + "::", + stringify!(lRecordType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANUAL_RECORD_PARA), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MANUAL_RECORD_PARA = tagNET_DVR_MANUAL_RECORD_PARA; +pub type LPNET_DVR_MANUAL_RECORD_PARA = *mut tagNET_DVR_MANUAL_RECORD_PARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_STREAM_CABAC { + pub dwSize: DWORD, + pub byCabacEnable: BYTE, + pub byRes1: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STREAM_CABAC() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_STREAM_CABAC)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_STREAM_CABAC)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_CABAC), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCabacEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_CABAC), + "::", + stringify!(byCabacEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_CABAC), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_STREAM_CABAC = tagNET_DVR_STREAM_CABAC; +pub type LPNET_DVR_STREAM_CABAC = *mut tagNET_DVR_STREAM_CABAC; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_IOOUT_PARAM { + pub dwSize: DWORD, + pub byDefaultStatus: BYTE, + pub byIOOutStatus: BYTE, + pub byMode: BYTE, + pub byIOWorkMode: BYTE, + pub dwTimeDelay: DWORD, + pub wAheadTime: WORD, + pub byFreqMulti: BYTE, + pub byDutyRate: BYTE, + pub byDetectBrightness: BYTE, + pub byBrightnessThreld: BYTE, + pub byFlashLightEnable: BYTE, + pub byStartHour: BYTE, + pub byStartMinute: BYTE, + pub byEndHour: BYTE, + pub byEndMinute: BYTE, + pub byAutoPlateBrightness: BYTE, + pub byIncrBrightEnable: BYTE, + pub byIncrBrightPercent: BYTE, + pub wIncrBrightTime: WORD, + pub byBrightness: BYTE, + pub byEnvironBright: BYTE, + pub wDelayCaptureTime: WORD, +} +#[test] +fn bindgen_test_layout_tagNET_ITC_IOOUT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_ITC_IOOUT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_IOOUT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_IOOUT_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDefaultStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_IOOUT_PARAM), + "::", + stringify!(byDefaultStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIOOutStatus) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_IOOUT_PARAM), + "::", + stringify!(byIOOutStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_IOOUT_PARAM), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIOWorkMode) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_IOOUT_PARAM), + "::", + stringify!(byIOWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTimeDelay) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_IOOUT_PARAM), + "::", + stringify!(dwTimeDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAheadTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_IOOUT_PARAM), + "::", + stringify!(wAheadTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFreqMulti) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_IOOUT_PARAM), + "::", + stringify!(byFreqMulti) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDutyRate) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_IOOUT_PARAM), + "::", + stringify!(byDutyRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectBrightness) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_IOOUT_PARAM), + "::", + stringify!(byDetectBrightness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrightnessThreld) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_IOOUT_PARAM), + "::", + stringify!(byBrightnessThreld) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlashLightEnable) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_IOOUT_PARAM), + "::", + stringify!(byFlashLightEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartHour) as usize - ptr as usize }, + 19usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_IOOUT_PARAM), + "::", + stringify!(byStartHour) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartMinute) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_IOOUT_PARAM), + "::", + stringify!(byStartMinute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEndHour) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_IOOUT_PARAM), + "::", + stringify!(byEndHour) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEndMinute) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_IOOUT_PARAM), + "::", + stringify!(byEndMinute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAutoPlateBrightness) as usize - ptr as usize }, + 23usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_IOOUT_PARAM), + "::", + stringify!(byAutoPlateBrightness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIncrBrightEnable) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_IOOUT_PARAM), + "::", + stringify!(byIncrBrightEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIncrBrightPercent) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_IOOUT_PARAM), + "::", + stringify!(byIncrBrightPercent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wIncrBrightTime) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_IOOUT_PARAM), + "::", + stringify!(wIncrBrightTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrightness) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_IOOUT_PARAM), + "::", + stringify!(byBrightness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnvironBright) as usize - ptr as usize }, + 29usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_IOOUT_PARAM), + "::", + stringify!(byEnvironBright) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDelayCaptureTime) as usize - ptr as usize }, + 30usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_IOOUT_PARAM), + "::", + stringify!(wDelayCaptureTime) + ) + ); +} +pub type NET_ITC_IOOUT_PARAM = tagNET_ITC_IOOUT_PARAM; +pub type LPNET_ITC_IOOUT_PARAM = *mut tagNET_ITC_IOOUT_PARAM; +pub const _ITC_TRIGGERMODE_TYPE__ITC_POST_IOSPEED_TYPE: _ITC_TRIGGERMODE_TYPE_ = 1; +pub const _ITC_TRIGGERMODE_TYPE__ITC_POST_SINGLEIO_TYPE: _ITC_TRIGGERMODE_TYPE_ = 2; +pub const _ITC_TRIGGERMODE_TYPE__ITC_POST_RS485_TYPE: _ITC_TRIGGERMODE_TYPE_ = 4; +pub const _ITC_TRIGGERMODE_TYPE__ITC_POST_RS485_RADAR_TYPE: _ITC_TRIGGERMODE_TYPE_ = 8; +pub const _ITC_TRIGGERMODE_TYPE__ITC_POST_VIRTUALCOIL_TYPE: _ITC_TRIGGERMODE_TYPE_ = 16; +pub const _ITC_TRIGGERMODE_TYPE__ITC_POST_HVT_TYPE_V50: _ITC_TRIGGERMODE_TYPE_ = 32; +pub const _ITC_TRIGGERMODE_TYPE__ITC_POST_MPR_TYPE: _ITC_TRIGGERMODE_TYPE_ = 64; +pub const _ITC_TRIGGERMODE_TYPE__ITC_POST_PRS_TYPE: _ITC_TRIGGERMODE_TYPE_ = 128; +pub const _ITC_TRIGGERMODE_TYPE__ITC_EPOLICE_IO_TRAFFICLIGHTS_TYPE: _ITC_TRIGGERMODE_TYPE_ = 256; +pub const _ITC_TRIGGERMODE_TYPE__ITC_EPOLICE_RS485_TYPE: _ITC_TRIGGERMODE_TYPE_ = 512; +pub const _ITC_TRIGGERMODE_TYPE__ITC_POST_HVT_TYPE: _ITC_TRIGGERMODE_TYPE_ = 1024; +pub const _ITC_TRIGGERMODE_TYPE__ITC_PE_RS485_TYPE: _ITC_TRIGGERMODE_TYPE_ = 65536; +pub const _ITC_TRIGGERMODE_TYPE__ITC_VIDEO_EPOLICE_TYPE: _ITC_TRIGGERMODE_TYPE_ = 131072; +pub const _ITC_TRIGGERMODE_TYPE__ITC_VIA_VIRTUALCOIL_TYPE: _ITC_TRIGGERMODE_TYPE_ = 262144; +pub const _ITC_TRIGGERMODE_TYPE__ITC_POST_IMT_TYPE: _ITC_TRIGGERMODE_TYPE_ = 524288; +pub const _ITC_TRIGGERMODE_TYPE__IPC_POST_HVT_TYPE: _ITC_TRIGGERMODE_TYPE_ = 1048576; +pub const _ITC_TRIGGERMODE_TYPE__ITC_POST_MOBILE_TYPE: _ITC_TRIGGERMODE_TYPE_ = 2097152; +pub const _ITC_TRIGGERMODE_TYPE__ITC_REDLIGHT_PEDESTRIAN_TYPE: _ITC_TRIGGERMODE_TYPE_ = 4194304; +pub const _ITC_TRIGGERMODE_TYPE__ITC_NOCOMITY_PEDESTRIAN_TYPE: _ITC_TRIGGERMODE_TYPE_ = 8388608; +pub type _ITC_TRIGGERMODE_TYPE_ = ::std::os::raw::c_uint; +pub use self::_ITC_TRIGGERMODE_TYPE_ as ITC_TRIGGERMODE_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_TRIGGERMODE_ABILITY { + pub dwSize: DWORD, + pub dwTriggerType: DWORD, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_TRIGGERMODE_ABILITY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_ITC_TRIGGERMODE_ABILITY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_TRIGGERMODE_ABILITY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGERMODE_ABILITY), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTriggerType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGERMODE_ABILITY), + "::", + stringify!(dwTriggerType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGERMODE_ABILITY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_TRIGGERMODE_ABILITY = tagNET_ITC_TRIGGERMODE_ABILITY; +pub type LPNET_ITC_TRIGGERMODE_ABILITY = *mut tagNET_ITC_TRIGGERMODE_ABILITY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_INTERVAL_PARAM { + pub byIntervalType: BYTE, + pub byRes1: [BYTE; 3usize], + pub wInterval: [WORD; 4usize], + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_INTERVAL_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_ITC_INTERVAL_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_ITC_INTERVAL_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIntervalType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_INTERVAL_PARAM), + "::", + stringify!(byIntervalType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_INTERVAL_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInterval) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_INTERVAL_PARAM), + "::", + stringify!(wInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_INTERVAL_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_INTERVAL_PARAM = tagNET_ITC_INTERVAL_PARAM; +pub type LPNET_ITC_INTERVAL_PARAM = *mut tagNET_ITC_INTERVAL_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_PLATE_RECOG_PARAM { + pub byDefaultCHN: [BYTE; 3usize], + pub byEnable: BYTE, + pub dwRecogMode: DWORD, + pub byVehicleLogoRecog: BYTE, + pub byProvince: BYTE, + pub byRegion: BYTE, + pub byCountry: BYTE, + pub wPlatePixelWidthMin: WORD, + pub wPlatePixelWidthMax: WORD, + pub byRes: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_PLATE_RECOG_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_ITC_PLATE_RECOG_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_PLATE_RECOG_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDefaultCHN) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_PLATE_RECOG_PARAM), + "::", + stringify!(byDefaultCHN) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_PLATE_RECOG_PARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecogMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_PLATE_RECOG_PARAM), + "::", + stringify!(dwRecogMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleLogoRecog) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_PLATE_RECOG_PARAM), + "::", + stringify!(byVehicleLogoRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProvince) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_PLATE_RECOG_PARAM), + "::", + stringify!(byProvince) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRegion) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_PLATE_RECOG_PARAM), + "::", + stringify!(byRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCountry) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_PLATE_RECOG_PARAM), + "::", + stringify!(byCountry) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPlatePixelWidthMin) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_PLATE_RECOG_PARAM), + "::", + stringify!(wPlatePixelWidthMin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPlatePixelWidthMax) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_PLATE_RECOG_PARAM), + "::", + stringify!(wPlatePixelWidthMax) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_PLATE_RECOG_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_PLATE_RECOG_PARAM = tagNET_ITC_PLATE_RECOG_PARAM; +pub type LPNET_ITC_PLATE_RECOG_PARAM = *mut tagNET_ITC_PLATE_RECOG_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_POLYGON { + pub dwPointNum: DWORD, + pub struPos: [NET_VCA_POINT; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_POLYGON() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 164usize, + concat!("Size of: ", stringify!(tagNET_ITC_POLYGON)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_POLYGON)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPointNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POLYGON), + "::", + stringify!(dwPointNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPos) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POLYGON), + "::", + stringify!(struPos) + ) + ); +} +pub type NET_ITC_POLYGON = tagNET_ITC_POLYGON; +pub type LPNET_ITC_POLYGON = *mut tagNET_ITC_POLYGON; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_PLATE_RECOG_REGION_PARAM { + pub byMode: BYTE, + pub byRes1: [BYTE; 3usize], + pub uRegion: tagNET_ITC_PLATE_RECOG_REGION_PARAM__bindgen_ty_1, + pub byRes: [BYTE; 16usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_ITC_PLATE_RECOG_REGION_PARAM__bindgen_ty_1 { + pub struRect: NET_VCA_RECT, + pub struPolygon: NET_ITC_POLYGON, +} +#[test] +fn bindgen_test_layout_tagNET_ITC_PLATE_RECOG_REGION_PARAM__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 164usize, + concat!( + "Size of: ", + stringify!(tagNET_ITC_PLATE_RECOG_REGION_PARAM__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_PLATE_RECOG_REGION_PARAM__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRect) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_PLATE_RECOG_REGION_PARAM__bindgen_ty_1), + "::", + stringify!(struRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPolygon) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_PLATE_RECOG_REGION_PARAM__bindgen_ty_1), + "::", + stringify!(struPolygon) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_ITC_PLATE_RECOG_REGION_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 184usize, + concat!("Size of: ", stringify!(tagNET_ITC_PLATE_RECOG_REGION_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_PLATE_RECOG_REGION_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_PLATE_RECOG_REGION_PARAM), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_PLATE_RECOG_REGION_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uRegion) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_PLATE_RECOG_REGION_PARAM), + "::", + stringify!(uRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_PLATE_RECOG_REGION_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_PLATE_RECOG_REGION_PARAM = tagNET_ITC_PLATE_RECOG_REGION_PARAM; +pub type LPNET_ITC_PLATE_RECOG_REGION_PARAM = *mut tagNET_ITC_PLATE_RECOG_REGION_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_SINGLE_IOSPEED_PARAM { + pub byEnable: BYTE, + pub byTrigCoil1: BYTE, + pub byCoil1IOStatus: BYTE, + pub byTrigCoil2: BYTE, + pub byCoil2IOStatus: BYTE, + pub byRelatedDriveWay: BYTE, + pub byTimeOut: BYTE, + pub byRelatedIOOutEx: BYTE, + pub dwDistance: DWORD, + pub byCapSpeed: BYTE, + pub bySpeedLimit: BYTE, + pub bySpeedCapEn: BYTE, + pub bySnapTimes1: BYTE, + pub bySnapTimes2: BYTE, + pub byBigCarSpeedLimit: BYTE, + pub byBigCarSignSpeed: BYTE, + pub byIntervalType: BYTE, + pub wInterval1: [WORD; 4usize], + pub wInterval2: [WORD; 4usize], + pub byRelatedIOOut: [BYTE; 4usize], + pub byFlashMode: BYTE, + pub byLaneType: BYTE, + pub byCarSignSpeed: BYTE, + pub byUseageType: BYTE, + pub struPlateRecog: [NET_ITC_PLATE_RECOG_REGION_PARAM; 2usize], + pub byRelaLaneDirectionType: BYTE, + pub byLowSpeedLimit: BYTE, + pub byBigCarLowSpeedLimit: BYTE, + pub byLowSpeedCapEn: BYTE, + pub byEmergencyCapEn: BYTE, + pub byRes: [BYTE; 27usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_SINGLE_IOSPEED_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 444usize, + concat!("Size of: ", stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrigCoil1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(byTrigCoil1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCoil1IOStatus) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(byCoil1IOStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrigCoil2) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(byTrigCoil2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCoil2IOStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(byCoil2IOStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedDriveWay) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(byRelatedDriveWay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeOut) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(byTimeOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedIOOutEx) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(byRelatedIOOutEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDistance) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(dwDistance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCapSpeed) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(byCapSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpeedLimit) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(bySpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpeedCapEn) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(bySpeedCapEn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnapTimes1) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(bySnapTimes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnapTimes2) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(bySnapTimes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBigCarSpeedLimit) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(byBigCarSpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBigCarSignSpeed) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(byBigCarSignSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIntervalType) as usize - ptr as usize }, + 19usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(byIntervalType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInterval1) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(wInterval1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInterval2) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(wInterval2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedIOOut) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(byRelatedIOOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlashMode) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(byFlashMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneType) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(byLaneType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCarSignSpeed) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(byCarSignSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseageType) as usize - ptr as usize }, + 43usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(byUseageType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelaLaneDirectionType) as usize - ptr as usize }, + 412usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(byRelaLaneDirectionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLowSpeedLimit) as usize - ptr as usize }, + 413usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(byLowSpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBigCarLowSpeedLimit) as usize - ptr as usize }, + 414usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(byBigCarLowSpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLowSpeedCapEn) as usize - ptr as usize }, + 415usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(byLowSpeedCapEn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEmergencyCapEn) as usize - ptr as usize }, + 416usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(byEmergencyCapEn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 417usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOSPEED_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_SINGLE_IOSPEED_PARAM = tagNET_ITC_SINGLE_IOSPEED_PARAM; +pub type LPNET_ITC_SINGLE_IOSPEED_PARAM = *mut tagNET_ITC_SINGLE_IOSPEED_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_POST_IOSPEED_PARAM { + pub struPlateRecog: NET_ITC_PLATE_RECOG_PARAM, + pub struSingleIOSpeed: [NET_ITC_SINGLE_IOSPEED_PARAM; 4usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_POST_IOSPEED_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1848usize, + concat!("Size of: ", stringify!(tagNET_ITC_POST_IOSPEED_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_POST_IOSPEED_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_IOSPEED_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSingleIOSpeed) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_IOSPEED_PARAM), + "::", + stringify!(struSingleIOSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1816usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_IOSPEED_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_POST_IOSPEED_PARAM = tagNET_ITC_POST_IOSPEED_PARAM; +pub type LPNET_ITC_POST_IOSPEED_PARAM = *mut tagNET_ITC_POST_IOSPEED_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_SINGLEIO_PARAM { + pub byDefaultStatus: BYTE, + pub byRelatedDriveWay: BYTE, + pub bySnapTimes: BYTE, + pub byRelatedIOOutEx: BYTE, + pub struInterval: NET_ITC_INTERVAL_PARAM, + pub byRelatedIOOut: [BYTE; 4usize], + pub byFlashMode: BYTE, + pub byEnable: BYTE, + pub byUseageType: BYTE, + pub byEmergencyCapEn: BYTE, + pub struPlateRecog: [NET_ITC_PLATE_RECOG_REGION_PARAM; 2usize], + pub byRes: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_SINGLEIO_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 424usize, + concat!("Size of: ", stringify!(tagNET_ITC_SINGLEIO_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_SINGLEIO_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDefaultStatus) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLEIO_PARAM), + "::", + stringify!(byDefaultStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedDriveWay) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLEIO_PARAM), + "::", + stringify!(byRelatedDriveWay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnapTimes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLEIO_PARAM), + "::", + stringify!(bySnapTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedIOOutEx) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLEIO_PARAM), + "::", + stringify!(byRelatedIOOutEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInterval) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLEIO_PARAM), + "::", + stringify!(struInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedIOOut) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLEIO_PARAM), + "::", + stringify!(byRelatedIOOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlashMode) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLEIO_PARAM), + "::", + stringify!(byFlashMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 29usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLEIO_PARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseageType) as usize - ptr as usize }, + 30usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLEIO_PARAM), + "::", + stringify!(byUseageType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEmergencyCapEn) as usize - ptr as usize }, + 31usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLEIO_PARAM), + "::", + stringify!(byEmergencyCapEn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLEIO_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 400usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLEIO_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_SINGLEIO_PARAM = tagNET_ITC_SINGLEIO_PARAM; +pub type LPNET_ITC_SINGLEIO_PARAM = *mut tagNET_ITC_SINGLEIO_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_POST_SINGLEIO_PARAM { + pub struPlateRecog: NET_ITC_PLATE_RECOG_PARAM, + pub struSingleIO: [NET_ITC_SINGLEIO_PARAM; 10usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_POST_SINGLEIO_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4280usize, + concat!("Size of: ", stringify!(tagNET_ITC_POST_SINGLEIO_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_POST_SINGLEIO_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_SINGLEIO_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSingleIO) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_SINGLEIO_PARAM), + "::", + stringify!(struSingleIO) + ) + ); +} +pub type NET_ITC_POST_SINGLEIO_PARAM = tagNET_ITC_POST_SINGLEIO_PARAM; +pub type LPNET_ITC_POST_SINGLEIO_PARAM = *mut tagNET_ITC_POST_SINGLEIO_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_LANE_PARAM { + pub byEnable: BYTE, + pub byRelatedDriveWay: BYTE, + pub wDistance: WORD, + pub wTrigDelayTime: WORD, + pub byTrigDelayDistance: BYTE, + pub bySpeedCapEn: BYTE, + pub bySignSpeed: BYTE, + pub bySpeedLimit: BYTE, + pub bySnapTimes: BYTE, + pub byOverlayDriveWay: BYTE, + pub struInterval: NET_ITC_INTERVAL_PARAM, + pub byRelatedIOOut: [BYTE; 4usize], + pub byFlashMode: BYTE, + pub byCartSignSpeed: BYTE, + pub byCartSpeedLimit: BYTE, + pub byRelatedIOOutEx: BYTE, + pub struPlateRecog: [NET_ITC_PLATE_RECOG_REGION_PARAM; 2usize], + pub byLaneType: BYTE, + pub byUseageType: BYTE, + pub byRelaLaneDirectionType: BYTE, + pub byLowSpeedLimit: BYTE, + pub byBigCarLowSpeedLimit: BYTE, + pub byLowSpeedCapEn: BYTE, + pub byEmergencyCapEn: BYTE, + pub byRes: [BYTE; 9usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_LANE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 424usize, + concat!("Size of: ", stringify!(tagNET_ITC_LANE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_LANE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedDriveWay) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PARAM), + "::", + stringify!(byRelatedDriveWay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDistance) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PARAM), + "::", + stringify!(wDistance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTrigDelayTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PARAM), + "::", + stringify!(wTrigDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrigDelayDistance) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PARAM), + "::", + stringify!(byTrigDelayDistance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpeedCapEn) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PARAM), + "::", + stringify!(bySpeedCapEn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySignSpeed) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PARAM), + "::", + stringify!(bySignSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpeedLimit) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PARAM), + "::", + stringify!(bySpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnapTimes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PARAM), + "::", + stringify!(bySnapTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverlayDriveWay) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PARAM), + "::", + stringify!(byOverlayDriveWay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInterval) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PARAM), + "::", + stringify!(struInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedIOOut) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PARAM), + "::", + stringify!(byRelatedIOOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlashMode) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PARAM), + "::", + stringify!(byFlashMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCartSignSpeed) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PARAM), + "::", + stringify!(byCartSignSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCartSpeedLimit) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PARAM), + "::", + stringify!(byCartSpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedIOOutEx) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PARAM), + "::", + stringify!(byRelatedIOOutEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneType) as usize - ptr as usize }, + 408usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PARAM), + "::", + stringify!(byLaneType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseageType) as usize - ptr as usize }, + 409usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PARAM), + "::", + stringify!(byUseageType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelaLaneDirectionType) as usize - ptr as usize }, + 410usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PARAM), + "::", + stringify!(byRelaLaneDirectionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLowSpeedLimit) as usize - ptr as usize }, + 411usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PARAM), + "::", + stringify!(byLowSpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBigCarLowSpeedLimit) as usize - ptr as usize }, + 412usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PARAM), + "::", + stringify!(byBigCarLowSpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLowSpeedCapEn) as usize - ptr as usize }, + 413usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PARAM), + "::", + stringify!(byLowSpeedCapEn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEmergencyCapEn) as usize - ptr as usize }, + 414usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PARAM), + "::", + stringify!(byEmergencyCapEn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 415usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_LANE_PARAM = tagNET_ITC_LANE_PARAM; +pub type LPNET_ITC_LANE_PARAM = *mut tagNET_ITC_LANE_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_POST_RS485_PARAM { + pub byRelatedLaneNum: BYTE, + pub byTriggerSpareMode: BYTE, + pub byFaultToleranceTime: BYTE, + pub byRes1: BYTE, + pub struPlateRecog: NET_ITC_PLATE_RECOG_PARAM, + pub struLane: [NET_ITC_LANE_PARAM; 6usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_POST_RS485_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2620usize, + concat!("Size of: ", stringify!(tagNET_ITC_POST_RS485_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_POST_RS485_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedLaneNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_RS485_PARAM), + "::", + stringify!(byRelatedLaneNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTriggerSpareMode) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_RS485_PARAM), + "::", + stringify!(byTriggerSpareMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaultToleranceTime) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_RS485_PARAM), + "::", + stringify!(byFaultToleranceTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_RS485_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_RS485_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLane) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_RS485_PARAM), + "::", + stringify!(struLane) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2588usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_RS485_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_POST_RS485_PARAM = tagNET_ITC_POST_RS485_PARAM; +pub type LPNET_ITC_POST_RS485_PARAM = *mut tagNET_ITC_POST_RS485_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_RADAR_PARAM { + pub byRadarType: BYTE, + pub byLevelAngle: BYTE, + pub wRadarSensitivity: WORD, + pub wRadarSpeedValidTime: WORD, + pub byRes1: [BYTE; 2usize], + pub fLineCorrectParam: f32, + pub iConstCorrectParam: ::std::os::raw::c_int, + pub byRes2: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_RADAR_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_ITC_RADAR_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_RADAR_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRadarType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_RADAR_PARAM), + "::", + stringify!(byRadarType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLevelAngle) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_RADAR_PARAM), + "::", + stringify!(byLevelAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRadarSensitivity) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_RADAR_PARAM), + "::", + stringify!(wRadarSensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRadarSpeedValidTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_RADAR_PARAM), + "::", + stringify!(wRadarSpeedValidTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_RADAR_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fLineCorrectParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_RADAR_PARAM), + "::", + stringify!(fLineCorrectParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iConstCorrectParam) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_RADAR_PARAM), + "::", + stringify!(iConstCorrectParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_RADAR_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_ITC_RADAR_PARAM = tagNET_ITC_RADAR_PARAM; +pub type LPNET_ITC_RADAR_PARAM = *mut tagNET_ITC_RADAR_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_RS485_ACCESS_INFO_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub dwTriggerModeType: DWORD, + pub byAssociateRS485No: BYTE, + pub byRes: [BYTE; 15usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_RS485_ACCESS_INFO_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28usize, + concat!("Size of: ", stringify!(tagNET_ITC_RS485_ACCESS_INFO_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_RS485_ACCESS_INFO_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_RS485_ACCESS_INFO_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_RS485_ACCESS_INFO_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTriggerModeType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_RS485_ACCESS_INFO_COND), + "::", + stringify!(dwTriggerModeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAssociateRS485No) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_RS485_ACCESS_INFO_COND), + "::", + stringify!(byAssociateRS485No) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_RS485_ACCESS_INFO_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_RS485_ACCESS_INFO_COND = tagNET_ITC_RS485_ACCESS_INFO_COND; +pub type LPNET_ITC_RS485_ACCESS_INFO_COND = *mut tagNET_ITC_RS485_ACCESS_INFO_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_RADAR_INFO_PARAM { + pub struRadarParam: NET_ITC_RADAR_PARAM, + pub byAssociateLaneNo: BYTE, + pub byRes: [BYTE; 103usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_RADAR_INFO_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_ITC_RADAR_INFO_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_RADAR_INFO_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRadarParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_RADAR_INFO_PARAM), + "::", + stringify!(struRadarParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAssociateLaneNo) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_RADAR_INFO_PARAM), + "::", + stringify!(byAssociateLaneNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_RADAR_INFO_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_RADAR_INFO_PARAM = tagNET_ITC_RADAR_INFO_PARAM; +pub type LPNET_ITC_RADAR_INFO_PARAM = *mut tagNET_ITC_RADAR_INFO_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_ITC_ACCESS_DEVINFO_PARAM_UNION { + pub uLen: [BYTE; 128usize], + pub struRadarInfoParam: NET_ITC_RADAR_INFO_PARAM, +} +#[test] +fn bindgen_test_layout_tagNET_ITC_ACCESS_DEVINFO_PARAM_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!( + "Size of: ", + stringify!(tagNET_ITC_ACCESS_DEVINFO_PARAM_UNION) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_ACCESS_DEVINFO_PARAM_UNION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ACCESS_DEVINFO_PARAM_UNION), + "::", + stringify!(uLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRadarInfoParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_ACCESS_DEVINFO_PARAM_UNION), + "::", + stringify!(struRadarInfoParam) + ) + ); +} +pub type NET_ITC_ACCESS_DEVINFO_PARAM_UNION = tagNET_ITC_ACCESS_DEVINFO_PARAM_UNION; +pub type LPNET_ITC_ACCESS_DEVINFO_PARAM_UNION = *mut tagNET_ITC_ACCESS_DEVINFO_PARAM_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_RS485_ACCESS_CFG { + pub dwSize: DWORD, + pub byModeType: BYTE, + pub byRes: [BYTE; 3usize], + pub uITCAccessDevinfoParam: NET_ITC_ACCESS_DEVINFO_PARAM_UNION, + pub byRes1: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_RS485_ACCESS_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!("Size of: ", stringify!(tagNET_ITC_RS485_ACCESS_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_RS485_ACCESS_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_RS485_ACCESS_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byModeType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_RS485_ACCESS_CFG), + "::", + stringify!(byModeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_RS485_ACCESS_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uITCAccessDevinfoParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_RS485_ACCESS_CFG), + "::", + stringify!(uITCAccessDevinfoParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_RS485_ACCESS_CFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_ITC_RS485_ACCESS_CFG = tagNET_ITC_RS485_ACCESS_CFG; +pub type LPNET_ITC_RS485_ACCESS_CFG = *mut tagNET_ITC_RS485_ACCESS_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_RS485_ACCESS_INFO { + pub dwSize: DWORD, + pub struRadar: [NET_ITC_RADAR_PARAM; 6usize], + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_RS485_ACCESS_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 168usize, + concat!("Size of: ", stringify!(tagNET_ITC_RS485_ACCESS_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_RS485_ACCESS_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_RS485_ACCESS_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRadar) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_RS485_ACCESS_INFO), + "::", + stringify!(struRadar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_RS485_ACCESS_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_RS485_ACCESS_INFO = tagNET_ITC_RS485_ACCESS_INFO; +pub type LPNET_ITC_RS485_ACCESS_INFO = *mut tagNET_ITC_RS485_ACCESS_INFO; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_POST_RS485_RADAR_PARAM { + pub byRelatedLaneNum: BYTE, + pub byRes1: [BYTE; 3usize], + pub struPlateRecog: NET_ITC_PLATE_RECOG_PARAM, + pub struLane: [NET_ITC_LANE_PARAM; 6usize], + pub struRadar: NET_ITC_RADAR_PARAM, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_POST_RS485_RADAR_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2644usize, + concat!("Size of: ", stringify!(tagNET_ITC_POST_RS485_RADAR_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_POST_RS485_RADAR_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedLaneNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_RS485_RADAR_PARAM), + "::", + stringify!(byRelatedLaneNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_RS485_RADAR_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_RS485_RADAR_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLane) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_RS485_RADAR_PARAM), + "::", + stringify!(struLane) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRadar) as usize - ptr as usize }, + 2588usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_RS485_RADAR_PARAM), + "::", + stringify!(struRadar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2612usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_RS485_RADAR_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_POST_RS485_RADAR_PARAM = tagNET_ITC_POST_RS485_RADAR_PARAM; +pub type LPNET_ITC_POST_RS485_RADAR_PARAM = *mut tagNET_ITC_POST_RS485_RADAR_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_VTLANE_PARAM { + pub byRelatedDriveWay: BYTE, + pub bySpeedCapEn: BYTE, + pub bySignSpeed: BYTE, + pub bySpeedLimit: BYTE, + pub bySnapTimes: BYTE, + pub byBigCarSignSpeed: BYTE, + #[doc = "*�\u{f3d71}�־���٣���λkm/h*/"] + pub byBigCarSpeedLimit: BYTE, + pub byRelatedIOOutEx: BYTE, + pub struInterval: NET_ITC_INTERVAL_PARAM, + pub byRelatedIOOut: [BYTE; 4usize], + pub byFlashMode: BYTE, + pub byLowSpeedLimit: BYTE, + pub byBigCarLowSpeedLimit: BYTE, + pub byRelaLaneDirectionType: BYTE, + pub struPlateRecog: [NET_ITC_PLATE_RECOG_REGION_PARAM; 2usize], + pub struLine: NET_VCA_LINE, +} +#[test] +fn bindgen_test_layout_tagNET_ITC_VTLANE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 420usize, + concat!("Size of: ", stringify!(tagNET_ITC_VTLANE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_VTLANE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedDriveWay) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTLANE_PARAM), + "::", + stringify!(byRelatedDriveWay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpeedCapEn) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTLANE_PARAM), + "::", + stringify!(bySpeedCapEn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySignSpeed) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTLANE_PARAM), + "::", + stringify!(bySignSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpeedLimit) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTLANE_PARAM), + "::", + stringify!(bySpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnapTimes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTLANE_PARAM), + "::", + stringify!(bySnapTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBigCarSignSpeed) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTLANE_PARAM), + "::", + stringify!(byBigCarSignSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBigCarSpeedLimit) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTLANE_PARAM), + "::", + stringify!(byBigCarSpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedIOOutEx) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTLANE_PARAM), + "::", + stringify!(byRelatedIOOutEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInterval) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTLANE_PARAM), + "::", + stringify!(struInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedIOOut) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTLANE_PARAM), + "::", + stringify!(byRelatedIOOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlashMode) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTLANE_PARAM), + "::", + stringify!(byFlashMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLowSpeedLimit) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTLANE_PARAM), + "::", + stringify!(byLowSpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBigCarLowSpeedLimit) as usize - ptr as usize }, + 34usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTLANE_PARAM), + "::", + stringify!(byBigCarLowSpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelaLaneDirectionType) as usize - ptr as usize }, + 35usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTLANE_PARAM), + "::", + stringify!(byRelaLaneDirectionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTLANE_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLine) as usize - ptr as usize }, + 404usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTLANE_PARAM), + "::", + stringify!(struLine) + ) + ); +} +pub type NET_ITC_VTLANE_PARAM = tagNET_ITC_VTLANE_PARAM; +pub type LPNET_ITC_VTLANE_PARAM = *mut tagNET_ITC_VTLANE_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_VTCOIL_INFO { + pub struLaneRect: NET_VCA_RECT, + pub byTrigFlag: BYTE, + pub byTrigSensitive: BYTE, + pub byRelatedIOOut: [BYTE; 4usize], + pub byFlashMode: BYTE, + pub byLaneType: BYTE, + pub byEnableRadar: BYTE, + pub struLane: NET_ITC_VTLANE_PARAM, + pub byUseageType: BYTE, + pub byCarDriveDirect: BYTE, + pub byRes: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_VTCOIL_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 480usize, + concat!("Size of: ", stringify!(tagNET_ITC_VTCOIL_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_VTCOIL_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneRect) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTCOIL_INFO), + "::", + stringify!(struLaneRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrigFlag) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTCOIL_INFO), + "::", + stringify!(byTrigFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrigSensitive) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTCOIL_INFO), + "::", + stringify!(byTrigSensitive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedIOOut) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTCOIL_INFO), + "::", + stringify!(byRelatedIOOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlashMode) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTCOIL_INFO), + "::", + stringify!(byFlashMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneType) as usize - ptr as usize }, + 23usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTCOIL_INFO), + "::", + stringify!(byLaneType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableRadar) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTCOIL_INFO), + "::", + stringify!(byEnableRadar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLane) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTCOIL_INFO), + "::", + stringify!(struLane) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseageType) as usize - ptr as usize }, + 448usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTCOIL_INFO), + "::", + stringify!(byUseageType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCarDriveDirect) as usize - ptr as usize }, + 449usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTCOIL_INFO), + "::", + stringify!(byCarDriveDirect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 450usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VTCOIL_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_VTCOIL_INFO = tagNET_ITC_VTCOIL_INFO; +pub type LPNET_ITC_VTCOIL_INFO = *mut tagNET_ITC_VTCOIL_INFO; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_POST_VTCOIL_PARAM { + pub byRelatedLaneNum: BYTE, + pub byIsDisplay: BYTE, + pub byLoopPos: BYTE, + pub byPolarLenType: BYTE, + pub byDayAuxLightMode: BYTE, + pub byVideoLaneNO: BYTE, + pub byVideoLowTh: BYTE, + pub byVideoHighTh: BYTE, + pub byRecordMode: BYTE, + pub bySnapMode: BYTE, + pub bySpeedDetector: BYTE, + pub byRes2: BYTE, + pub wResolutionX: WORD, + pub wResolutionY: WORD, + pub dwDayInitExp: DWORD, + pub dwDayMaxExp: DWORD, + pub dwNightExp: DWORD, + pub dwSnapExp: DWORD, + pub byDayInitGain: BYTE, + pub byDayMaxGain: BYTE, + pub byNightGain: BYTE, + pub bySnapGain: BYTE, + pub dwSceneMode: DWORD, + pub struGeogLocation: NET_DVR_GEOGLOCATION, + pub struPlateRecog: NET_ITC_PLATE_RECOG_PARAM, + pub struVtCoil: [NET_ITC_VTCOIL_INFO; 5usize], + pub struRadar: NET_ITC_RADAR_PARAM, + pub struLine: NET_VCA_LINE, + pub dwVioDetectType: DWORD, + pub byDebugMode: BYTE, + pub byRes: [BYTE; 11usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_POST_VTCOIL_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2548usize, + concat!("Size of: ", stringify!(tagNET_ITC_POST_VTCOIL_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_POST_VTCOIL_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedLaneNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(byRelatedLaneNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsDisplay) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(byIsDisplay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLoopPos) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(byLoopPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPolarLenType) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(byPolarLenType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDayAuxLightMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(byDayAuxLightMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoLaneNO) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(byVideoLaneNO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoLowTh) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(byVideoLowTh) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoHighTh) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(byVideoHighTh) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(byRecordMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnapMode) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(bySnapMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpeedDetector) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(bySpeedDetector) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wResolutionX) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(wResolutionX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wResolutionY) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(wResolutionY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDayInitExp) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(dwDayInitExp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDayMaxExp) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(dwDayMaxExp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNightExp) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(dwNightExp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSnapExp) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(dwSnapExp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDayInitGain) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(byDayInitGain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDayMaxGain) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(byDayMaxGain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNightGain) as usize - ptr as usize }, + 34usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(byNightGain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnapGain) as usize - ptr as usize }, + 35usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(bySnapGain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSceneMode) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(dwSceneMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGeogLocation) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(struGeogLocation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVtCoil) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(struVtCoil) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRadar) as usize - ptr as usize }, + 2492usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(struRadar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLine) as usize - ptr as usize }, + 2516usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(struLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVioDetectType) as usize - ptr as usize }, + 2532usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(dwVioDetectType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDebugMode) as usize - ptr as usize }, + 2536usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(byDebugMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2537usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_VTCOIL_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_POST_VTCOIL_PARAM = tagNET_ITC_POST_VTCOIL_PARAM; +pub type LPNET_ITC_POST_VTCOIL_PARAM = *mut tagNET_ITC_POST_VTCOIL_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_SINGLE_IOTL_PARAM { + pub byEnable: BYTE, + pub byLightIO: BYTE, + pub byTrafficLight: BYTE, + pub byTrigIO: BYTE, + pub byTrigIOStatus: BYTE, + pub byRelatedDriveWay: BYTE, + pub byRecordEnable: BYTE, + pub byRecordType: BYTE, + pub byPreRecordTime: BYTE, + pub byRecordDelayTime: BYTE, + pub byRecordTimeOut: BYTE, + pub byRedSnapTimes: BYTE, + pub byGreenSnapTimes: BYTE, + pub byRelatedIOOutEx: BYTE, + pub byRes1: BYTE, + pub byIntervalType: BYTE, + pub wRedInterval: [WORD; 4usize], + pub wGreenInterval: [WORD; 4usize], + pub byRelatedIOOut: [BYTE; 4usize], + pub byFlashMode: BYTE, + pub byRes2: [BYTE; 3usize], + pub struPlateRecog: [NET_ITC_PLATE_RECOG_REGION_PARAM; 2usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_SINGLE_IOTL_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 440usize, + concat!("Size of: ", stringify!(tagNET_ITC_SINGLE_IOTL_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_SINGLE_IOTL_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOTL_PARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLightIO) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOTL_PARAM), + "::", + stringify!(byLightIO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrafficLight) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOTL_PARAM), + "::", + stringify!(byTrafficLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrigIO) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOTL_PARAM), + "::", + stringify!(byTrigIO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrigIOStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOTL_PARAM), + "::", + stringify!(byTrigIOStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedDriveWay) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOTL_PARAM), + "::", + stringify!(byRelatedDriveWay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordEnable) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOTL_PARAM), + "::", + stringify!(byRecordEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordType) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOTL_PARAM), + "::", + stringify!(byRecordType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPreRecordTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOTL_PARAM), + "::", + stringify!(byPreRecordTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordDelayTime) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOTL_PARAM), + "::", + stringify!(byRecordDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordTimeOut) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOTL_PARAM), + "::", + stringify!(byRecordTimeOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRedSnapTimes) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOTL_PARAM), + "::", + stringify!(byRedSnapTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGreenSnapTimes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOTL_PARAM), + "::", + stringify!(byGreenSnapTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedIOOutEx) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOTL_PARAM), + "::", + stringify!(byRelatedIOOutEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOTL_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIntervalType) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOTL_PARAM), + "::", + stringify!(byIntervalType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRedInterval) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOTL_PARAM), + "::", + stringify!(wRedInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wGreenInterval) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOTL_PARAM), + "::", + stringify!(wGreenInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedIOOut) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOTL_PARAM), + "::", + stringify!(byRelatedIOOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlashMode) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOTL_PARAM), + "::", + stringify!(byFlashMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOTL_PARAM), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOTL_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 408usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IOTL_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_SINGLE_IOTL_PARAM = tagNET_ITC_SINGLE_IOTL_PARAM; +pub type LPNET_ITC_SINGLE_IOTL_PARAM = *mut tagNET_ITC_SINGLE_IOTL_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_EPOLICE_IOTL_PARAM { + pub struPlateRecog: NET_ITC_PLATE_RECOG_PARAM, + pub struSingleIOTL: [NET_ITC_SINGLE_IOTL_PARAM; 4usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_EPOLICE_IOTL_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1832usize, + concat!("Size of: ", stringify!(tagNET_ITC_EPOLICE_IOTL_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_EPOLICE_IOTL_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_IOTL_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSingleIOTL) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_IOTL_PARAM), + "::", + stringify!(struSingleIOTL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1800usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_IOTL_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_EPOLICE_IOTL_PARAM = tagNET_ITC_EPOLICE_IOTL_PARAM; +pub type LPNET_ITC_EPOLICE_IOTL_PARAM = *mut tagNET_ITC_EPOLICE_IOTL_PARAM; +pub const _ITC_SERIAL_PROTOCOL__ITC_PROTOCOL_UNKNOW: _ITC_SERIAL_PROTOCOL_ = 0; +pub const _ITC_SERIAL_PROTOCOL__ITC_SINGLE_COIL_PROTOCOL_MODE1: _ITC_SERIAL_PROTOCOL_ = 1; +pub const _ITC_SERIAL_PROTOCOL__ITC_DOUBLE_COIL_PROTOCOL_MODE1: _ITC_SERIAL_PROTOCOL_ = 2; +pub const _ITC_SERIAL_PROTOCOL__ITC_DOUBLE_COIL_PROTOCOL_MODE2: _ITC_SERIAL_PROTOCOL_ = 3; +pub const _ITC_SERIAL_PROTOCOL__ITC_DOUBLE_COIL_PROTOCOL_MODE3: _ITC_SERIAL_PROTOCOL_ = 4; +pub const _ITC_SERIAL_PROTOCOL__ITC_DOUBLE_COIL_PROTOCOL_MODE4: _ITC_SERIAL_PROTOCOL_ = 5; +pub const _ITC_SERIAL_PROTOCOL__ITC_DOUBLE_COIL_PROTOCOL_MODE5: _ITC_SERIAL_PROTOCOL_ = 6; +pub const _ITC_SERIAL_PROTOCOL__ITC_DOUBLE_COIL_PROTOCOL_MODE6: _ITC_SERIAL_PROTOCOL_ = 7; +pub const _ITC_SERIAL_PROTOCOL__ITC_DOUBLE_COIL_PROTOCOL_MODE7: _ITC_SERIAL_PROTOCOL_ = 8; +pub const _ITC_SERIAL_PROTOCOL__ITC_DOUBLE_COIL_PROTOCOL_MODE8: _ITC_SERIAL_PROTOCOL_ = 9; +pub const _ITC_SERIAL_PROTOCOL__ITC_SINGLE_COIL_PROTOCOL_MODE2: _ITC_SERIAL_PROTOCOL_ = 10; +pub const _ITC_SERIAL_PROTOCOL__ITC_OTHER_PROTOCOL: _ITC_SERIAL_PROTOCOL_ = 255; +pub type _ITC_SERIAL_PROTOCOL_ = ::std::os::raw::c_uint; +pub use self::_ITC_SERIAL_PROTOCOL_ as ITC_SERIAL_PROTOCOL; +pub const _ITC_NORMAL_PASS_SERIAL_PROTOCOL__ITC_NORMAL_PASS_SERIAL_UNKNOW: + _ITC_NORMAL_PASS_SERIAL_PROTOCOL_ = 0; +pub const _ITC_NORMAL_PASS_SERIAL_PROTOCOL__ITC_NORMAL_PASS_PROTOCOL_MODE1: + _ITC_NORMAL_PASS_SERIAL_PROTOCOL_ = 1; +pub const _ITC_NORMAL_PASS_SERIAL_PROTOCOL__ITC_NORMAL_PASS_PROTOCOL_MODE2: + _ITC_NORMAL_PASS_SERIAL_PROTOCOL_ = 2; +pub const _ITC_NORMAL_PASS_SERIAL_PROTOCOL__ITC_NORMAL_PASS_PROTOCOL_MODE3: + _ITC_NORMAL_PASS_SERIAL_PROTOCOL_ = 3; +pub const _ITC_NORMAL_PASS_SERIAL_PROTOCOL__ITC_NORMAL_PASS_PROTOCOL_MODE4: + _ITC_NORMAL_PASS_SERIAL_PROTOCOL_ = 4; +pub const _ITC_NORMAL_PASS_SERIAL_PROTOCOL__ITC_NORMAL_PASS_PROTOCOL_MODE5: + _ITC_NORMAL_PASS_SERIAL_PROTOCOL_ = 5; +pub type _ITC_NORMAL_PASS_SERIAL_PROTOCOL_ = ::std::os::raw::c_uint; +pub use self::_ITC_NORMAL_PASS_SERIAL_PROTOCOL_ as ITC_NORMAL_PASS_SERIAL_PROTOCOL; +pub const _ITC_INVERSE_SERIAL_PROTOCOL__ITC_INVERSE_SERIAL_UNKNOW: _ITC_INVERSE_SERIAL_PROTOCOL_ = + 0; +pub const _ITC_INVERSE_SERIAL_PROTOCOL__ITC_INVERSE_PROTOCOL_MODE1: _ITC_INVERSE_SERIAL_PROTOCOL_ = + 1; +pub const _ITC_INVERSE_SERIAL_PROTOCOL__ITC_INVERSE_PROTOCOL_MODE2: _ITC_INVERSE_SERIAL_PROTOCOL_ = + 2; +pub const _ITC_INVERSE_SERIAL_PROTOCOL__ITC_INVERSE_PROTOCOL_MODE3: _ITC_INVERSE_SERIAL_PROTOCOL_ = + 3; +pub type _ITC_INVERSE_SERIAL_PROTOCOL_ = ::std::os::raw::c_uint; +pub use self::_ITC_INVERSE_SERIAL_PROTOCOL_ as ITC_INVERSE_SERIAL_PROTOCOL; +pub const _ITC_SPEED_SERIAL_PROTOCOL__ITC_SPEED_SERIAL_UNKNOW: _ITC_SPEED_SERIAL_PROTOCOL_ = 0; +pub const _ITC_SPEED_SERIAL_PROTOCOL__ITC_SPEED_PROTOCOL_MODE1: _ITC_SPEED_SERIAL_PROTOCOL_ = 1; +pub const _ITC_SPEED_SERIAL_PROTOCOL__ITC_SPEED_PROTOCOL_MODE2: _ITC_SPEED_SERIAL_PROTOCOL_ = 2; +pub const _ITC_SPEED_SERIAL_PROTOCOL__ITC_SPEED_PROTOCOL_MODE3: _ITC_SPEED_SERIAL_PROTOCOL_ = 3; +pub type _ITC_SPEED_SERIAL_PROTOCOL_ = ::std::os::raw::c_uint; +pub use self::_ITC_SPEED_SERIAL_PROTOCOL_ as ITC_SPEED_SERIAL_PROTOCOL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_SERIAL_INFO { + pub bySerialProtocol: BYTE, + pub byIntervalType: BYTE, + pub wInterval: WORD, + pub byNormalPassProtocol: BYTE, + pub byInverseProtocol: BYTE, + pub bySpeedProtocol: BYTE, + pub byRes: [BYTE; 9usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_SERIAL_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_ITC_SERIAL_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_ITC_SERIAL_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySerialProtocol) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SERIAL_INFO), + "::", + stringify!(bySerialProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIntervalType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SERIAL_INFO), + "::", + stringify!(byIntervalType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInterval) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SERIAL_INFO), + "::", + stringify!(wInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNormalPassProtocol) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SERIAL_INFO), + "::", + stringify!(byNormalPassProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInverseProtocol) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SERIAL_INFO), + "::", + stringify!(byInverseProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpeedProtocol) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SERIAL_INFO), + "::", + stringify!(bySpeedProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SERIAL_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_SERIAL_INFO = tagNET_ITC_SERIAL_INFO; +pub type LPNET_ITC_SERIAL_INFO = *mut tagNET_ITC_SERIAL_INFO; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_EPOLICE_LANE_PARAM { + pub byEnable: BYTE, + pub byRelatedDriveWay: BYTE, + pub wDistance: WORD, + pub byRecordEnable: BYTE, + pub byRecordType: BYTE, + pub byPreRecordTime: BYTE, + pub byRecordDelayTime: BYTE, + pub byRecordTimeOut: BYTE, + pub bySignSpeed: BYTE, + pub bySpeedLimit: BYTE, + pub byOverlayDriveWay: BYTE, + pub struSerialInfo: NET_ITC_SERIAL_INFO, + pub byRelatedIOOut: [BYTE; 4usize], + pub byFlashMode: BYTE, + pub bySerialType: BYTE, + pub byRelatedIOOutEx: BYTE, + pub bySnapPicPreRecord: BYTE, + pub struPlateRecog: [NET_ITC_PLATE_RECOG_REGION_PARAM; 2usize], + pub byBigCarSignSpeed: BYTE, + #[doc = "*�\u{f3d71}�־���٣���λkm/h*/"] + pub byBigCarSpeedLimit: BYTE, + pub byRedTrafficLightChan: BYTE, + pub byYellowTrafficLightChan: BYTE, + pub byRelaLaneDirectionType: BYTE, + pub byRes3: [BYTE; 11usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_EPOLICE_LANE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 420usize, + concat!("Size of: ", stringify!(tagNET_ITC_EPOLICE_LANE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_EPOLICE_LANE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_LANE_PARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedDriveWay) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_LANE_PARAM), + "::", + stringify!(byRelatedDriveWay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDistance) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_LANE_PARAM), + "::", + stringify!(wDistance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_LANE_PARAM), + "::", + stringify!(byRecordEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_LANE_PARAM), + "::", + stringify!(byRecordType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPreRecordTime) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_LANE_PARAM), + "::", + stringify!(byPreRecordTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordDelayTime) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_LANE_PARAM), + "::", + stringify!(byRecordDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordTimeOut) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_LANE_PARAM), + "::", + stringify!(byRecordTimeOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySignSpeed) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_LANE_PARAM), + "::", + stringify!(bySignSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpeedLimit) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_LANE_PARAM), + "::", + stringify!(bySpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverlayDriveWay) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_LANE_PARAM), + "::", + stringify!(byOverlayDriveWay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSerialInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_LANE_PARAM), + "::", + stringify!(struSerialInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedIOOut) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_LANE_PARAM), + "::", + stringify!(byRelatedIOOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlashMode) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_LANE_PARAM), + "::", + stringify!(byFlashMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySerialType) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_LANE_PARAM), + "::", + stringify!(bySerialType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedIOOutEx) as usize - ptr as usize }, + 34usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_LANE_PARAM), + "::", + stringify!(byRelatedIOOutEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnapPicPreRecord) as usize - ptr as usize }, + 35usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_LANE_PARAM), + "::", + stringify!(bySnapPicPreRecord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_LANE_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBigCarSignSpeed) as usize - ptr as usize }, + 404usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_LANE_PARAM), + "::", + stringify!(byBigCarSignSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBigCarSpeedLimit) as usize - ptr as usize }, + 405usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_LANE_PARAM), + "::", + stringify!(byBigCarSpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRedTrafficLightChan) as usize - ptr as usize }, + 406usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_LANE_PARAM), + "::", + stringify!(byRedTrafficLightChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byYellowTrafficLightChan) as usize - ptr as usize }, + 407usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_LANE_PARAM), + "::", + stringify!(byYellowTrafficLightChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelaLaneDirectionType) as usize - ptr as usize }, + 408usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_LANE_PARAM), + "::", + stringify!(byRelaLaneDirectionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 409usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_LANE_PARAM), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_ITC_EPOLICE_LANE_PARAM = tagNET_ITC_EPOLICE_LANE_PARAM; +pub type LPNET_ITC_EPOLICE_LANE_PARAM = *mut tagNET_ITC_EPOLICE_LANE_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_EPOLICE_RS485_PARAM { + pub byRelatedLaneNum: BYTE, + pub byTrafficLightSignalSrc: BYTE, + pub byRes1: [BYTE; 2usize], + pub struPlateRecog: NET_ITC_PLATE_RECOG_PARAM, + pub struLane: [NET_ITC_EPOLICE_LANE_PARAM; 6usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_EPOLICE_RS485_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2596usize, + concat!("Size of: ", stringify!(tagNET_ITC_EPOLICE_RS485_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_EPOLICE_RS485_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedLaneNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_RS485_PARAM), + "::", + stringify!(byRelatedLaneNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrafficLightSignalSrc) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_RS485_PARAM), + "::", + stringify!(byTrafficLightSignalSrc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_RS485_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_RS485_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLane) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_RS485_PARAM), + "::", + stringify!(struLane) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2564usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_EPOLICE_RS485_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_EPOLICE_RS485_PARAM = tagNET_ITC_EPOLICE_RS485_PARAM; +pub type LPNET_ITC_EPOLICE_RS485_PARAM = *mut tagNET_ITC_EPOLICE_RS485_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_LANE_LOGIC_PARAM { + pub byUseageType: BYTE, + pub byDirectionType: BYTE, + pub byCarDriveDirect: BYTE, + pub byRes: [BYTE; 33usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_LANE_LOGIC_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_ITC_LANE_LOGIC_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_ITC_LANE_LOGIC_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseageType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_LOGIC_PARAM), + "::", + stringify!(byUseageType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDirectionType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_LOGIC_PARAM), + "::", + stringify!(byDirectionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCarDriveDirect) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_LOGIC_PARAM), + "::", + stringify!(byCarDriveDirect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_LOGIC_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_LANE_LOGIC_PARAM = tagNET_ITC_LANE_LOGIC_PARAM; +pub type LPNET_ITC_LANE_LOGIC_PARAM = *mut tagNET_ITC_LANE_LOGIC_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_LINE { + pub struLine: NET_VCA_LINE, + pub byLineType: BYTE, + pub byRes: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_LINE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_ITC_LINE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_LINE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLine) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LINE), + "::", + stringify!(struLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLineType) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LINE), + "::", + stringify!(byLineType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LINE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_LINE = tagNET_ITC_LINE; +pub type LPNET_ITC_LINE = *mut tagNET_ITC_LINE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_SNAPMODE_PARAM { + pub byVehicleCapMode: BYTE, + pub byNoVehicleCapMode: BYTE, + pub byPasserCapMode: BYTE, + pub byRes: [BYTE; 29usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_SNAPMODE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_ITC_SNAPMODE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_ITC_SNAPMODE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleCapMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SNAPMODE_PARAM), + "::", + stringify!(byVehicleCapMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNoVehicleCapMode) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SNAPMODE_PARAM), + "::", + stringify!(byNoVehicleCapMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPasserCapMode) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SNAPMODE_PARAM), + "::", + stringify!(byPasserCapMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SNAPMODE_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_SNAPMODE_PARAM = tagNET_ITC_SNAPMODE_PARAM; +pub type LPNET_ITC_SNAPMODE_PARAM = *mut tagNET_ITC_SNAPMODE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_HVT_EC_PARAM { + pub dwCapShutter: DWORD, + pub wCapGain: WORD, + pub byRes: [BYTE; 2usize], + pub dwDayTimeVideoShutter: DWORD, + pub wDayTimeVideoGain: WORD, + pub wNightVideoGain: WORD, + pub wNightVideoShutter: DWORD, + pub byRes1: [BYTE; 108usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_HVT_EC_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_ITC_HVT_EC_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_HVT_EC_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCapShutter) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_HVT_EC_PARAM), + "::", + stringify!(dwCapShutter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCapGain) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_HVT_EC_PARAM), + "::", + stringify!(wCapGain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_HVT_EC_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDayTimeVideoShutter) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_HVT_EC_PARAM), + "::", + stringify!(dwDayTimeVideoShutter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDayTimeVideoGain) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_HVT_EC_PARAM), + "::", + stringify!(wDayTimeVideoGain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wNightVideoGain) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_HVT_EC_PARAM), + "::", + stringify!(wNightVideoGain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wNightVideoShutter) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_HVT_EC_PARAM), + "::", + stringify!(wNightVideoShutter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_HVT_EC_PARAM), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_ITC_HVT_EC_PARAM = tagNET_ITC_HVT_EC_PARAM; +pub type LPNET_ITC_HVT_EC_PARAM = *mut tagNET_ITC_HVT_EC_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_LANE_HVT_PARAM { + pub byLaneNO: BYTE, + pub bySignSpeed: BYTE, + pub bySpeedLimit: BYTE, + pub byBigCarSignSpeed: BYTE, + #[doc = "*�\u{f3d71}�־���٣���λkm/h*/"] + pub byBigCarSpeedLimit: BYTE, + pub bySpeedCapEn: BYTE, + pub byCaptureCount: BYTE, + pub byRelatedIOOut: BYTE, + pub byFlashMode: BYTE, + pub byEnableRadar: BYTE, + pub byChangeLaneEnable: BYTE, + pub byChangeLaneCapNo: BYTE, + pub dwCapTarget: DWORD, + pub struInterval: NET_ITC_INTERVAL_PARAM, + pub byRes3: [BYTE; 24usize], + pub struLane: NET_ITC_LANE_LOGIC_PARAM, + pub struLeftLaneLine: NET_ITC_LINE, + pub struRightLaneLine: NET_ITC_LINE, + pub struPlateRecog: NET_ITC_POLYGON, + pub struTraceArea: NET_ITC_POLYGON, + pub struForwardTrigLine: NET_VCA_LINE, + pub struBackwardTrigLine: NET_VCA_LINE, + pub struLeftTrigLine: NET_VCA_LINE, + pub struRightTrigLine: NET_VCA_LINE, + pub byRes4: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_LANE_HVT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 596usize, + concat!("Size of: ", stringify!(tagNET_ITC_LANE_HVT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_LANE_HVT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNO) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM), + "::", + stringify!(byLaneNO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySignSpeed) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM), + "::", + stringify!(bySignSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpeedLimit) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM), + "::", + stringify!(bySpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBigCarSignSpeed) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM), + "::", + stringify!(byBigCarSignSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBigCarSpeedLimit) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM), + "::", + stringify!(byBigCarSpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpeedCapEn) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM), + "::", + stringify!(bySpeedCapEn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaptureCount) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM), + "::", + stringify!(byCaptureCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedIOOut) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM), + "::", + stringify!(byRelatedIOOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlashMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM), + "::", + stringify!(byFlashMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableRadar) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM), + "::", + stringify!(byEnableRadar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChangeLaneEnable) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM), + "::", + stringify!(byChangeLaneEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChangeLaneCapNo) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM), + "::", + stringify!(byChangeLaneCapNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCapTarget) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM), + "::", + stringify!(dwCapTarget) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInterval) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM), + "::", + stringify!(struInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLane) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM), + "::", + stringify!(struLane) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLeftLaneLine) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM), + "::", + stringify!(struLeftLaneLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRightLaneLine) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM), + "::", + stringify!(struRightLaneLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTraceArea) as usize - ptr as usize }, + 308usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM), + "::", + stringify!(struTraceArea) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struForwardTrigLine) as usize - ptr as usize }, + 472usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM), + "::", + stringify!(struForwardTrigLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBackwardTrigLine) as usize - ptr as usize }, + 488usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM), + "::", + stringify!(struBackwardTrigLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLeftTrigLine) as usize - ptr as usize }, + 504usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM), + "::", + stringify!(struLeftTrigLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRightTrigLine) as usize - ptr as usize }, + 520usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM), + "::", + stringify!(struRightTrigLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes4) as usize - ptr as usize }, + 536usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM), + "::", + stringify!(byRes4) + ) + ); +} +pub type NET_ITC_LANE_HVT_PARAM = tagNET_ITC_LANE_HVT_PARAM; +pub type LPNET_ITC_LANE_HVT_PARAM = *mut tagNET_ITC_LANE_HVT_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_POST_HVT_PARAM { + pub byLaneNum: BYTE, + pub bySceneMode: BYTE, + pub byRoadExpBright: BYTE, + pub byPlateExpBright: BYTE, + pub struDetectArea: NET_ITC_POLYGON, + pub struCapMode: NET_ITC_SNAPMODE_PARAM, + pub struEcParam: NET_ITC_HVT_EC_PARAM, + pub struLaneParam: [NET_ITC_LANE_HVT_PARAM; 6usize], + pub struPlateRecog: NET_ITC_PLATE_RECOG_PARAM, + pub struGeogLocation: NET_DVR_GEOGLOCATION, + pub byRes: [BYTE; 324usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_POST_HVT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4280usize, + concat!("Size of: ", stringify!(tagNET_ITC_POST_HVT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_POST_HVT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_HVT_PARAM), + "::", + stringify!(byLaneNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySceneMode) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_HVT_PARAM), + "::", + stringify!(bySceneMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRoadExpBright) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_HVT_PARAM), + "::", + stringify!(byRoadExpBright) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateExpBright) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_HVT_PARAM), + "::", + stringify!(byPlateExpBright) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDetectArea) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_HVT_PARAM), + "::", + stringify!(struDetectArea) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCapMode) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_HVT_PARAM), + "::", + stringify!(struCapMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEcParam) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_HVT_PARAM), + "::", + stringify!(struEcParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneParam) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_HVT_PARAM), + "::", + stringify!(struLaneParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 3904usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_HVT_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGeogLocation) as usize - ptr as usize }, + 3944usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_HVT_PARAM), + "::", + stringify!(struGeogLocation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3956usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_HVT_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_POST_HVT_PARAM = tagNET_ITC_POST_HVT_PARAM; +pub type LPNET_ITC_POST_HVT_PARAM = *mut tagNET_ITC_POST_HVT_PARAM; +#[doc = "MPR����ģʽ begin 2013-12-07"] +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_LANE_MPR_PARAM { + pub byLaneNO: BYTE, + pub uTssParamInfo: tagNET_ITC_LANE_MPR_PARAM__bindgen_ty_1, + pub byCarDriveDirect: BYTE, + pub byRes: [BYTE; 58usize], + pub struLaneLine: NET_ITC_LINE, + pub struPlateRecog: NET_ITC_POLYGON, + pub byRelaLaneDirectionType: BYTE, + pub byRes1: [BYTE; 255usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_ITC_LANE_MPR_PARAM__bindgen_ty_1 { + pub uLen: [BYTE; 4usize], + pub struIO: tagNET_ITC_LANE_MPR_PARAM__bindgen_ty_1__bindgen_ty_1, + pub struRS485: tagNET_ITC_LANE_MPR_PARAM__bindgen_ty_1__bindgen_ty_2, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_LANE_MPR_PARAM__bindgen_ty_1__bindgen_ty_1 { + pub byIONo: BYTE, + pub byTriggerType: BYTE, + pub byRes1: [BYTE; 2usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_LANE_MPR_PARAM__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!( + "Size of: ", + stringify!(tagNET_ITC_LANE_MPR_PARAM__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_LANE_MPR_PARAM__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIONo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_MPR_PARAM__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byIONo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTriggerType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_MPR_PARAM__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byTriggerType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_MPR_PARAM__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes1) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_LANE_MPR_PARAM__bindgen_ty_1__bindgen_ty_2 { + pub byRelateChan: BYTE, + pub byRes2: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_LANE_MPR_PARAM__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!( + "Size of: ", + stringify!(tagNET_ITC_LANE_MPR_PARAM__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_LANE_MPR_PARAM__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelateChan) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_MPR_PARAM__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byRelateChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_MPR_PARAM__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byRes2) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_ITC_LANE_MPR_PARAM__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!( + "Size of: ", + stringify!(tagNET_ITC_LANE_MPR_PARAM__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_LANE_MPR_PARAM__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_MPR_PARAM__bindgen_ty_1), + "::", + stringify!(uLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIO) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_MPR_PARAM__bindgen_ty_1), + "::", + stringify!(struIO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRS485) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_MPR_PARAM__bindgen_ty_1), + "::", + stringify!(struRS485) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_ITC_LANE_MPR_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 508usize, + concat!("Size of: ", stringify!(tagNET_ITC_LANE_MPR_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_LANE_MPR_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNO) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_MPR_PARAM), + "::", + stringify!(byLaneNO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uTssParamInfo) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_MPR_PARAM), + "::", + stringify!(uTssParamInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCarDriveDirect) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_MPR_PARAM), + "::", + stringify!(byCarDriveDirect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_MPR_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneLine) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_MPR_PARAM), + "::", + stringify!(struLaneLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_MPR_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelaLaneDirectionType) as usize - ptr as usize }, + 252usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_MPR_PARAM), + "::", + stringify!(byRelaLaneDirectionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 253usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_MPR_PARAM), + "::", + stringify!(byRes1) + ) + ); +} +#[doc = "MPR����ģʽ begin 2013-12-07"] +pub type NET_ITC_LANE_MPR_PARAM = tagNET_ITC_LANE_MPR_PARAM; +#[doc = "MPR����ģʽ begin 2013-12-07"] +pub type LPNET_ITC_LANE_MPR_PARAM = *mut tagNET_ITC_LANE_MPR_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_POST_MPR_PARAM { + pub byEnable: BYTE, + pub byLaneNum: BYTE, + pub bySourceType: BYTE, + pub byPicUploadType: BYTE, + pub byRoadType: BYTE, + pub byRes2: BYTE, + pub wCustomDelayTime: WORD, + pub byRes: [BYTE; 56usize], + pub struLaneBoundaryLine: NET_ITC_LINE, + pub struPlateRecog: NET_ITC_PLATE_RECOG_PARAM, + pub struLaneParam: [NET_ITC_LANE_MPR_PARAM; 6usize], + pub szSceneName: [::std::os::raw::c_char; 32usize], + pub struSnapLine: NET_VCA_LINE, + pub byRes1: [BYTE; 392usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_POST_MPR_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 3616usize, + concat!("Size of: ", stringify!(tagNET_ITC_POST_MPR_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_POST_MPR_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MPR_PARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNum) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MPR_PARAM), + "::", + stringify!(byLaneNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySourceType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MPR_PARAM), + "::", + stringify!(bySourceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicUploadType) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MPR_PARAM), + "::", + stringify!(byPicUploadType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRoadType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MPR_PARAM), + "::", + stringify!(byRoadType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MPR_PARAM), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCustomDelayTime) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MPR_PARAM), + "::", + stringify!(wCustomDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MPR_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneBoundaryLine) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MPR_PARAM), + "::", + stringify!(struLaneBoundaryLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MPR_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneParam) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MPR_PARAM), + "::", + stringify!(struLaneParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szSceneName) as usize - ptr as usize }, + 3176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MPR_PARAM), + "::", + stringify!(szSceneName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSnapLine) as usize - ptr as usize }, + 3208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MPR_PARAM), + "::", + stringify!(struSnapLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3224usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MPR_PARAM), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_ITC_POST_MPR_PARAM = tagNET_ITC_POST_MPR_PARAM; +pub type LPNET_ITC_POST_MPR_PARAM = *mut tagNET_ITC_POST_MPR_PARAM; +#[doc = "MPR����ģʽ end 2013-12-07"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIA_LANE_PARAM { + pub byLaneNO: BYTE, + pub byRes: [BYTE; 63usize], + pub struLogicParam: NET_ITC_LANE_LOGIC_PARAM, + pub struLaneLine: NET_ITC_LINE, + pub struPlateRecog: NET_ITC_POLYGON, + pub byRes1: [BYTE; 300usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIA_LANE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 588usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIA_LANE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VIA_LANE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNO) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIA_LANE_PARAM), + "::", + stringify!(byLaneNO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIA_LANE_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLogicParam) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIA_LANE_PARAM), + "::", + stringify!(struLogicParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneLine) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIA_LANE_PARAM), + "::", + stringify!(struLaneLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIA_LANE_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIA_LANE_PARAM), + "::", + stringify!(byRes1) + ) + ); +} +#[doc = "MPR����ģʽ end 2013-12-07"] +pub type NET_DVR_VIA_LANE_PARAM = tagNET_DVR_VIA_LANE_PARAM; +#[doc = "MPR����ģʽ end 2013-12-07"] +pub type LPNET_DVR_VIA_LANE_PARAM = *mut tagNET_DVR_VIA_LANE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIA_VTCOIL_PARAM { + pub byEnable: BYTE, + pub byLaneNum: BYTE, + pub byRes: [BYTE; 62usize], + pub struLaneBoundaryLine: NET_ITC_LINE, + pub struLaneParam: [NET_DVR_VIA_LANE_PARAM; 6usize], + pub struPlateRecog: NET_ITC_PLATE_RECOG_PARAM, + pub byRes1: [BYTE; 624usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIA_VTCOIL_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4280usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIA_VTCOIL_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VIA_VTCOIL_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIA_VTCOIL_PARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNum) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIA_VTCOIL_PARAM), + "::", + stringify!(byLaneNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIA_VTCOIL_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneBoundaryLine) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIA_VTCOIL_PARAM), + "::", + stringify!(struLaneBoundaryLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneParam) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIA_VTCOIL_PARAM), + "::", + stringify!(struLaneParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 3616usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIA_VTCOIL_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3656usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIA_VTCOIL_PARAM), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_VIA_VTCOIL_PARAM = tagNET_DVR_VIA_VTCOIL_PARAM; +pub type LPNET_DVR_VIA_VTCOIL_PARAM = *mut tagNET_DVR_VIA_VTCOIL_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRIGGER_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub dwTriggerMode: DWORD, + pub byDetSceneID: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRIGGER_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_TRIGGER_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TRIGGER_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRIGGER_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRIGGER_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTriggerMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRIGGER_COND), + "::", + stringify!(dwTriggerMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetSceneID) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRIGGER_COND), + "::", + stringify!(byDetSceneID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRIGGER_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TRIGGER_COND = tagNET_DVR_TRIGGER_COND; +pub type LPNET_DVR_TRIGGER_COND = *mut tagNET_DVR_TRIGGER_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_LANE_IMT_PARAM { + pub byLaneNO: BYTE, + pub byRelaLaneDirectionType: BYTE, + pub byRes: [BYTE; 146usize], + pub struLaneLine: NET_ITC_LINE, + pub byRes1: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_LANE_IMT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 428usize, + concat!("Size of: ", stringify!(tagNET_ITC_LANE_IMT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_LANE_IMT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNO) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_IMT_PARAM), + "::", + stringify!(byLaneNO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelaLaneDirectionType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_IMT_PARAM), + "::", + stringify!(byRelaLaneDirectionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_IMT_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneLine) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_IMT_PARAM), + "::", + stringify!(struLaneLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_IMT_PARAM), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_ITC_LANE_IMT_PARAM = tagNET_ITC_LANE_IMT_PARAM; +pub type LPNET_ITC_LANE_IMT_PARAM = *mut tagNET_ITC_LANE_IMT_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_POST_IMT_PARAM { + pub byEnable: BYTE, + pub byLaneNum: BYTE, + pub bySnapMode: BYTE, + pub byRes: [BYTE; 61usize], + pub struPlateRecog: NET_ITC_PLATE_RECOG_PARAM, + pub struLaneBoundaryLine: NET_ITC_LINE, + pub struLaneParam: [NET_ITC_LANE_IMT_PARAM; 6usize], + pub byRes1: [BYTE; 1584usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_POST_IMT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4280usize, + concat!("Size of: ", stringify!(tagNET_ITC_POST_IMT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_POST_IMT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_IMT_PARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNum) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_IMT_PARAM), + "::", + stringify!(byLaneNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnapMode) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_IMT_PARAM), + "::", + stringify!(bySnapMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_IMT_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_IMT_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneBoundaryLine) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_IMT_PARAM), + "::", + stringify!(struLaneBoundaryLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneParam) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_IMT_PARAM), + "::", + stringify!(struLaneParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2696usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_IMT_PARAM), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_ITC_POST_IMT_PARAM = tagNET_ITC_POST_IMT_PARAM; +pub type LPNET_ITC_POST_IMT_PARAM = *mut tagNET_ITC_POST_IMT_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_LANE_PRS_PARAM { + pub byLaneNO: BYTE, + pub uTssParamInfo: tagNET_ITC_LANE_PRS_PARAM__bindgen_ty_1, + pub byRes: [BYTE; 59usize], + pub struLaneLine: NET_ITC_LINE, + pub struPlateRecog: NET_ITC_POLYGON, + pub byRelaLaneDirectionType: BYTE, + pub byRes2: [BYTE; 3usize], + pub struTrigLine: NET_ITC_LINE, + pub byRes1: [BYTE; 228usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_ITC_LANE_PRS_PARAM__bindgen_ty_1 { + pub uLen: [BYTE; 4usize], + pub struIO: tagNET_ITC_LANE_PRS_PARAM__bindgen_ty_1__bindgen_ty_1, + pub struRS485: tagNET_ITC_LANE_PRS_PARAM__bindgen_ty_1__bindgen_ty_2, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_LANE_PRS_PARAM__bindgen_ty_1__bindgen_ty_1 { + pub byIONo: BYTE, + pub byTriggerType: BYTE, + pub byRes1: [BYTE; 2usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_LANE_PRS_PARAM__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!( + "Size of: ", + stringify!(tagNET_ITC_LANE_PRS_PARAM__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_LANE_PRS_PARAM__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIONo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PRS_PARAM__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byIONo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTriggerType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PRS_PARAM__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byTriggerType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PRS_PARAM__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes1) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_LANE_PRS_PARAM__bindgen_ty_1__bindgen_ty_2 { + pub byRelateChan: BYTE, + pub byRes2: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_LANE_PRS_PARAM__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!( + "Size of: ", + stringify!(tagNET_ITC_LANE_PRS_PARAM__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_LANE_PRS_PARAM__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelateChan) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PRS_PARAM__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byRelateChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PRS_PARAM__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byRes2) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_ITC_LANE_PRS_PARAM__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!( + "Size of: ", + stringify!(tagNET_ITC_LANE_PRS_PARAM__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_LANE_PRS_PARAM__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PRS_PARAM__bindgen_ty_1), + "::", + stringify!(uLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIO) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PRS_PARAM__bindgen_ty_1), + "::", + stringify!(struIO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRS485) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PRS_PARAM__bindgen_ty_1), + "::", + stringify!(struRS485) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_ITC_LANE_PRS_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 508usize, + concat!("Size of: ", stringify!(tagNET_ITC_LANE_PRS_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_LANE_PRS_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNO) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PRS_PARAM), + "::", + stringify!(byLaneNO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uTssParamInfo) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PRS_PARAM), + "::", + stringify!(uTssParamInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PRS_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneLine) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PRS_PARAM), + "::", + stringify!(struLaneLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PRS_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelaLaneDirectionType) as usize - ptr as usize }, + 252usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PRS_PARAM), + "::", + stringify!(byRelaLaneDirectionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 253usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PRS_PARAM), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTrigLine) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PRS_PARAM), + "::", + stringify!(struTrigLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_PRS_PARAM), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_ITC_LANE_PRS_PARAM = tagNET_ITC_LANE_PRS_PARAM; +pub type LPNET_ITC_LANE_PRS_PARAM = *mut tagNET_ITC_LANE_PRS_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_POST_PRS_PARAM { + pub byEnable: BYTE, + pub byLaneNum: BYTE, + pub bySourceType: BYTE, + pub bySnapMode: BYTE, + pub byCapMode: BYTE, + pub byNoPlatCarCap: BYTE, + pub bySceneMode: BYTE, + pub byRes: [BYTE; 57usize], + pub struLaneBoundaryLine: NET_ITC_LINE, + pub struPlateRecog: NET_ITC_PLATE_RECOG_PARAM, + pub struLaneParam: [NET_ITC_LANE_PRS_PARAM; 6usize], + pub byRes1: [BYTE; 440usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_POST_PRS_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 3616usize, + concat!("Size of: ", stringify!(tagNET_ITC_POST_PRS_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_POST_PRS_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_PRS_PARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNum) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_PRS_PARAM), + "::", + stringify!(byLaneNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySourceType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_PRS_PARAM), + "::", + stringify!(bySourceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnapMode) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_PRS_PARAM), + "::", + stringify!(bySnapMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCapMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_PRS_PARAM), + "::", + stringify!(byCapMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNoPlatCarCap) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_PRS_PARAM), + "::", + stringify!(byNoPlatCarCap) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySceneMode) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_PRS_PARAM), + "::", + stringify!(bySceneMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_PRS_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneBoundaryLine) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_PRS_PARAM), + "::", + stringify!(struLaneBoundaryLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_PRS_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneParam) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_PRS_PARAM), + "::", + stringify!(struLaneParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_PRS_PARAM), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_ITC_POST_PRS_PARAM = tagNET_ITC_POST_PRS_PARAM; +pub type LPNET_ITC_POST_PRS_PARAM = *mut tagNET_ITC_POST_PRS_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_IPC_LANE_HVT_PARAM { + pub byLaneNO: BYTE, + pub byCarDriveDirect: BYTE, + pub byRes: [BYTE; 62usize], + pub struLaneLine: NET_ITC_LINE, + pub struPlateRecog: NET_ITC_POLYGON, + pub byRes1: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_IPC_LANE_HVT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 508usize, + concat!("Size of: ", stringify!(tagNET_IPC_LANE_HVT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_IPC_LANE_HVT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNO) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_LANE_HVT_PARAM), + "::", + stringify!(byLaneNO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCarDriveDirect) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_LANE_HVT_PARAM), + "::", + stringify!(byCarDriveDirect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_LANE_HVT_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneLine) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_LANE_HVT_PARAM), + "::", + stringify!(struLaneLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_LANE_HVT_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 252usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_LANE_HVT_PARAM), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_IPC_LANE_HVT_PARAM = tagNET_IPC_LANE_HVT_PARAM; +pub type LPNET_IPC_LANE_HVT_PARAM = *mut tagNET_IPC_LANE_HVT_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_ITC_PARKING_DETECTION_ { + pub byEnable: BYTE, + pub byRes: BYTE, + pub wDuration: WORD, + pub wAlarmIntervalTime: WORD, + pub byRes1: [BYTE; 58usize], +} +#[test] +fn bindgen_test_layout__NET_ITC_PARKING_DETECTION_() { + const UNINIT: ::std::mem::MaybeUninit<_NET_ITC_PARKING_DETECTION_> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_ITC_PARKING_DETECTION_>(), + 64usize, + concat!("Size of: ", stringify!(_NET_ITC_PARKING_DETECTION_)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_ITC_PARKING_DETECTION_>(), + 2usize, + concat!("Alignment of ", stringify!(_NET_ITC_PARKING_DETECTION_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_ITC_PARKING_DETECTION_), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(_NET_ITC_PARKING_DETECTION_), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDuration) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(_NET_ITC_PARKING_DETECTION_), + "::", + stringify!(wDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAlarmIntervalTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_ITC_PARKING_DETECTION_), + "::", + stringify!(wAlarmIntervalTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(_NET_ITC_PARKING_DETECTION_), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_ITC_PARKING_DETECTION = _NET_ITC_PARKING_DETECTION_; +pub type LPNET_ITC_PARKING_DETECTION = *mut _NET_ITC_PARKING_DETECTION_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_IPC_POST_HVT_PARAM { + pub byEnable: BYTE, + pub byLaneNum: BYTE, + pub byEnhancedMode: BYTE, + pub byPicRecognition: BYTE, + pub byRes: [BYTE; 60usize], + pub struLaneBoundaryLine: NET_ITC_LINE, + pub struPlateRecog: NET_ITC_PLATE_RECOG_PARAM, + pub struLaneParam: [NET_IPC_LANE_HVT_PARAM; 6usize], + pub szSceneName: [::std::os::raw::c_char; 32usize], + pub struSnapLine: NET_VCA_LINE, + pub struParkingDetection: NET_ITC_PARKING_DETECTION, + pub byRes1: [BYTE; 328usize], +} +#[test] +fn bindgen_test_layout_tagNET_IPC_POST_HVT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 3616usize, + concat!("Size of: ", stringify!(tagNET_IPC_POST_HVT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_IPC_POST_HVT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_POST_HVT_PARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNum) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_POST_HVT_PARAM), + "::", + stringify!(byLaneNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnhancedMode) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_POST_HVT_PARAM), + "::", + stringify!(byEnhancedMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicRecognition) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_POST_HVT_PARAM), + "::", + stringify!(byPicRecognition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_POST_HVT_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneBoundaryLine) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_POST_HVT_PARAM), + "::", + stringify!(struLaneBoundaryLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_POST_HVT_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneParam) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_POST_HVT_PARAM), + "::", + stringify!(struLaneParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szSceneName) as usize - ptr as usize }, + 3176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_POST_HVT_PARAM), + "::", + stringify!(szSceneName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSnapLine) as usize - ptr as usize }, + 3208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_POST_HVT_PARAM), + "::", + stringify!(struSnapLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struParkingDetection) as usize - ptr as usize }, + 3224usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_POST_HVT_PARAM), + "::", + stringify!(struParkingDetection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3288usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_POST_HVT_PARAM), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_IPC_POST_HVT_PARAM = tagNET_IPC_POST_HVT_PARAM; +pub type LPNET_IPC_POST_HVT_PARAM = *mut tagNET_IPC_POST_HVT_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_LANE_HVT_PARAM_V50 { + pub byLaneNO: BYTE, + pub byFlashMode: BYTE, + pub bySignSpeed: BYTE, + pub bySpeedLimit: BYTE, + pub bySignLowSpeed: BYTE, + pub byLowSpeedLimit: BYTE, + pub byBigCarSignSpeed: BYTE, + pub byBigCarSpeedLimit: BYTE, + pub byBigCarSignLowSpeed: BYTE, + pub byBigCarLowSpeedLimit: BYTE, + pub bySnapTimes: BYTE, + pub byDriveLineSnapTime: BYTE, + pub byHighSpeedSnapTime: BYTE, + pub byLowSpeedSnapTime: BYTE, + pub byBanSnapTime: BYTE, + pub byReverseSnapTime: BYTE, + pub byRelatedDriveWay: BYTE, + pub byLaneType: BYTE, + pub byRelaLaneDirectionType: BYTE, + pub byRes1: [BYTE; 27usize], + pub byChangeLaneEnable: BYTE, + pub byChangeLaneCapNo: BYTE, + pub dwVioDetectType: DWORD, + pub dwRelatedIOOut: DWORD, + pub struTrigLine: NET_ITC_LINE, + pub struLineLeft: NET_ITC_LINE, + pub struPlateRecog: NET_ITC_POLYGON, + pub struLane: NET_ITC_LANE_LOGIC_PARAM, + pub struInterval: NET_ITC_INTERVAL_PARAM, + pub byRes2: [BYTE; 280usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_LANE_HVT_PARAM_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 604usize, + concat!("Size of: ", stringify!(tagNET_ITC_LANE_HVT_PARAM_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_LANE_HVT_PARAM_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNO) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(byLaneNO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlashMode) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(byFlashMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySignSpeed) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(bySignSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpeedLimit) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(bySpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySignLowSpeed) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(bySignLowSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLowSpeedLimit) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(byLowSpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBigCarSignSpeed) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(byBigCarSignSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBigCarSpeedLimit) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(byBigCarSpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBigCarSignLowSpeed) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(byBigCarSignLowSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBigCarLowSpeedLimit) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(byBigCarLowSpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnapTimes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(bySnapTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDriveLineSnapTime) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(byDriveLineSnapTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHighSpeedSnapTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(byHighSpeedSnapTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLowSpeedSnapTime) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(byLowSpeedSnapTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBanSnapTime) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(byBanSnapTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReverseSnapTime) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(byReverseSnapTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedDriveWay) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(byRelatedDriveWay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneType) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(byLaneType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelaLaneDirectionType) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(byRelaLaneDirectionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 19usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChangeLaneEnable) as usize - ptr as usize }, + 46usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(byChangeLaneEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChangeLaneCapNo) as usize - ptr as usize }, + 47usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(byChangeLaneCapNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVioDetectType) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(dwVioDetectType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelatedIOOut) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(dwRelatedIOOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTrigLine) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(struTrigLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLineLeft) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(struLineLeft) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLane) as usize - ptr as usize }, + 268usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(struLane) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInterval) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(struInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 324usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_HVT_PARAM_V50), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_ITC_LANE_HVT_PARAM_V50 = tagNET_ITC_LANE_HVT_PARAM_V50; +pub type LPNET_ITC_LANE_HVT_PARAM_V50 = *mut tagNET_ITC_LANE_HVT_PARAM_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_POST_HVT_PARAM_V50 { + pub byLaneNum: BYTE, + pub byCapType: BYTE, + pub byCapMode: BYTE, + pub bySecneMode: BYTE, + pub bySpeedMode: BYTE, + pub byLineRuleEffect: BYTE, + pub byRes1: [BYTE; 78usize], + pub struLeftTrigLine: NET_ITC_LINE, + pub struRigtTrigLine: NET_ITC_LINE, + pub struLaneBoundaryLine: NET_ITC_LINE, + pub struDetectArea: NET_ITC_POLYGON, + pub struGeogLocation: NET_DVR_GEOGLOCATION, + pub struLaneParam: [NET_ITC_LANE_HVT_PARAM_V50; 6usize], + pub struPlateRecog: NET_ITC_PLATE_RECOG_PARAM, + pub byRes2: [BYTE; 260usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_POST_HVT_PARAM_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4256usize, + concat!("Size of: ", stringify!(tagNET_ITC_POST_HVT_PARAM_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_POST_HVT_PARAM_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_HVT_PARAM_V50), + "::", + stringify!(byLaneNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCapType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_HVT_PARAM_V50), + "::", + stringify!(byCapType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCapMode) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_HVT_PARAM_V50), + "::", + stringify!(byCapMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySecneMode) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_HVT_PARAM_V50), + "::", + stringify!(bySecneMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpeedMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_HVT_PARAM_V50), + "::", + stringify!(bySpeedMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLineRuleEffect) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_HVT_PARAM_V50), + "::", + stringify!(byLineRuleEffect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_HVT_PARAM_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLeftTrigLine) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_HVT_PARAM_V50), + "::", + stringify!(struLeftTrigLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRigtTrigLine) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_HVT_PARAM_V50), + "::", + stringify!(struRigtTrigLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneBoundaryLine) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_HVT_PARAM_V50), + "::", + stringify!(struLaneBoundaryLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDetectArea) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_HVT_PARAM_V50), + "::", + stringify!(struDetectArea) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGeogLocation) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_HVT_PARAM_V50), + "::", + stringify!(struGeogLocation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneParam) as usize - ptr as usize }, + 332usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_HVT_PARAM_V50), + "::", + stringify!(struLaneParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 3956usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_HVT_PARAM_V50), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 3996usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_HVT_PARAM_V50), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_ITC_POST_HVT_PARAM_V50 = tagNET_ITC_POST_HVT_PARAM_V50; +pub type LPNET_ITC_POST_HVT_PARAM_V50 = *mut tagNET_ITC_POST_HVT_PARAM_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM { + pub byRelatedDriveWay: BYTE, + pub byRelaLaneDirectionType: BYTE, + pub byPedestriansNum: BYTE, + pub byVehicleSpeed: BYTE, + pub dwVehicleInterval: DWORD, + pub byPedesDetRule: BYTE, + pub byRes: [BYTE; 3usize], + pub struLaneLine: NET_ITC_LINE, + pub struStopLine: NET_ITC_LINE, + pub struPlateRecog: NET_ITC_POLYGON, + pub byRes1: [BYTE; 280usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 504usize, + concat!( + "Size of: ", + stringify!(tagNET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedDriveWay) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM), + "::", + stringify!(byRelatedDriveWay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelaLaneDirectionType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM), + "::", + stringify!(byRelaLaneDirectionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPedestriansNum) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM), + "::", + stringify!(byPedestriansNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleSpeed) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM), + "::", + stringify!(byVehicleSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVehicleInterval) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM), + "::", + stringify!(dwVehicleInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPedesDetRule) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM), + "::", + stringify!(byPedesDetRule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneLine) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM), + "::", + stringify!(struLaneLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopLine) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM), + "::", + stringify!(struStopLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM = tagNET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM; +pub type LPNET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM = *mut tagNET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_NOCOMITY_PEDESTRIAN_PARAM { + pub byEnable: BYTE, + pub byLaneNum: BYTE, + pub byRes: [BYTE; 74usize], + pub struLaneBoundaryLine: NET_ITC_LINE, + pub struTriggerLine: NET_ITC_LINE, + pub struPedesDetRecog: NET_ITC_POLYGON, + pub struLaneParam: [NET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM; 6usize], + pub struPlateRecog: NET_ITC_PLATE_RECOG_PARAM, + pub byRes1: [BYTE; 400usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_NOCOMITY_PEDESTRIAN_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 3752usize, + concat!( + "Size of: ", + stringify!(tagNET_ITC_NOCOMITY_PEDESTRIAN_PARAM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_NOCOMITY_PEDESTRIAN_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_NOCOMITY_PEDESTRIAN_PARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNum) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_NOCOMITY_PEDESTRIAN_PARAM), + "::", + stringify!(byLaneNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_NOCOMITY_PEDESTRIAN_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneBoundaryLine) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_NOCOMITY_PEDESTRIAN_PARAM), + "::", + stringify!(struLaneBoundaryLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTriggerLine) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_NOCOMITY_PEDESTRIAN_PARAM), + "::", + stringify!(struTriggerLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPedesDetRecog) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_NOCOMITY_PEDESTRIAN_PARAM), + "::", + stringify!(struPedesDetRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneParam) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_NOCOMITY_PEDESTRIAN_PARAM), + "::", + stringify!(struLaneParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 3312usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_NOCOMITY_PEDESTRIAN_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3352usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_NOCOMITY_PEDESTRIAN_PARAM), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_ITC_NOCOMITY_PEDESTRIAN_PARAM = tagNET_ITC_NOCOMITY_PEDESTRIAN_PARAM; +pub type LPNET_ITC_NOCOMITY_PEDESTRIAN_PARAM = *mut tagNET_ITC_NOCOMITY_PEDESTRIAN_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_SINGLE_IO_LIGHT_PARAM { + pub byLightType: BYTE, + pub byRelatedIO: BYTE, + pub byRedLightState: BYTE, + pub byRes: [BYTE; 17usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_SINGLE_IO_LIGHT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_ITC_SINGLE_IO_LIGHT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_SINGLE_IO_LIGHT_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLightType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IO_LIGHT_PARAM), + "::", + stringify!(byLightType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedIO) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IO_LIGHT_PARAM), + "::", + stringify!(byRelatedIO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRedLightState) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IO_LIGHT_PARAM), + "::", + stringify!(byRedLightState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_IO_LIGHT_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_SINGLE_IO_LIGHT_PARAM = tagNET_ITC_SINGLE_IO_LIGHT_PARAM; +pub type LPNET_ITC_SINGLE_IO_LIGHT_PARAM = *mut tagNET_ITC_SINGLE_IO_LIGHT_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_IO_LIGHT_PARAM { + pub struIOLight: [NET_ITC_SINGLE_IO_LIGHT_PARAM; 6usize], + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_IO_LIGHT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_ITC_IO_LIGHT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_ITC_IO_LIGHT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIOLight) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_IO_LIGHT_PARAM), + "::", + stringify!(struIOLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_IO_LIGHT_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_IO_LIGHT_PARAM = tagNET_ITC_IO_LIGHT_PARAM; +pub type LPNET_ITC_IO_LIGHT_PARAM = *mut tagNET_ITC_IO_LIGHT_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_SINGLE_RS485_LIGHT_PARAM { + pub byLightType: BYTE, + pub byRelatedLightChan: BYTE, + pub byInputLight: BYTE, + pub byRelatedYLightChan: BYTE, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_SINGLE_RS485_LIGHT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_ITC_SINGLE_RS485_LIGHT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_SINGLE_RS485_LIGHT_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLightType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_RS485_LIGHT_PARAM), + "::", + stringify!(byLightType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedLightChan) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_RS485_LIGHT_PARAM), + "::", + stringify!(byRelatedLightChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInputLight) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_RS485_LIGHT_PARAM), + "::", + stringify!(byInputLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelatedYLightChan) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_RS485_LIGHT_PARAM), + "::", + stringify!(byRelatedYLightChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_RS485_LIGHT_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_SINGLE_RS485_LIGHT_PARAM = tagNET_ITC_SINGLE_RS485_LIGHT_PARAM; +pub type LPNET_ITC_SINGLE_RS485_LIGHT_PARAM = *mut tagNET_ITC_SINGLE_RS485_LIGHT_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_RS485_LIGHT_PARAM { + pub struRS485Light: [NET_ITC_SINGLE_RS485_LIGHT_PARAM; 6usize], + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_RS485_LIGHT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_ITC_RS485_LIGHT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_ITC_RS485_LIGHT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRS485Light) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_RS485_LIGHT_PARAM), + "::", + stringify!(struRS485Light) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_RS485_LIGHT_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_RS485_LIGHT_PARAM = tagNET_ITC_RS485_LIGHT_PARAM; +pub type LPNET_ITC_RS485_LIGHT_PARAM = *mut tagNET_ITC_RS485_LIGHT_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_POS_PARAM { + pub wLeft: WORD, + pub wTop: WORD, + pub wRight: WORD, + pub wBottom: WORD, +} +#[test] +fn bindgen_test_layout_tagNET_POS_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_POS_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_POS_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLeft) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_POS_PARAM), + "::", + stringify!(wLeft) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTop) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_POS_PARAM), + "::", + stringify!(wTop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRight) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_POS_PARAM), + "::", + stringify!(wRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBottom) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_POS_PARAM), + "::", + stringify!(wBottom) + ) + ); +} +pub type NET_POS_PARAM = tagNET_POS_PARAM; +pub type LPNET_POS_PARAM = *mut tagNET_POS_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM { + pub byLightNum: BYTE, + pub byStraightLight: BYTE, + pub byLeftLight: BYTE, + pub byRightLight: BYTE, + pub byRedLight: BYTE, + pub byGreenLight: BYTE, + pub byYellowLight: BYTE, + pub byYellowLightTime: BYTE, + pub struLightRect: NET_POS_PARAM, + pub byRes: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!( + "Size of: ", + stringify!(tagNET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLightNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM), + "::", + stringify!(byLightNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStraightLight) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM), + "::", + stringify!(byStraightLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLeftLight) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM), + "::", + stringify!(byLeftLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRightLight) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM), + "::", + stringify!(byRightLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRedLight) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM), + "::", + stringify!(byRedLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGreenLight) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM), + "::", + stringify!(byGreenLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byYellowLight) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM), + "::", + stringify!(byYellowLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byYellowLightTime) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM), + "::", + stringify!(byYellowLightTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLightRect) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM), + "::", + stringify!(struLightRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM = tagNET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM; +pub type LPNET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM = + *mut tagNET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_VIDEO_DETECT_LIGHT_PARAM { + pub struTrafficLight: [NET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM; 12usize], + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_VIDEO_DETECT_LIGHT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 488usize, + concat!("Size of: ", stringify!(tagNET_ITC_VIDEO_DETECT_LIGHT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_VIDEO_DETECT_LIGHT_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTrafficLight) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIDEO_DETECT_LIGHT_PARAM), + "::", + stringify!(struTrafficLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 480usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIDEO_DETECT_LIGHT_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_VIDEO_DETECT_LIGHT_PARAM = tagNET_ITC_VIDEO_DETECT_LIGHT_PARAM; +pub type LPNET_ITC_VIDEO_DETECT_LIGHT_PARAM = *mut tagNET_ITC_VIDEO_DETECT_LIGHT_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_ITC_LIGHT_ACCESSPARAM_UNION { + pub uLen: [DWORD; 122usize], + pub struIOLight: NET_ITC_IO_LIGHT_PARAM, + pub struRS485Light: NET_ITC_RS485_LIGHT_PARAM, + pub struVideoDelectLight: NET_ITC_VIDEO_DETECT_LIGHT_PARAM, +} +#[test] +fn bindgen_test_layout_tagNET_ITC_LIGHT_ACCESSPARAM_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 488usize, + concat!("Size of: ", stringify!(tagNET_ITC_LIGHT_ACCESSPARAM_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_LIGHT_ACCESSPARAM_UNION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LIGHT_ACCESSPARAM_UNION), + "::", + stringify!(uLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIOLight) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LIGHT_ACCESSPARAM_UNION), + "::", + stringify!(struIOLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRS485Light) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LIGHT_ACCESSPARAM_UNION), + "::", + stringify!(struRS485Light) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVideoDelectLight) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LIGHT_ACCESSPARAM_UNION), + "::", + stringify!(struVideoDelectLight) + ) + ); +} +pub type NET_ITC_LIGHT_ACCESSPARAM_UNION = tagNET_ITC_LIGHT_ACCESSPARAM_UNION; +pub type LPNET_ITC_LIGHT_ACCESSPARAM_UNION = *mut tagNET_ITC_LIGHT_ACCESSPARAM_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_TRAFFIC_LIGHT_PARAM { + pub bySource: BYTE, + pub byRes1: [BYTE; 3usize], + pub struLightAccess: NET_ITC_LIGHT_ACCESSPARAM_UNION, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_TRAFFIC_LIGHT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 524usize, + concat!("Size of: ", stringify!(tagNET_ITC_TRAFFIC_LIGHT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_TRAFFIC_LIGHT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySource) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRAFFIC_LIGHT_PARAM), + "::", + stringify!(bySource) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRAFFIC_LIGHT_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLightAccess) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRAFFIC_LIGHT_PARAM), + "::", + stringify!(struLightAccess) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 492usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRAFFIC_LIGHT_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_TRAFFIC_LIGHT_PARAM = tagNET_ITC_TRAFFIC_LIGHT_PARAM; +pub type LPNET_ITC_TRAFFIC_LIGHT_PARAM = *mut tagNET_ITC_TRAFFIC_LIGHT_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_VIOLATION_DETECT_LINE { + pub struLaneLine: NET_ITC_LINE, + pub struStopLine: NET_ITC_LINE, + pub struRedLightLine: NET_ITC_LINE, + pub struCancelLine: NET_ITC_LINE, + pub struWaitLine: NET_ITC_LINE, + pub struRes: [NET_ITC_LINE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_VIOLATION_DETECT_LINE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 312usize, + concat!("Size of: ", stringify!(tagNET_ITC_VIOLATION_DETECT_LINE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_VIOLATION_DETECT_LINE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneLine) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIOLATION_DETECT_LINE), + "::", + stringify!(struLaneLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopLine) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIOLATION_DETECT_LINE), + "::", + stringify!(struStopLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRedLightLine) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIOLATION_DETECT_LINE), + "::", + stringify!(struRedLightLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCancelLine) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIOLATION_DETECT_LINE), + "::", + stringify!(struCancelLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWaitLine) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIOLATION_DETECT_LINE), + "::", + stringify!(struWaitLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRes) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIOLATION_DETECT_LINE), + "::", + stringify!(struRes) + ) + ); +} +pub type NET_ITC_VIOLATION_DETECT_LINE = tagNET_ITC_VIOLATION_DETECT_LINE; +pub type LPNET_ITC_VIOLATION_DETECT_LINE = *mut tagNET_ITC_VIOLATION_DETECT_LINE; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_REDLIGHT_PEDESTRIAN_PARAM { + pub byEnable: BYTE, + pub bySnapNumTimes: BYTE, + pub byPedesDir: BYTE, + pub byDelayTime: BYTE, + pub byStackTargetEnble: BYTE, + pub byCalibRecogCtrl: BYTE, + pub byRes1: [BYTE; 2usize], + pub struTrafficLight: NET_ITC_TRAFFIC_LIGHT_PARAM, + pub struStopLine: NET_ITC_LINE, + pub struCalibRecog: [NET_ITC_POLYGON; 2usize], + pub byRes: [BYTE; 440usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_REDLIGHT_PEDESTRIAN_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1324usize, + concat!( + "Size of: ", + stringify!(tagNET_ITC_REDLIGHT_PEDESTRIAN_PARAM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_REDLIGHT_PEDESTRIAN_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_REDLIGHT_PEDESTRIAN_PARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnapNumTimes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_REDLIGHT_PEDESTRIAN_PARAM), + "::", + stringify!(bySnapNumTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPedesDir) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_REDLIGHT_PEDESTRIAN_PARAM), + "::", + stringify!(byPedesDir) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDelayTime) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_REDLIGHT_PEDESTRIAN_PARAM), + "::", + stringify!(byDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStackTargetEnble) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_REDLIGHT_PEDESTRIAN_PARAM), + "::", + stringify!(byStackTargetEnble) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCalibRecogCtrl) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_REDLIGHT_PEDESTRIAN_PARAM), + "::", + stringify!(byCalibRecogCtrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_REDLIGHT_PEDESTRIAN_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTrafficLight) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_REDLIGHT_PEDESTRIAN_PARAM), + "::", + stringify!(struTrafficLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopLine) as usize - ptr as usize }, + 532usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_REDLIGHT_PEDESTRIAN_PARAM), + "::", + stringify!(struStopLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCalibRecog) as usize - ptr as usize }, + 556usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_REDLIGHT_PEDESTRIAN_PARAM), + "::", + stringify!(struCalibRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 884usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_REDLIGHT_PEDESTRIAN_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_REDLIGHT_PEDESTRIAN_PARAM = tagNET_ITC_REDLIGHT_PEDESTRIAN_PARAM; +pub type LPNET_ITC_REDLIGHT_PEDESTRIAN_PARAM = *mut tagNET_ITC_REDLIGHT_PEDESTRIAN_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_POST_MOBILE_PARAM { + pub byEnable: BYTE, + pub bySceneMode: BYTE, + pub wExpressWayCapType: WORD, + pub wUrbanRoadCapType: WORD, + pub byCapNum: BYTE, + pub byRecordEnable: BYTE, + pub dwPreRecordTime: DWORD, + pub dwOverRecordTime: DWORD, + pub struLane: NET_ITC_LANE_LOGIC_PARAM, + pub struPolygon: [NET_ITC_POLYGON; 3usize], + pub struLine: [NET_ITC_VIOLATION_DETECT_LINE; 3usize], + pub struLaneBoundaryLine: NET_ITC_LINE, + pub struPlateRecog: NET_ITC_PLATE_RECOG_PARAM, + pub struInterval: NET_ITC_INTERVAL_PARAM, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_POST_MOBILE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1820usize, + concat!("Size of: ", stringify!(tagNET_ITC_POST_MOBILE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_POST_MOBILE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MOBILE_PARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySceneMode) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MOBILE_PARAM), + "::", + stringify!(bySceneMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wExpressWayCapType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MOBILE_PARAM), + "::", + stringify!(wExpressWayCapType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wUrbanRoadCapType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MOBILE_PARAM), + "::", + stringify!(wUrbanRoadCapType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCapNum) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MOBILE_PARAM), + "::", + stringify!(byCapNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordEnable) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MOBILE_PARAM), + "::", + stringify!(byRecordEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPreRecordTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MOBILE_PARAM), + "::", + stringify!(dwPreRecordTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOverRecordTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MOBILE_PARAM), + "::", + stringify!(dwOverRecordTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLane) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MOBILE_PARAM), + "::", + stringify!(struLane) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPolygon) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MOBILE_PARAM), + "::", + stringify!(struPolygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLine) as usize - ptr as usize }, + 544usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MOBILE_PARAM), + "::", + stringify!(struLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneBoundaryLine) as usize - ptr as usize }, + 1480usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MOBILE_PARAM), + "::", + stringify!(struLaneBoundaryLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 1504usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MOBILE_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInterval) as usize - ptr as usize }, + 1544usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MOBILE_PARAM), + "::", + stringify!(struInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1564usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_POST_MOBILE_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_POST_MOBILE_PARAM = tagNET_ITC_POST_MOBILE_PARAM; +pub type LPNET_ITC_POST_MOBILE_PARAM = *mut tagNET_ITC_POST_MOBILE_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_ITC_TRIGGER_PARAM_UNION { + pub uLen: [DWORD; 1070usize], + pub struIOSpeed: NET_ITC_POST_IOSPEED_PARAM, + pub struSingleIO: NET_ITC_POST_SINGLEIO_PARAM, + pub struPostRs485: NET_ITC_POST_RS485_PARAM, + pub struPostRadar: NET_ITC_POST_RS485_RADAR_PARAM, + pub struVtCoil: NET_ITC_POST_VTCOIL_PARAM, + pub struHvt: NET_ITC_POST_HVT_PARAM, + pub struIOTL: NET_ITC_EPOLICE_IOTL_PARAM, + pub struEpoliceRs485: NET_ITC_EPOLICE_RS485_PARAM, + pub struPERs485: NET_ITC_EPOLICE_RS485_PARAM, + pub struPostMpr: NET_ITC_POST_MPR_PARAM, + pub struViaVtCoil: NET_DVR_VIA_VTCOIL_PARAM, + pub struPostImt: NET_ITC_POST_IMT_PARAM, + pub struPostPrs: NET_ITC_POST_PRS_PARAM, + pub struIpcHvt: NET_IPC_POST_HVT_PARAM, + pub struHvtV50: NET_ITC_POST_HVT_PARAM_V50, + pub struPostMobile: NET_ITC_POST_MOBILE_PARAM, + pub struNoComityPed: NET_ITC_NOCOMITY_PEDESTRIAN_PARAM, + pub struRedLightPed: NET_ITC_REDLIGHT_PEDESTRIAN_PARAM, +} +#[test] +fn bindgen_test_layout_tagNET_ITC_TRIGGER_PARAM_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4280usize, + concat!("Size of: ", stringify!(tagNET_ITC_TRIGGER_PARAM_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_TRIGGER_PARAM_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGER_PARAM_UNION), + "::", + stringify!(uLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIOSpeed) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGER_PARAM_UNION), + "::", + stringify!(struIOSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSingleIO) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGER_PARAM_UNION), + "::", + stringify!(struSingleIO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPostRs485) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGER_PARAM_UNION), + "::", + stringify!(struPostRs485) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPostRadar) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGER_PARAM_UNION), + "::", + stringify!(struPostRadar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVtCoil) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGER_PARAM_UNION), + "::", + stringify!(struVtCoil) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHvt) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGER_PARAM_UNION), + "::", + stringify!(struHvt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIOTL) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGER_PARAM_UNION), + "::", + stringify!(struIOTL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEpoliceRs485) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGER_PARAM_UNION), + "::", + stringify!(struEpoliceRs485) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPERs485) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGER_PARAM_UNION), + "::", + stringify!(struPERs485) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPostMpr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGER_PARAM_UNION), + "::", + stringify!(struPostMpr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struViaVtCoil) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGER_PARAM_UNION), + "::", + stringify!(struViaVtCoil) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPostImt) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGER_PARAM_UNION), + "::", + stringify!(struPostImt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPostPrs) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGER_PARAM_UNION), + "::", + stringify!(struPostPrs) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIpcHvt) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGER_PARAM_UNION), + "::", + stringify!(struIpcHvt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHvtV50) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGER_PARAM_UNION), + "::", + stringify!(struHvtV50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPostMobile) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGER_PARAM_UNION), + "::", + stringify!(struPostMobile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNoComityPed) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGER_PARAM_UNION), + "::", + stringify!(struNoComityPed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRedLightPed) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGER_PARAM_UNION), + "::", + stringify!(struRedLightPed) + ) + ); +} +pub type NET_ITC_TRIGGER_PARAM_UNION = tagNET_ITC_TRIGGER_PARAM_UNION; +pub type LPNET_ITC_TRIGGER_PARAM_UNION = *mut tagNET_ITC_TRIGGER_PARAM_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_SINGLE_TRIGGERCFG { + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwTriggerType: DWORD, + pub uTriggerParam: NET_ITC_TRIGGER_PARAM_UNION, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_SINGLE_TRIGGERCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4352usize, + concat!("Size of: ", stringify!(tagNET_ITC_SINGLE_TRIGGERCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_SINGLE_TRIGGERCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_TRIGGERCFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_TRIGGERCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTriggerType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_TRIGGERCFG), + "::", + stringify!(dwTriggerType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uTriggerParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_TRIGGERCFG), + "::", + stringify!(uTriggerParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4288usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SINGLE_TRIGGERCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_SINGLE_TRIGGERCFG = tagNET_ITC_SINGLE_TRIGGERCFG; +pub type LPNET_ITC_SINGLE_TRIGGERCFG = *mut tagNET_ITC_SINGLE_TRIGGERCFG; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_TRIGGERCFG { + pub dwSize: DWORD, + pub struTriggerParam: NET_ITC_SINGLE_TRIGGERCFG, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_TRIGGERCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4388usize, + concat!("Size of: ", stringify!(tagNET_ITC_TRIGGERCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_TRIGGERCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGERCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTriggerParam) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGERCFG), + "::", + stringify!(struTriggerParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4356usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGERCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_TRIGGERCFG = tagNET_ITC_TRIGGERCFG; +pub type LPNET_ITC_TRIGGERCFG = *mut tagNET_ITC_TRIGGERCFG; +pub const _ITC_VIOLATION_DETECT_TYPE__ITC_VIOLATION_POST: _ITC_VIOLATION_DETECT_TYPE_ = 1; +pub const _ITC_VIOLATION_DETECT_TYPE__ITC_VIOLATION_DRIVELINE: _ITC_VIOLATION_DETECT_TYPE_ = 2; +pub const _ITC_VIOLATION_DETECT_TYPE__ITC_VIOLATION_REVERSE: _ITC_VIOLATION_DETECT_TYPE_ = 4; +pub const _ITC_VIOLATION_DETECT_TYPE__ITC_VIOLATION_REDLIGHT: _ITC_VIOLATION_DETECT_TYPE_ = 8; +pub const _ITC_VIOLATION_DETECT_TYPE__ITC_VIOLATION_DIRECTION: _ITC_VIOLATION_DETECT_TYPE_ = 16; +pub const _ITC_VIOLATION_DETECT_TYPE__ITC_VIOLATION_INTERSECTION_CONGEST: + _ITC_VIOLATION_DETECT_TYPE_ = 32; +pub const _ITC_VIOLATION_DETECT_TYPE__ITC_VIOLATION_NONDRIVEWAY: _ITC_VIOLATION_DETECT_TYPE_ = 64; +pub const _ITC_VIOLATION_DETECT_TYPE__ITC_VIOLATION_CHANGELANE: _ITC_VIOLATION_DETECT_TYPE_ = 128; +pub const _ITC_VIOLATION_DETECT_TYPE__ITC_VIOLATION_BAN: _ITC_VIOLATION_DETECT_TYPE_ = 256; +pub const _ITC_VIOLATION_DETECT_TYPE__ITC_VIOLATION_INTERSECTION_PARK: _ITC_VIOLATION_DETECT_TYPE_ = + 512; +pub const _ITC_VIOLATION_DETECT_TYPE__ITC_VIOLATION_GREEN_PARK: _ITC_VIOLATION_DETECT_TYPE_ = 1024; +pub const _ITC_VIOLATION_DETECT_TYPE__ITC_VIOLATION_HIGH_SPEED: _ITC_VIOLATION_DETECT_TYPE_ = 2048; +pub const _ITC_VIOLATION_DETECT_TYPE__ITC_VIOLATION_LOW_SPEED: _ITC_VIOLATION_DETECT_TYPE_ = 4096; +pub const _ITC_VIOLATION_DETECT_TYPE__ITC_VIOLATION_EMERGENCY: _ITC_VIOLATION_DETECT_TYPE_ = 8192; +pub const _ITC_VIOLATION_DETECT_TYPE__ITC_VIOLATION_TURN_AROUND: _ITC_VIOLATION_DETECT_TYPE_ = + 32768; +pub const _ITC_VIOLATION_DETECT_TYPE__ITC_VIOLATION_CONGESTION: _ITC_VIOLATION_DETECT_TYPE_ = 65536; +pub type _ITC_VIOLATION_DETECT_TYPE_ = ::std::os::raw::c_uint; +pub use self::_ITC_VIOLATION_DETECT_TYPE_ as ITC_VIOLATION_DETECT_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_VIOLATION_DETECT_PARAM { + pub dwVioDetectType: DWORD, + pub byDriveLineSnapTimes: BYTE, + pub byReverseSnapTimes: BYTE, + pub wStayTime: WORD, + pub byNonDriveSnapTimes: BYTE, + pub byChangeLaneTimes: BYTE, + pub bybanTimes: BYTE, + pub byDriveLineSnapSen: BYTE, + pub wSnapPosFixPixel: WORD, + pub bySpeedTimes: BYTE, + pub byTurnAroundEnable: BYTE, + pub byThirdPlateRecogTime: BYTE, + pub byPostSnapTimes: BYTE, + pub byRes1: [BYTE; 18usize], + pub wStopLineDis: WORD, + pub byRes: [BYTE; 14usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_VIOLATION_DETECT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 52usize, + concat!("Size of: ", stringify!(tagNET_ITC_VIOLATION_DETECT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_VIOLATION_DETECT_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVioDetectType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIOLATION_DETECT_PARAM), + "::", + stringify!(dwVioDetectType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDriveLineSnapTimes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIOLATION_DETECT_PARAM), + "::", + stringify!(byDriveLineSnapTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReverseSnapTimes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIOLATION_DETECT_PARAM), + "::", + stringify!(byReverseSnapTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStayTime) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIOLATION_DETECT_PARAM), + "::", + stringify!(wStayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNonDriveSnapTimes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIOLATION_DETECT_PARAM), + "::", + stringify!(byNonDriveSnapTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChangeLaneTimes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIOLATION_DETECT_PARAM), + "::", + stringify!(byChangeLaneTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bybanTimes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIOLATION_DETECT_PARAM), + "::", + stringify!(bybanTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDriveLineSnapSen) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIOLATION_DETECT_PARAM), + "::", + stringify!(byDriveLineSnapSen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSnapPosFixPixel) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIOLATION_DETECT_PARAM), + "::", + stringify!(wSnapPosFixPixel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpeedTimes) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIOLATION_DETECT_PARAM), + "::", + stringify!(bySpeedTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTurnAroundEnable) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIOLATION_DETECT_PARAM), + "::", + stringify!(byTurnAroundEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byThirdPlateRecogTime) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIOLATION_DETECT_PARAM), + "::", + stringify!(byThirdPlateRecogTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPostSnapTimes) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIOLATION_DETECT_PARAM), + "::", + stringify!(byPostSnapTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIOLATION_DETECT_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStopLineDis) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIOLATION_DETECT_PARAM), + "::", + stringify!(wStopLineDis) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIOLATION_DETECT_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_VIOLATION_DETECT_PARAM = tagNET_ITC_VIOLATION_DETECT_PARAM; +pub type LPNET_ITC_VIOLATION_DETECT_PARAM = *mut tagNET_ITC_VIOLATION_DETECT_PARAM; +pub const _ITC_RELA_LANE_DIRECTION_TYPE__ITC_RELA_LANE_DIRECTION_UNKNOW: + _ITC_RELA_LANE_DIRECTION_TYPE_ = 0; +pub const _ITC_RELA_LANE_DIRECTION_TYPE__ITC_RELA_LANE_EAST_WEST: _ITC_RELA_LANE_DIRECTION_TYPE_ = + 1; +pub const _ITC_RELA_LANE_DIRECTION_TYPE__ITC_RELA_LANE_WEST_EAST: _ITC_RELA_LANE_DIRECTION_TYPE_ = + 2; +pub const _ITC_RELA_LANE_DIRECTION_TYPE__ITC_RELA_LANE_SOUTH_NORTH: _ITC_RELA_LANE_DIRECTION_TYPE_ = + 3; +pub const _ITC_RELA_LANE_DIRECTION_TYPE__ITC_RELA_LANE_NORTH_SOUTH: _ITC_RELA_LANE_DIRECTION_TYPE_ = + 4; +pub const _ITC_RELA_LANE_DIRECTION_TYPE__ITC_RELA_LANE_EASTSOUTH_WESTNORTH: + _ITC_RELA_LANE_DIRECTION_TYPE_ = 5; +pub const _ITC_RELA_LANE_DIRECTION_TYPE__ITC_RELA_LANE_WESTNORTH_EASTSOUTH: + _ITC_RELA_LANE_DIRECTION_TYPE_ = 6; +pub const _ITC_RELA_LANE_DIRECTION_TYPE__ITC_RELA_LANE_EASTNORTH_WESTSOUTH: + _ITC_RELA_LANE_DIRECTION_TYPE_ = 7; +pub const _ITC_RELA_LANE_DIRECTION_TYPE__ITC_RELA_LANE_WESTSOUTH_EASTNORTH: + _ITC_RELA_LANE_DIRECTION_TYPE_ = 8; +pub type _ITC_RELA_LANE_DIRECTION_TYPE_ = ::std::os::raw::c_uint; +pub use self::_ITC_RELA_LANE_DIRECTION_TYPE_ as ITC_RELA_LANE_DIRECTION_TYPE; +pub const _ITC_LANE_USEAGE_TYPE__ITC_LANE_USEAGE_UNKNOW: _ITC_LANE_USEAGE_TYPE_ = 0; +pub const _ITC_LANE_USEAGE_TYPE__ITC_LANE_CARRIAGEWAY: _ITC_LANE_USEAGE_TYPE_ = 1; +pub const _ITC_LANE_USEAGE_TYPE__ITC_LANE_BUS: _ITC_LANE_USEAGE_TYPE_ = 2; +pub const _ITC_LANE_USEAGE_TYPE__ITC_LANE_FAST: _ITC_LANE_USEAGE_TYPE_ = 3; +pub const _ITC_LANE_USEAGE_TYPE__ITC_LANE_SLOW: _ITC_LANE_USEAGE_TYPE_ = 4; +pub const _ITC_LANE_USEAGE_TYPE__ITC_LANE_MOTOR: _ITC_LANE_USEAGE_TYPE_ = 5; +pub const _ITC_LANE_USEAGE_TYPE__ITC_LANE_NONMOTOR: _ITC_LANE_USEAGE_TYPE_ = 6; +pub const _ITC_LANE_USEAGE_TYPE__ITC_LANE_REVERSE_LANE: _ITC_LANE_USEAGE_TYPE_ = 7; +pub const _ITC_LANE_USEAGE_TYPE__ITC_LANE_BAN_TRUCKS: _ITC_LANE_USEAGE_TYPE_ = 8; +pub const _ITC_LANE_USEAGE_TYPE__ITC_LANE_MIX: _ITC_LANE_USEAGE_TYPE_ = 9; +pub const _ITC_LANE_USEAGE_TYPE__ITC_LANE_EMERGENCY: _ITC_LANE_USEAGE_TYPE_ = 10; +pub const _ITC_LANE_USEAGE_TYPE__ITC_LANE_BAN_LEFT: _ITC_LANE_USEAGE_TYPE_ = 11; +pub const _ITC_LANE_USEAGE_TYPE__ITC_LANE_BAN_RIGHT: _ITC_LANE_USEAGE_TYPE_ = 12; +pub type _ITC_LANE_USEAGE_TYPE_ = ::std::os::raw::c_uint; +pub use self::_ITC_LANE_USEAGE_TYPE_ as ITC_LANE_USEAGE_TYPE; +pub const _ITC_LANE_DIRECTION_TYPE__ITC_LANE_DIRECTION_UNKNOW: _ITC_LANE_DIRECTION_TYPE_ = 0; +pub const _ITC_LANE_DIRECTION_TYPE__ITC_LANE_LEFT: _ITC_LANE_DIRECTION_TYPE_ = 1; +pub const _ITC_LANE_DIRECTION_TYPE__ITC_LANE_STRAIGHT: _ITC_LANE_DIRECTION_TYPE_ = 2; +pub const _ITC_LANE_DIRECTION_TYPE__ITC_LANE_LEFT_STRAIGHT: _ITC_LANE_DIRECTION_TYPE_ = 3; +pub const _ITC_LANE_DIRECTION_TYPE__ITC_LANE_RIGHT: _ITC_LANE_DIRECTION_TYPE_ = 4; +pub const _ITC_LANE_DIRECTION_TYPE__ITC_LANE_LEFT_RIGHT: _ITC_LANE_DIRECTION_TYPE_ = 5; +pub const _ITC_LANE_DIRECTION_TYPE__ITC_LANE_RIGHT_STRAIGHT: _ITC_LANE_DIRECTION_TYPE_ = 6; +pub const _ITC_LANE_DIRECTION_TYPE__ITC_LANE_LEFT_RIGHT_STRAIGHT: _ITC_LANE_DIRECTION_TYPE_ = 7; +pub const _ITC_LANE_DIRECTION_TYPE__ITC_LANE_LEFT_WAIT: _ITC_LANE_DIRECTION_TYPE_ = 9; +pub const _ITC_LANE_DIRECTION_TYPE__ITC_LANE_STRAIGHT_WAIT: _ITC_LANE_DIRECTION_TYPE_ = 10; +pub const _ITC_LANE_DIRECTION_TYPE__ITC_LANE_FORWARD: _ITC_LANE_DIRECTION_TYPE_ = 11; +pub const _ITC_LANE_DIRECTION_TYPE__ITC_LANE_BACKWARD: _ITC_LANE_DIRECTION_TYPE_ = 12; +pub const _ITC_LANE_DIRECTION_TYPE__ITC_LANE_BOTHWAY: _ITC_LANE_DIRECTION_TYPE_ = 13; +pub const _ITC_LANE_DIRECTION_TYPE__ITC_LANE_STRAIGHT_WAIT_RIGHT: _ITC_LANE_DIRECTION_TYPE_ = 14; +pub type _ITC_LANE_DIRECTION_TYPE_ = ::std::os::raw::c_uint; +pub use self::_ITC_LANE_DIRECTION_TYPE_ as ITC_LANE_DIRECTION_TYPE; +pub const _ITC_LANE_CAR_DRIVE_DIRECT__ITC_LANE_DRIVE_UNKNOW: _ITC_LANE_CAR_DRIVE_DIRECT_ = 0; +pub const _ITC_LANE_CAR_DRIVE_DIRECT__ITC_LANE_DRIVE_UP_TO_DOWN: _ITC_LANE_CAR_DRIVE_DIRECT_ = 1; +pub const _ITC_LANE_CAR_DRIVE_DIRECT__ITC_LANE_DRIVE_DOWN_TO_UP: _ITC_LANE_CAR_DRIVE_DIRECT_ = 2; +pub type _ITC_LANE_CAR_DRIVE_DIRECT_ = ::std::os::raw::c_uint; +pub use self::_ITC_LANE_CAR_DRIVE_DIRECT_ as ITC_LANE_CAR_DRIVE_DIRECT; +pub const _ITC_LINE_TYPE__ITC_LINT_UNKNOW: _ITC_LINE_TYPE_ = 0; +pub const _ITC_LINE_TYPE__ITC_LINE_WHITE: _ITC_LINE_TYPE_ = 1; +pub const _ITC_LINE_TYPE__ITC_LINE_STOP: _ITC_LINE_TYPE_ = 2; +pub const _ITC_LINE_TYPE__ITC_LINE_SINGLE_YELLOW: _ITC_LINE_TYPE_ = 3; +pub const _ITC_LINE_TYPE__ITC_LINE_DOUBLE_YELLOW: _ITC_LINE_TYPE_ = 4; +pub const _ITC_LINE_TYPE__ITC_LINE_GUARD_RAIL: _ITC_LINE_TYPE_ = 5; +pub const _ITC_LINE_TYPE__ITC_LINE_NO_CROSS: _ITC_LINE_TYPE_ = 6; +pub const _ITC_LINE_TYPE__ITC_LINE_DOTTED: _ITC_LINE_TYPE_ = 7; +pub type _ITC_LINE_TYPE_ = ::std::os::raw::c_uint; +pub use self::_ITC_LINE_TYPE_ as ITC_LINE_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_LANE_VIDEO_EPOLICE_PARAM { + pub byLaneNO: BYTE, + pub bySensitivity: BYTE, + pub byEnableRadar: BYTE, + pub byRelaLaneDirectionType: BYTE, + pub struLane: NET_ITC_LANE_LOGIC_PARAM, + pub struVioDetect: NET_ITC_VIOLATION_DETECT_PARAM, + pub struLine: NET_ITC_VIOLATION_DETECT_LINE, + pub struPlateRecog: NET_ITC_POLYGON, + pub byRecordEnable: BYTE, + pub byRecordType: BYTE, + pub byPreRecordTime: BYTE, + pub byRecordDelayTime: BYTE, + pub byRecordTimeOut: BYTE, + pub byCarSpeedLimit: BYTE, + pub byCarSignSpeed: BYTE, + pub bySnapPicPreRecord: BYTE, + pub struInterval: NET_ITC_INTERVAL_PARAM, + pub byRes: [BYTE; 36usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_LANE_VIDEO_EPOLICE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 632usize, + concat!("Size of: ", stringify!(tagNET_ITC_LANE_VIDEO_EPOLICE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_LANE_VIDEO_EPOLICE_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNO) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_VIDEO_EPOLICE_PARAM), + "::", + stringify!(byLaneNO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_VIDEO_EPOLICE_PARAM), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableRadar) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_VIDEO_EPOLICE_PARAM), + "::", + stringify!(byEnableRadar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelaLaneDirectionType) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_VIDEO_EPOLICE_PARAM), + "::", + stringify!(byRelaLaneDirectionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLane) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_VIDEO_EPOLICE_PARAM), + "::", + stringify!(struLane) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVioDetect) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_VIDEO_EPOLICE_PARAM), + "::", + stringify!(struVioDetect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLine) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_VIDEO_EPOLICE_PARAM), + "::", + stringify!(struLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 404usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_VIDEO_EPOLICE_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordEnable) as usize - ptr as usize }, + 568usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_VIDEO_EPOLICE_PARAM), + "::", + stringify!(byRecordEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordType) as usize - ptr as usize }, + 569usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_VIDEO_EPOLICE_PARAM), + "::", + stringify!(byRecordType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPreRecordTime) as usize - ptr as usize }, + 570usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_VIDEO_EPOLICE_PARAM), + "::", + stringify!(byPreRecordTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordDelayTime) as usize - ptr as usize }, + 571usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_VIDEO_EPOLICE_PARAM), + "::", + stringify!(byRecordDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordTimeOut) as usize - ptr as usize }, + 572usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_VIDEO_EPOLICE_PARAM), + "::", + stringify!(byRecordTimeOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCarSpeedLimit) as usize - ptr as usize }, + 573usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_VIDEO_EPOLICE_PARAM), + "::", + stringify!(byCarSpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCarSignSpeed) as usize - ptr as usize }, + 574usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_VIDEO_EPOLICE_PARAM), + "::", + stringify!(byCarSignSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnapPicPreRecord) as usize - ptr as usize }, + 575usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_VIDEO_EPOLICE_PARAM), + "::", + stringify!(bySnapPicPreRecord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInterval) as usize - ptr as usize }, + 576usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_VIDEO_EPOLICE_PARAM), + "::", + stringify!(struInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 596usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_LANE_VIDEO_EPOLICE_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_LANE_VIDEO_EPOLICE_PARAM = tagNET_ITC_LANE_VIDEO_EPOLICE_PARAM; +pub type LPNET_ITC_LANE_VIDEO_EPOLICE_PARAM = *mut tagNET_ITC_LANE_VIDEO_EPOLICE_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_VIDEO_EPOLICE_PARAM { + pub byEnable: BYTE, + pub byLaneNum: BYTE, + pub byLogicJudge: BYTE, + pub byRes1: BYTE, + pub struPlateRecog: NET_ITC_PLATE_RECOG_PARAM, + pub struTrafficLight: NET_ITC_TRAFFIC_LIGHT_PARAM, + pub struLaneParam: [NET_ITC_LANE_VIDEO_EPOLICE_PARAM; 6usize], + pub struLaneBoundaryLine: NET_ITC_LINE, + pub struLeftLine: NET_ITC_LINE, + pub struRightLine: NET_ITC_LINE, + pub struTopZebraLine: NET_ITC_LINE, + pub struBotZebraLine: NET_ITC_LINE, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_VIDEO_EPOLICE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4512usize, + concat!("Size of: ", stringify!(tagNET_ITC_VIDEO_EPOLICE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_VIDEO_EPOLICE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIDEO_EPOLICE_PARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNum) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIDEO_EPOLICE_PARAM), + "::", + stringify!(byLaneNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLogicJudge) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIDEO_EPOLICE_PARAM), + "::", + stringify!(byLogicJudge) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIDEO_EPOLICE_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecog) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIDEO_EPOLICE_PARAM), + "::", + stringify!(struPlateRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTrafficLight) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIDEO_EPOLICE_PARAM), + "::", + stringify!(struTrafficLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneParam) as usize - ptr as usize }, + 568usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIDEO_EPOLICE_PARAM), + "::", + stringify!(struLaneParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneBoundaryLine) as usize - ptr as usize }, + 4360usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIDEO_EPOLICE_PARAM), + "::", + stringify!(struLaneBoundaryLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLeftLine) as usize - ptr as usize }, + 4384usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIDEO_EPOLICE_PARAM), + "::", + stringify!(struLeftLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRightLine) as usize - ptr as usize }, + 4408usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIDEO_EPOLICE_PARAM), + "::", + stringify!(struRightLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTopZebraLine) as usize - ptr as usize }, + 4432usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIDEO_EPOLICE_PARAM), + "::", + stringify!(struTopZebraLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBotZebraLine) as usize - ptr as usize }, + 4456usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIDEO_EPOLICE_PARAM), + "::", + stringify!(struBotZebraLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4480usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIDEO_EPOLICE_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_VIDEO_EPOLICE_PARAM = tagNET_ITC_VIDEO_EPOLICE_PARAM; +pub type LPNET_ITC_VIDEO_EPOLICE_PARAM = *mut tagNET_ITC_VIDEO_EPOLICE_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_ITC_VIDEO_TRIGGER_PARAM_UNION { + pub uLen: [DWORD; 1150usize], + pub struVideoEP: NET_ITC_VIDEO_EPOLICE_PARAM, +} +#[test] +fn bindgen_test_layout_tagNET_ITC_VIDEO_TRIGGER_PARAM_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4600usize, + concat!( + "Size of: ", + stringify!(tagNET_ITC_VIDEO_TRIGGER_PARAM_UNION) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_VIDEO_TRIGGER_PARAM_UNION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIDEO_TRIGGER_PARAM_UNION), + "::", + stringify!(uLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVideoEP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIDEO_TRIGGER_PARAM_UNION), + "::", + stringify!(struVideoEP) + ) + ); +} +pub type NET_ITC_VIDEO_TRIGGER_PARAM_UNION = tagNET_ITC_VIDEO_TRIGGER_PARAM_UNION; +pub type LPNET_ITC_VIDEO_TRIGGER_PARAM_UNION = *mut tagNET_ITC_VIDEO_TRIGGER_PARAM_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_VIDEO_TRIGGER_PARAM { + pub dwSize: DWORD, + pub dwMode: DWORD, + pub uVideoTrigger: NET_ITC_VIDEO_TRIGGER_PARAM_UNION, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_VIDEO_TRIGGER_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4640usize, + concat!("Size of: ", stringify!(tagNET_ITC_VIDEO_TRIGGER_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_VIDEO_TRIGGER_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIDEO_TRIGGER_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIDEO_TRIGGER_PARAM), + "::", + stringify!(dwMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uVideoTrigger) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIDEO_TRIGGER_PARAM), + "::", + stringify!(uVideoTrigger) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4608usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIDEO_TRIGGER_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_VIDEO_TRIGGER_PARAM = tagNET_ITC_VIDEO_TRIGGER_PARAM; +pub type LPNET_ITC_VIDEO_TRIGGER_PARAM = *mut tagNET_ITC_VIDEO_TRIGGER_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_STATUS_DETECTCFG { + pub dwSize: DWORD, + pub byEnableTrigIODetect: BYTE, + pub byEnableFlashOutDetect: BYTE, + pub byEnableRS485Detect: BYTE, + pub byEnableTrafficLightDetect: BYTE, + pub byRes: [BYTE; 28usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STATUS_DETECTCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_STATUS_DETECTCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_STATUS_DETECTCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STATUS_DETECTCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableTrigIODetect) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STATUS_DETECTCFG), + "::", + stringify!(byEnableTrigIODetect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableFlashOutDetect) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STATUS_DETECTCFG), + "::", + stringify!(byEnableFlashOutDetect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableRS485Detect) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STATUS_DETECTCFG), + "::", + stringify!(byEnableRS485Detect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableTrafficLightDetect) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STATUS_DETECTCFG), + "::", + stringify!(byEnableTrafficLightDetect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STATUS_DETECTCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_STATUS_DETECTCFG = tagNET_DVR_STATUS_DETECTCFG; +pub type LPNET_DVR_STATUS_DETECTCFG = *mut tagNET_DVR_STATUS_DETECTCFG; +pub const _ITC_STATUS_DETECT_TYPE__ITC_STATUS_DETECT_NULL: _ITC_STATUS_DETECT_TYPE_ = 0; +pub const _ITC_STATUS_DETECT_TYPE__ITC_STATUS_DETECT_TRIGGERIO: _ITC_STATUS_DETECT_TYPE_ = 1; +pub const _ITC_STATUS_DETECT_TYPE__ITC_STATUS_DETECT_FLASHOUT: _ITC_STATUS_DETECT_TYPE_ = 2; +pub const _ITC_STATUS_DETECT_TYPE__ITC_STATUS_DETECT_RS485: _ITC_STATUS_DETECT_TYPE_ = 3; +pub const _ITC_STATUS_DETECT_TYPE__ITC_STATUS_DETECT_TRIGGERTYPE: _ITC_STATUS_DETECT_TYPE_ = 4; +pub const _ITC_STATUS_DETECT_TYPE__ITC_STATUS_DETECT_TRAFFICLIGHT_COLOR: _ITC_STATUS_DETECT_TYPE_ = + 5; +pub const _ITC_STATUS_DETECT_TYPE__ITC_STATUS_DETECT_TRAFFICLIGHT_TURN: _ITC_STATUS_DETECT_TYPE_ = + 6; +pub type _ITC_STATUS_DETECT_TYPE_ = ::std::os::raw::c_uint; +pub use self::_ITC_STATUS_DETECT_TYPE_ as ITC_STATUS_DETECT_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_TRIGGERIO_INFO { + pub byTriggerIOIndex: [BYTE; 8usize], + pub byRes: [BYTE; 40usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_TRIGGERIO_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_ITC_TRIGGERIO_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_ITC_TRIGGERIO_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTriggerIOIndex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGERIO_INFO), + "::", + stringify!(byTriggerIOIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGERIO_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_TRIGGERIO_INFO = tagNET_ITC_TRIGGERIO_INFO; +pub type LPNET_ITC_TRIGGERIO_INFO = *mut tagNET_ITC_TRIGGERIO_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_FLASHOUT_INFO { + pub byFlashOutIndex: [BYTE; 8usize], + pub byRes: [BYTE; 40usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_FLASHOUT_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_ITC_FLASHOUT_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_ITC_FLASHOUT_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlashOutIndex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FLASHOUT_INFO), + "::", + stringify!(byFlashOutIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FLASHOUT_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_FLASHOUT_INFO = tagNET_ITC_FLASHOUT_INFO; +pub type LPNET_ITC_FLASHOUT_INFO = *mut tagNET_ITC_FLASHOUT_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_SERIAL_CHECKINFO { + pub bySerialIndex: [BYTE; 8usize], + pub byRes: [BYTE; 40usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_SERIAL_CHECKINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_ITC_SERIAL_CHECKINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_ITC_SERIAL_CHECKINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySerialIndex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SERIAL_CHECKINFO), + "::", + stringify!(bySerialIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_SERIAL_CHECKINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_SERIAL_CHECKINFO = tagNET_ITC_SERIAL_CHECKINFO; +pub type LPNET_ITC_SERIAL_CHECKINFO = *mut tagNET_ITC_SERIAL_CHECKINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_TRIGGERTYPE_INFO { + pub byTrigTypeIndex: BYTE, + pub byRes: [BYTE; 47usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_TRIGGERTYPE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_ITC_TRIGGERTYPE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_ITC_TRIGGERTYPE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrigTypeIndex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGERTYPE_INFO), + "::", + stringify!(byTrigTypeIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRIGGERTYPE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_TRIGGERTYPE_INFO = tagNET_ITC_TRIGGERTYPE_INFO; +pub type LPNET_ITC_TRIGGERTYPE_INFO = *mut tagNET_ITC_TRIGGERTYPE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_TRAFFIC_LIGHT_COLOR { + pub byLeftLight: BYTE, + pub byRightLight: BYTE, + pub byStraightLight: BYTE, + pub byRes: [BYTE; 45usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_TRAFFIC_LIGHT_COLOR() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_ITC_TRAFFIC_LIGHT_COLOR)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_ITC_TRAFFIC_LIGHT_COLOR)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLeftLight) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRAFFIC_LIGHT_COLOR), + "::", + stringify!(byLeftLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRightLight) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRAFFIC_LIGHT_COLOR), + "::", + stringify!(byRightLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStraightLight) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRAFFIC_LIGHT_COLOR), + "::", + stringify!(byStraightLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRAFFIC_LIGHT_COLOR), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_TRAFFIC_LIGHT_COLOR = tagNET_ITC_TRAFFIC_LIGHT_COLOR; +pub type LPNET_ITC_TRAFFIC_LIGHT_COLOR = *mut tagNET_ITC_TRAFFIC_LIGHT_COLOR; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_TRAFFIC_LIGHT_TURN { + pub byLightType: [BYTE; 6usize], + pub byRes: [BYTE; 42usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_TRAFFIC_LIGHT_TURN() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_ITC_TRAFFIC_LIGHT_TURN)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_ITC_TRAFFIC_LIGHT_TURN)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLightType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRAFFIC_LIGHT_TURN), + "::", + stringify!(byLightType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_TRAFFIC_LIGHT_TURN), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_TRAFFIC_LIGHT_TURN = tagNET_ITC_TRAFFIC_LIGHT_TURN; +pub type LPNET_ITC_TRAFFIC_LIGHT_TURN = *mut tagNET_ITC_TRAFFIC_LIGHT_TURN; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_ITC_STATUS_UNION { + pub uLen: [BYTE; 48usize], + pub struTrigIO: NET_ITC_TRIGGERIO_INFO, + pub struFlashOut: NET_ITC_FLASHOUT_INFO, + pub struSerial: NET_ITC_SERIAL_CHECKINFO, + pub struTrigType: NET_ITC_TRIGGERTYPE_INFO, + pub struTrafficLightColor: NET_ITC_TRAFFIC_LIGHT_COLOR, + pub struTrafficLightTurn: NET_ITC_TRAFFIC_LIGHT_TURN, +} +#[test] +fn bindgen_test_layout_tagNET_ITC_STATUS_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_ITC_STATUS_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_ITC_STATUS_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_STATUS_UNION), + "::", + stringify!(uLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTrigIO) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_STATUS_UNION), + "::", + stringify!(struTrigIO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFlashOut) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_STATUS_UNION), + "::", + stringify!(struFlashOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSerial) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_STATUS_UNION), + "::", + stringify!(struSerial) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTrigType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_STATUS_UNION), + "::", + stringify!(struTrigType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTrafficLightColor) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_STATUS_UNION), + "::", + stringify!(struTrafficLightColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTrafficLightTurn) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_STATUS_UNION), + "::", + stringify!(struTrafficLightTurn) + ) + ); +} +pub type NET_ITC_STATUS_UNION = tagNET_ITC_STATUS_UNION; +pub type LPNET_ITC_STATUS_UNION = *mut tagNET_ITC_STATUS_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_STATUS_DETECT_RESULT { + pub dwStatusType: ITC_STATUS_DETECT_TYPE, + pub uStatusParam: NET_ITC_STATUS_UNION, + pub dwHoldTime: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_STATUS_DETECT_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(tagNET_ITC_STATUS_DETECT_RESULT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_STATUS_DETECT_RESULT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStatusType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_STATUS_DETECT_RESULT), + "::", + stringify!(dwStatusType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uStatusParam) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_STATUS_DETECT_RESULT), + "::", + stringify!(uStatusParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHoldTime) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_STATUS_DETECT_RESULT), + "::", + stringify!(dwHoldTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_STATUS_DETECT_RESULT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_STATUS_DETECT_RESULT = tagNET_ITC_STATUS_DETECT_RESULT; +pub type LPNET_ITC_STATUS_DETECT_RESULT = *mut tagNET_ITC_STATUS_DETECT_RESULT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SETUPALARM_PARAM { + pub dwSize: DWORD, + pub byLevel: BYTE, + pub byAlarmInfoType: BYTE, + pub byRetAlarmTypeV40: BYTE, + pub byRetDevInfoVersion: BYTE, + pub byRetVQDAlarmType: BYTE, + pub byFaceAlarmDetection: BYTE, + pub bySupport: BYTE, + pub byBrokenNetHttp: BYTE, + pub wTaskNo: WORD, + pub byDeployType: BYTE, + pub bySubScription: BYTE, + pub byRes1: [BYTE; 2usize], + pub byAlarmTypeURL: BYTE, + pub byCustomCtrl: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SETUPALARM_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_SETUPALARM_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SETUPALARM_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLevel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM), + "::", + stringify!(byLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInfoType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM), + "::", + stringify!(byAlarmInfoType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRetAlarmTypeV40) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM), + "::", + stringify!(byRetAlarmTypeV40) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRetDevInfoVersion) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM), + "::", + stringify!(byRetDevInfoVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRetVQDAlarmType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM), + "::", + stringify!(byRetVQDAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaceAlarmDetection) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM), + "::", + stringify!(byFaceAlarmDetection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupport) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM), + "::", + stringify!(bySupport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrokenNetHttp) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM), + "::", + stringify!(byBrokenNetHttp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTaskNo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM), + "::", + stringify!(wTaskNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeployType) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM), + "::", + stringify!(byDeployType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubScription) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM), + "::", + stringify!(bySubScription) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmTypeURL) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM), + "::", + stringify!(byAlarmTypeURL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCustomCtrl) as usize - ptr as usize }, + 19usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM), + "::", + stringify!(byCustomCtrl) + ) + ); +} +pub type NET_DVR_SETUPALARM_PARAM = tagNET_DVR_SETUPALARM_PARAM; +pub type LPNET_DVR_SETUPALARM_PARAM = *mut tagNET_DVR_SETUPALARM_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SETUPALARM_PARAM_V50 { + pub dwSize: DWORD, + pub byLevel: BYTE, + pub byAlarmInfoType: BYTE, + pub byRetAlarmTypeV40: BYTE, + pub byRetDevInfoVersion: BYTE, + pub byRetVQDAlarmType: BYTE, + pub byFaceAlarmDetection: BYTE, + pub bySupport: BYTE, + pub byBrokenNetHttp: BYTE, + pub wTaskNo: WORD, + pub byDeployType: BYTE, + pub bySubScription: BYTE, + pub byBrokenNetHttpV60: BYTE, + pub byRes1: BYTE, + pub byAlarmTypeURL: BYTE, + pub byCustomCtrl: BYTE, + pub byRes4: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SETUPALARM_PARAM_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!("Size of: ", stringify!(tagNET_DVR_SETUPALARM_PARAM_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SETUPALARM_PARAM_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLevel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM_V50), + "::", + stringify!(byLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInfoType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM_V50), + "::", + stringify!(byAlarmInfoType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRetAlarmTypeV40) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM_V50), + "::", + stringify!(byRetAlarmTypeV40) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRetDevInfoVersion) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM_V50), + "::", + stringify!(byRetDevInfoVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRetVQDAlarmType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM_V50), + "::", + stringify!(byRetVQDAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaceAlarmDetection) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM_V50), + "::", + stringify!(byFaceAlarmDetection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupport) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM_V50), + "::", + stringify!(bySupport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrokenNetHttp) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM_V50), + "::", + stringify!(byBrokenNetHttp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTaskNo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM_V50), + "::", + stringify!(wTaskNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeployType) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM_V50), + "::", + stringify!(byDeployType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubScription) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM_V50), + "::", + stringify!(bySubScription) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrokenNetHttpV60) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM_V50), + "::", + stringify!(byBrokenNetHttpV60) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmTypeURL) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM_V50), + "::", + stringify!(byAlarmTypeURL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCustomCtrl) as usize - ptr as usize }, + 19usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM_V50), + "::", + stringify!(byCustomCtrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes4) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUPALARM_PARAM_V50), + "::", + stringify!(byRes4) + ) + ); +} +pub type NET_DVR_SETUPALARM_PARAM_V50 = tagNET_DVR_SETUPALARM_PARAM_V50; +pub type LPNET_DVR_SETUPALARM_PARAM_V50 = *mut tagNET_DVR_SETUPALARM_PARAM_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_VIDEO_TRIGGER_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub dwTriggerMode: DWORD, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_VIDEO_TRIGGER_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28usize, + concat!("Size of: ", stringify!(tagNET_ITC_VIDEO_TRIGGER_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_VIDEO_TRIGGER_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIDEO_TRIGGER_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIDEO_TRIGGER_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTriggerMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIDEO_TRIGGER_COND), + "::", + stringify!(dwTriggerMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_VIDEO_TRIGGER_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_VIDEO_TRIGGER_COND = tagNET_ITC_VIDEO_TRIGGER_COND; +pub type LPNET_ITC_VIDEO_TRIGGER_COND = *mut tagNET_ITC_VIDEO_TRIGGER_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_FTP_TYPE_COND { + pub dwChannel: DWORD, + pub byWorkMode: BYTE, + pub byRes: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_FTP_TYPE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_ITC_FTP_TYPE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_FTP_TYPE_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_TYPE_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_TYPE_COND), + "::", + stringify!(byWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_TYPE_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITC_FTP_TYPE_COND = tagNET_ITC_FTP_TYPE_COND; +pub type LPNET_ITC_FTP_TYPE_COND = *mut tagNET_ITC_FTP_TYPE_COND; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_ITC_FTP_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byAddressType: BYTE, + pub wFTPPort: WORD, + pub unionServer: tagNET_ITC_FTP_CFG__bindgen_ty_1, + pub szUserName: [BYTE; 32usize], + pub szPassWORD: [BYTE; 16usize], + pub byRes4: BYTE, + pub byDirLevel: BYTE, + pub byIsFilterCarPic: BYTE, + pub byUploadDataType: BYTE, + pub struPicNameRule: NET_DVR_PICTURE_NAME, + pub byTopDirMode: BYTE, + pub bySubDirMode: BYTE, + pub byThreeDirMode: BYTE, + pub byFourDirMode: BYTE, + pub szPicNameCustom: [BYTE; 32usize], + pub szTopCustomDir: [BYTE; 32usize], + pub szSubCustomDir: [BYTE; 32usize], + pub szThreeCustomDir: [BYTE; 32usize], + pub szFourCustomDir: [BYTE; 32usize], + pub byRes3: [BYTE; 900usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_ITC_FTP_CFG__bindgen_ty_1 { + pub struDomain: tagNET_ITC_FTP_CFG__bindgen_ty_1__bindgen_ty_1, + pub struAddrIP: tagNET_ITC_FTP_CFG__bindgen_ty_1__bindgen_ty_2, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_FTP_CFG__bindgen_ty_1__bindgen_ty_1 { + pub szDomain: [BYTE; 64usize], + pub byRes1: [BYTE; 80usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITC_FTP_CFG__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!( + "Size of: ", + stringify!(tagNET_ITC_FTP_CFG__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_FTP_CFG__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDomain) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(szDomain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes1) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITC_FTP_CFG__bindgen_ty_1__bindgen_ty_2 { + pub struIp: NET_DVR_IPADDR, +} +#[test] +fn bindgen_test_layout_tagNET_ITC_FTP_CFG__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!( + "Size of: ", + stringify!(tagNET_ITC_FTP_CFG__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_FTP_CFG__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIp) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(struIp) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_ITC_FTP_CFG__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!("Size of: ", stringify!(tagNET_ITC_FTP_CFG__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITC_FTP_CFG__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDomain) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG__bindgen_ty_1), + "::", + stringify!(struDomain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAddrIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG__bindgen_ty_1), + "::", + stringify!(struAddrIP) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_ITC_FTP_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1284usize, + concat!("Size of: ", stringify!(tagNET_ITC_FTP_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITC_FTP_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddressType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG), + "::", + stringify!(byAddressType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFTPPort) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG), + "::", + stringify!(wFTPPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).unionServer) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG), + "::", + stringify!(unionServer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szUserName) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG), + "::", + stringify!(szUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szPassWORD) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG), + "::", + stringify!(szPassWORD) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes4) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG), + "::", + stringify!(byRes4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDirLevel) as usize - ptr as usize }, + 201usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG), + "::", + stringify!(byDirLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsFilterCarPic) as usize - ptr as usize }, + 202usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG), + "::", + stringify!(byIsFilterCarPic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUploadDataType) as usize - ptr as usize }, + 203usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG), + "::", + stringify!(byUploadDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPicNameRule) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG), + "::", + stringify!(struPicNameRule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTopDirMode) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG), + "::", + stringify!(byTopDirMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubDirMode) as usize - ptr as usize }, + 221usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG), + "::", + stringify!(bySubDirMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byThreeDirMode) as usize - ptr as usize }, + 222usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG), + "::", + stringify!(byThreeDirMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFourDirMode) as usize - ptr as usize }, + 223usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG), + "::", + stringify!(byFourDirMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szPicNameCustom) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG), + "::", + stringify!(szPicNameCustom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szTopCustomDir) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG), + "::", + stringify!(szTopCustomDir) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szSubCustomDir) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG), + "::", + stringify!(szSubCustomDir) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szThreeCustomDir) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG), + "::", + stringify!(szThreeCustomDir) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szFourCustomDir) as usize - ptr as usize }, + 352usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG), + "::", + stringify!(szFourCustomDir) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 384usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITC_FTP_CFG), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_ITC_FTP_CFG = tagNET_ITC_FTP_CFG; +pub type LPNET_ITC_FTP_CFG = *mut tagNET_ITC_FTP_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LATITUDE_PARAM { + pub byDegree: BYTE, + pub byMinute: BYTE, + pub bySec: BYTE, + pub byRes: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LATITUDE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(tagNET_DVR_LATITUDE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LATITUDE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDegree) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LATITUDE_PARAM), + "::", + stringify!(byDegree) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMinute) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LATITUDE_PARAM), + "::", + stringify!(byMinute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySec) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LATITUDE_PARAM), + "::", + stringify!(bySec) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LATITUDE_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LATITUDE_PARAM = tagNET_DVR_LATITUDE_PARAM; +pub type LPNET_DVR_LATITUDE_PARAM = *mut tagNET_DVR_LATITUDE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LONGITUDE_PARAM { + pub byDegree: BYTE, + pub byMinute: BYTE, + pub bySec: BYTE, + pub byRes: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LONGITUDE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(tagNET_DVR_LONGITUDE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LONGITUDE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDegree) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LONGITUDE_PARAM), + "::", + stringify!(byDegree) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMinute) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LONGITUDE_PARAM), + "::", + stringify!(byMinute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySec) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LONGITUDE_PARAM), + "::", + stringify!(bySec) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LONGITUDE_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LONGITUDE_PARAM = tagNET_DVR_LONGITUDE_PARAM; +pub type LPNET_DVR_LONGITUDE_PARAM = *mut tagNET_DVR_LONGITUDE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GPS_DATACFG { + pub dwSize: DWORD, + pub byGpsDataMode: BYTE, + pub byLongitudeType: BYTE, + pub byLatitudeType: BYTE, + pub byRes: BYTE, + pub struLatitude: NET_DVR_LATITUDE_PARAM, + pub struLongitude: NET_DVR_LONGITUDE_PARAM, + pub byRes1: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GPS_DATACFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!("Size of: ", stringify!(tagNET_DVR_GPS_DATACFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GPS_DATACFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPS_DATACFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGpsDataMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPS_DATACFG), + "::", + stringify!(byGpsDataMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLongitudeType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPS_DATACFG), + "::", + stringify!(byLongitudeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLatitudeType) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPS_DATACFG), + "::", + stringify!(byLatitudeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPS_DATACFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLatitude) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPS_DATACFG), + "::", + stringify!(struLatitude) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLongitude) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPS_DATACFG), + "::", + stringify!(struLongitude) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPS_DATACFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_GPS_DATACFG = tagNET_DVR_GPS_DATACFG; +pub type LPNET_DVR_GPS_DATACFG = *mut tagNET_DVR_GPS_DATACFG; +pub const _VCA_DATABASE_TYPE__DATABASE_NULL: _VCA_DATABASE_TYPE_ = 0; +pub const _VCA_DATABASE_TYPE__DATABASE_SNAP: _VCA_DATABASE_TYPE_ = 1; +pub const _VCA_DATABASE_TYPE__DATABASE_FACE: _VCA_DATABASE_TYPE_ = 2; +pub type _VCA_DATABASE_TYPE_ = ::std::os::raw::c_uint; +pub use self::_VCA_DATABASE_TYPE_ as VCA_DATABASE_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_DATABASE_PARAM { + pub dwSize: DWORD, + pub dwDataBaseID: DWORD, + pub dwDataBaseType: DWORD, + pub byDataBaseName: [BYTE; 32usize], + pub byAttribute: [BYTE; 64usize], + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_DATABASE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_VCA_DATABASE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_DATABASE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DATABASE_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataBaseID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DATABASE_PARAM), + "::", + stringify!(dwDataBaseID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataBaseType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DATABASE_PARAM), + "::", + stringify!(dwDataBaseType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataBaseName) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DATABASE_PARAM), + "::", + stringify!(byDataBaseName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAttribute) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DATABASE_PARAM), + "::", + stringify!(byAttribute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DATABASE_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_DATABASE_PARAM = tagNET_VCA_DATABASE_PARAM; +pub type LPNET_VCA_DATABASE_PARAM = *mut tagNET_VCA_DATABASE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_FIND_DATABASE_COND { + pub dwDataBaseType: DWORD, + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_FIND_DATABASE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_VCA_FIND_DATABASE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_FIND_DATABASE_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataBaseType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_DATABASE_COND), + "::", + stringify!(dwDataBaseType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_DATABASE_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_FIND_DATABASE_COND = tagNET_VCA_FIND_DATABASE_COND; +pub type LPNET_VCA_FIND_DATABASE_COND = *mut tagNET_VCA_FIND_DATABASE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_DELETE_DATABASE_COND { + pub dwSize: DWORD, + pub dwDataBaseType: DWORD, + pub dwDataBaseID: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_DELETE_DATABASE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_VCA_DELETE_DATABASE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_DELETE_DATABASE_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DELETE_DATABASE_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataBaseType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DELETE_DATABASE_COND), + "::", + stringify!(dwDataBaseType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataBaseID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DELETE_DATABASE_COND), + "::", + stringify!(dwDataBaseID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DELETE_DATABASE_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_DELETE_DATABASE_COND = tagNET_VCA_DELETE_DATABASE_COND; +pub type LPNET_VCA_DELETE_DATABASE_COND = *mut tagNET_VCA_DELETE_DATABASE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_INQUIRE_SNAPDB_COND { + pub dwChannel: DWORD, + pub struStartTime: NET_DVR_TIME, + pub struStopTime: NET_DVR_TIME, + pub bySex: BYTE, + pub byRes1: [BYTE; 3usize], + pub byStartBirthDate: [BYTE; 10usize], + pub byEndBirthDate: [BYTE; 10usize], + pub byAttribute1: [BYTE; 32usize], + pub byAttribute2: [BYTE; 32usize], + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_INQUIRE_SNAPDB_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 152usize, + concat!("Size of: ", stringify!(tagNET_VCA_INQUIRE_SNAPDB_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_INQUIRE_SNAPDB_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_SNAPDB_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_SNAPDB_COND), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_SNAPDB_COND), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySex) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_SNAPDB_COND), + "::", + stringify!(bySex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 53usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_SNAPDB_COND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartBirthDate) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_SNAPDB_COND), + "::", + stringify!(byStartBirthDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEndBirthDate) as usize - ptr as usize }, + 66usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_SNAPDB_COND), + "::", + stringify!(byEndBirthDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAttribute1) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_SNAPDB_COND), + "::", + stringify!(byAttribute1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAttribute2) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_SNAPDB_COND), + "::", + stringify!(byAttribute2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_SNAPDB_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_INQUIRE_SNAPDB_COND = tagNET_VCA_INQUIRE_SNAPDB_COND; +pub type LPNET_VCA_INQUIRE_SNAPDB_COND = *mut tagNET_VCA_INQUIRE_SNAPDB_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_INQUIRE_SNAPRECORD_RESULT { + pub dwSize: DWORD, + pub dwDataBaseID: DWORD, + pub dwRecordID: DWORD, + pub struSnapTime: NET_DVR_TIME, + pub bySex: BYTE, + pub byRes1: [BYTE; 3usize], + pub byStartBirthDate: [BYTE; 10usize], + pub byEndBirthDate: [BYTE; 10usize], + pub byAttribute1: [BYTE; 32usize], + pub byAttribute2: [BYTE; 32usize], + pub dwFacePicID: DWORD, + pub dwFacePicLen: DWORD, + pub byRes: [BYTE; 80usize], + pub pFacePic: *mut BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_INQUIRE_SNAPRECORD_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 224usize, + concat!( + "Size of: ", + stringify!(tagNET_VCA_INQUIRE_SNAPRECORD_RESULT) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_VCA_INQUIRE_SNAPRECORD_RESULT) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_SNAPRECORD_RESULT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataBaseID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_SNAPRECORD_RESULT), + "::", + stringify!(dwDataBaseID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_SNAPRECORD_RESULT), + "::", + stringify!(dwRecordID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSnapTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_SNAPRECORD_RESULT), + "::", + stringify!(struSnapTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySex) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_SNAPRECORD_RESULT), + "::", + stringify!(bySex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_SNAPRECORD_RESULT), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartBirthDate) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_SNAPRECORD_RESULT), + "::", + stringify!(byStartBirthDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEndBirthDate) as usize - ptr as usize }, + 50usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_SNAPRECORD_RESULT), + "::", + stringify!(byEndBirthDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAttribute1) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_SNAPRECORD_RESULT), + "::", + stringify!(byAttribute1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAttribute2) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_SNAPRECORD_RESULT), + "::", + stringify!(byAttribute2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFacePicID) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_SNAPRECORD_RESULT), + "::", + stringify!(dwFacePicID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFacePicLen) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_SNAPRECORD_RESULT), + "::", + stringify!(dwFacePicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_SNAPRECORD_RESULT), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pFacePic) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_SNAPRECORD_RESULT), + "::", + stringify!(pFacePic) + ) + ); +} +pub type NET_VCA_INQUIRE_SNAPRECORD_RESULT = tagNET_VCA_INQUIRE_SNAPRECORD_RESULT; +pub type LPNET_VCA_INQUIRE_SNAPRECORD_RESULT = *mut tagNET_VCA_INQUIRE_SNAPRECORD_RESULT; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_VCA_DELETE_SNAPRECORD_COND_UNION { + pub struAttribute: NET_VCA_INQUIRE_SNAPDB_COND, + pub dwRecordID: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_DELETE_SNAPRECORD_COND_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 152usize, + concat!( + "Size of: ", + stringify!(tagNET_VCA_DELETE_SNAPRECORD_COND_UNION) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_VCA_DELETE_SNAPRECORD_COND_UNION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAttribute) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DELETE_SNAPRECORD_COND_UNION), + "::", + stringify!(struAttribute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DELETE_SNAPRECORD_COND_UNION), + "::", + stringify!(dwRecordID) + ) + ); +} +pub type NET_VCA_DELETE_SNAPRECORD_COND_UNION = tagNET_VCA_DELETE_SNAPRECORD_COND_UNION; +pub type LPNET_VCA_DELETE_SNAPRECORD_COND_UNION = *mut tagNET_VCA_DELETE_SNAPRECORD_COND_UNION; +pub const _VCA_DELETE_RECORD_TYPE__DELETE_RECORD_SINGLE: _VCA_DELETE_RECORD_TYPE_ = 0; +pub const _VCA_DELETE_RECORD_TYPE__DELETE_RECORD_BATCH: _VCA_DELETE_RECORD_TYPE_ = 1; +pub type _VCA_DELETE_RECORD_TYPE_ = ::std::os::raw::c_uint; +pub use self::_VCA_DELETE_RECORD_TYPE_ as VCA_DELETE_RECORD_TYPE; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_VCA_DELETE_SNAPRECORD_COND { + pub dwDeleteType: VCA_DELETE_RECORD_TYPE, + pub uDeleteCond: NET_VCA_DELETE_SNAPRECORD_COND_UNION, + pub byRes: [BYTE; 40usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_DELETE_SNAPRECORD_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 196usize, + concat!("Size of: ", stringify!(tagNET_VCA_DELETE_SNAPRECORD_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_VCA_DELETE_SNAPRECORD_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeleteType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DELETE_SNAPRECORD_COND), + "::", + stringify!(dwDeleteType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uDeleteCond) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DELETE_SNAPRECORD_COND), + "::", + stringify!(uDeleteCond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DELETE_SNAPRECORD_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_DELETE_SNAPRECORD_COND = tagNET_VCA_DELETE_SNAPRECORD_COND; +pub type LPNET_VCA_DELETE_SNAPRECORD_COND = *mut tagNET_VCA_DELETE_SNAPRECORD_COND; +pub const _VCA_SEARCH_DATABASE_TYPE__VCA_NORMAL_SEARCH_DATABASE: _VCA_SEARCH_DATABASE_TYPE_ = 0; +pub const _VCA_SEARCH_DATABASE_TYPE__VCA_ADVANCE_SEARCH_DATABASE: _VCA_SEARCH_DATABASE_TYPE_ = 1; +pub type _VCA_SEARCH_DATABASE_TYPE_ = ::std::os::raw::c_uint; +pub use self::_VCA_SEARCH_DATABASE_TYPE_ as VCA_SEARCH_DATABASE_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_ADVANCE_SEARCH_DATABASE_COND { + pub dwDataBaseType: DWORD, + pub dwDataBaseID: DWORD, + pub dwFacePicID: DWORD, + pub byRes: [BYTE; 36usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_ADVANCE_SEARCH_DATABASE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!( + "Size of: ", + stringify!(tagNET_VCA_ADVANCE_SEARCH_DATABASE_COND) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_VCA_ADVANCE_SEARCH_DATABASE_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataBaseType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ADVANCE_SEARCH_DATABASE_COND), + "::", + stringify!(dwDataBaseType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataBaseID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ADVANCE_SEARCH_DATABASE_COND), + "::", + stringify!(dwDataBaseID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFacePicID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ADVANCE_SEARCH_DATABASE_COND), + "::", + stringify!(dwFacePicID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_ADVANCE_SEARCH_DATABASE_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_ADVANCE_SEARCH_DATABASE_COND = tagNET_VCA_ADVANCE_SEARCH_DATABASE_COND; +pub type LPNET_VCA_ADVANCE_SEARCH_DATABASE_COND = *mut tagNET_VCA_ADVANCE_SEARCH_DATABASE_COND; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_VCA_SEARCH_DATABASE_COND_UNION { + pub uLen: [DWORD; 25usize], + pub struNormalFind: NET_VCA_REGISTER_PIC, + pub struAdvanceFind: NET_VCA_ADVANCE_SEARCH_DATABASE_COND, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_SEARCH_DATABASE_COND_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 100usize, + concat!( + "Size of: ", + stringify!(tagNET_VCA_SEARCH_DATABASE_COND_UNION) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_VCA_SEARCH_DATABASE_COND_UNION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_DATABASE_COND_UNION), + "::", + stringify!(uLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNormalFind) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_DATABASE_COND_UNION), + "::", + stringify!(struNormalFind) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAdvanceFind) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_DATABASE_COND_UNION), + "::", + stringify!(struAdvanceFind) + ) + ); +} +pub type NET_VCA_SEARCH_DATABASE_COND_UNION = tagNET_VCA_SEARCH_DATABASE_COND_UNION; +pub type LPNET_VCA_SEARCH_DATABASE_COND_UNION = *mut tagNET_VCA_SEARCH_DATABASE_COND_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_VCA_SEARCH_DATABASE_PARAM { + pub dwSearchType: DWORD, + pub uSearchCond: NET_VCA_SEARCH_DATABASE_COND_UNION, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_SEARCH_DATABASE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 120usize, + concat!("Size of: ", stringify!(tagNET_VCA_SEARCH_DATABASE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_VCA_SEARCH_DATABASE_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSearchType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_DATABASE_PARAM), + "::", + stringify!(dwSearchType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uSearchCond) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_DATABASE_PARAM), + "::", + stringify!(uSearchCond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_DATABASE_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_SEARCH_DATABASE_PARAM = tagNET_VCA_SEARCH_DATABASE_PARAM; +pub type LPNET_VCA_SEARCH_DATABASE_PARAM = *mut tagNET_VCA_SEARCH_DATABASE_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_VCA_SEARCH_SNAPDB_COND { + pub dwChannel: DWORD, + pub dwDataBaseID: DWORD, + pub struStartTime: NET_DVR_TIME, + pub struStopTime: NET_DVR_TIME, + pub bySex: BYTE, + pub byRes1: [BYTE; 3usize], + pub byStartBirthDate: [BYTE; 10usize], + pub byEndBirthDate: [BYTE; 10usize], + pub byAttribute1: [BYTE; 32usize], + pub byAttribute2: [BYTE; 32usize], + pub struSearchParam: NET_VCA_SEARCH_DATABASE_PARAM, + pub dwMaxSearchNum: DWORD, + pub wThreshold: WORD, + pub byRes: [BYTE; 78usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_SEARCH_SNAPDB_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 348usize, + concat!("Size of: ", stringify!(tagNET_VCA_SEARCH_SNAPDB_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_SEARCH_SNAPDB_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPDB_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataBaseID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPDB_COND), + "::", + stringify!(dwDataBaseID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPDB_COND), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPDB_COND), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySex) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPDB_COND), + "::", + stringify!(bySex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 57usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPDB_COND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartBirthDate) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPDB_COND), + "::", + stringify!(byStartBirthDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEndBirthDate) as usize - ptr as usize }, + 70usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPDB_COND), + "::", + stringify!(byEndBirthDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAttribute1) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPDB_COND), + "::", + stringify!(byAttribute1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAttribute2) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPDB_COND), + "::", + stringify!(byAttribute2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSearchParam) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPDB_COND), + "::", + stringify!(struSearchParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxSearchNum) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPDB_COND), + "::", + stringify!(dwMaxSearchNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wThreshold) as usize - ptr as usize }, + 268usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPDB_COND), + "::", + stringify!(wThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 270usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPDB_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_SEARCH_SNAPDB_COND = tagNET_VCA_SEARCH_SNAPDB_COND; +pub type LPNET_VCA_SEARCH_SNAPDB_COND = *mut tagNET_VCA_SEARCH_SNAPDB_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_SEARCH_SNAPRECORD_RESULT { + pub dwSize: DWORD, + pub dwDataBaseID: DWORD, + pub dwRecordID: DWORD, + pub struSnapTime: NET_DVR_TIME, + pub bySex: BYTE, + pub byRes1: [BYTE; 3usize], + pub byStartBirthDate: [BYTE; 10usize], + pub byEndBirthDate: [BYTE; 10usize], + pub byAttribute1: [BYTE; 32usize], + pub byAttribute2: [BYTE; 32usize], + pub fSimilarity: f32, + pub dwFacePicID: DWORD, + pub dwFacePicLen: DWORD, + pub byRes: [BYTE; 80usize], + pub pFacePic: *mut BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_SEARCH_SNAPRECORD_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 224usize, + concat!("Size of: ", stringify!(tagNET_VCA_SEARCH_SNAPRECORD_RESULT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_VCA_SEARCH_SNAPRECORD_RESULT) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPRECORD_RESULT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataBaseID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPRECORD_RESULT), + "::", + stringify!(dwDataBaseID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPRECORD_RESULT), + "::", + stringify!(dwRecordID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSnapTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPRECORD_RESULT), + "::", + stringify!(struSnapTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySex) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPRECORD_RESULT), + "::", + stringify!(bySex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPRECORD_RESULT), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartBirthDate) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPRECORD_RESULT), + "::", + stringify!(byStartBirthDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEndBirthDate) as usize - ptr as usize }, + 50usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPRECORD_RESULT), + "::", + stringify!(byEndBirthDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAttribute1) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPRECORD_RESULT), + "::", + stringify!(byAttribute1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAttribute2) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPRECORD_RESULT), + "::", + stringify!(byAttribute2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fSimilarity) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPRECORD_RESULT), + "::", + stringify!(fSimilarity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFacePicID) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPRECORD_RESULT), + "::", + stringify!(dwFacePicID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFacePicLen) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPRECORD_RESULT), + "::", + stringify!(dwFacePicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPRECORD_RESULT), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pFacePic) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_SNAPRECORD_RESULT), + "::", + stringify!(pFacePic) + ) + ); +} +pub type NET_VCA_SEARCH_SNAPRECORD_RESULT = tagNET_VCA_SEARCH_SNAPRECORD_RESULT; +pub type LPNET_VCA_SEARCH_SNAPRECORD_RESULT = *mut tagNET_VCA_SEARCH_SNAPRECORD_RESULT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_DATARECORD_INFO { + pub dwSize: DWORD, + pub dwRecordID: DWORD, + pub struAttribute: NET_VCA_HUMAN_ATTRIBUTE, + pub struRegisterPic: NET_VCA_REGISTER_PIC, + pub byRemark1: [BYTE; 32usize], + pub byRemark2: [BYTE; 64usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_DATARECORD_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 304usize, + concat!("Size of: ", stringify!(tagNET_VCA_DATARECORD_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_VCA_DATARECORD_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DATARECORD_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DATARECORD_INFO), + "::", + stringify!(dwRecordID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAttribute) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DATARECORD_INFO), + "::", + stringify!(struAttribute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegisterPic) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DATARECORD_INFO), + "::", + stringify!(struRegisterPic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRemark1) as usize - ptr as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DATARECORD_INFO), + "::", + stringify!(byRemark1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRemark2) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DATARECORD_INFO), + "::", + stringify!(byRemark2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 268usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DATARECORD_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_DATARECORD_INFO = tagNET_VCA_DATARECORD_INFO; +pub type LPNET_VCA_DATARECORD_INFO = *mut tagNET_VCA_DATARECORD_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_FAST_DATARECORD_INFO { + pub dwSize: DWORD, + pub struAttribute: NET_VCA_HUMAN_ATTRIBUTE, + pub byRemark1: [BYTE; 32usize], + pub byRemark2: [BYTE; 64usize], + pub dwImageLen: DWORD, + pub byRes: [BYTE; 80usize], + pub pImage: *mut BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_FAST_DATARECORD_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 320usize, + concat!("Size of: ", stringify!(tagNET_VCA_FAST_DATARECORD_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_VCA_FAST_DATARECORD_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FAST_DATARECORD_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAttribute) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FAST_DATARECORD_INFO), + "::", + stringify!(struAttribute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRemark1) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FAST_DATARECORD_INFO), + "::", + stringify!(byRemark1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRemark2) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FAST_DATARECORD_INFO), + "::", + stringify!(byRemark2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwImageLen) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FAST_DATARECORD_INFO), + "::", + stringify!(dwImageLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 228usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FAST_DATARECORD_INFO), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pImage) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FAST_DATARECORD_INFO), + "::", + stringify!(pImage) + ) + ); +} +pub type NET_VCA_FAST_DATARECORD_INFO = tagNET_VCA_FAST_DATARECORD_INFO; +pub type LPNET_VCA_FAST_DATARECORD_INFO = *mut tagNET_VCA_FAST_DATARECORD_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_INQUIRE_DATARECORD_RESULT { + pub dwSize: DWORD, + pub dwDataBaseID: DWORD, + pub dwRecordID: DWORD, + pub struAttribute: NET_VCA_HUMAN_ATTRIBUTE, + pub byRemark1: [BYTE; 32usize], + pub byRemark2: [BYTE; 64usize], + pub dwFacePicID: DWORD, + pub dwFacePicLen: DWORD, + pub byRes: [BYTE; 80usize], + pub pFacePic: *mut BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_INQUIRE_DATARECORD_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 328usize, + concat!( + "Size of: ", + stringify!(tagNET_VCA_INQUIRE_DATARECORD_RESULT) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_VCA_INQUIRE_DATARECORD_RESULT) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_DATARECORD_RESULT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataBaseID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_DATARECORD_RESULT), + "::", + stringify!(dwDataBaseID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_DATARECORD_RESULT), + "::", + stringify!(dwRecordID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAttribute) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_DATARECORD_RESULT), + "::", + stringify!(struAttribute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRemark1) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_DATARECORD_RESULT), + "::", + stringify!(byRemark1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRemark2) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_DATARECORD_RESULT), + "::", + stringify!(byRemark2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFacePicID) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_DATARECORD_RESULT), + "::", + stringify!(dwFacePicID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFacePicLen) as usize - ptr as usize }, + 236usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_DATARECORD_RESULT), + "::", + stringify!(dwFacePicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_DATARECORD_RESULT), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pFacePic) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_INQUIRE_DATARECORD_RESULT), + "::", + stringify!(pFacePic) + ) + ); +} +pub type NET_VCA_INQUIRE_DATARECORD_RESULT = tagNET_VCA_INQUIRE_DATARECORD_RESULT; +pub type LPNET_VCA_INQUIRE_DATARECORD_RESULT = *mut tagNET_VCA_INQUIRE_DATARECORD_RESULT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_SEARCH_DATARECORD_RESULT { + pub dwSize: DWORD, + pub dwDataBaseID: DWORD, + pub dwRecordID: DWORD, + pub struAttribute: NET_VCA_HUMAN_ATTRIBUTE, + pub byRemark1: [BYTE; 32usize], + pub byRemark2: [BYTE; 64usize], + pub fSimilarity: f32, + pub dwFacePicID: DWORD, + pub dwFacePicLen: DWORD, + pub byRes: [BYTE; 80usize], + pub pFacePic: *mut BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_SEARCH_DATARECORD_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 336usize, + concat!("Size of: ", stringify!(tagNET_VCA_SEARCH_DATARECORD_RESULT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_VCA_SEARCH_DATARECORD_RESULT) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_DATARECORD_RESULT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataBaseID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_DATARECORD_RESULT), + "::", + stringify!(dwDataBaseID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_DATARECORD_RESULT), + "::", + stringify!(dwRecordID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAttribute) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_DATARECORD_RESULT), + "::", + stringify!(struAttribute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRemark1) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_DATARECORD_RESULT), + "::", + stringify!(byRemark1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRemark2) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_DATARECORD_RESULT), + "::", + stringify!(byRemark2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fSimilarity) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_DATARECORD_RESULT), + "::", + stringify!(fSimilarity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFacePicID) as usize - ptr as usize }, + 236usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_DATARECORD_RESULT), + "::", + stringify!(dwFacePicID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFacePicLen) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_DATARECORD_RESULT), + "::", + stringify!(dwFacePicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 244usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_DATARECORD_RESULT), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pFacePic) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_DATARECORD_RESULT), + "::", + stringify!(pFacePic) + ) + ); +} +pub type NET_VCA_SEARCH_DATARECORD_RESULT = tagNET_VCA_SEARCH_DATARECORD_RESULT; +pub type LPNET_VCA_SEARCH_DATARECORD_RESULT = *mut tagNET_VCA_SEARCH_DATARECORD_RESULT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_DATARECORD_COND { + pub dwDataBaseID: DWORD, + pub struAttribute: NET_VCA_HUMANATTRIBUTE_COND, + pub byRes: [BYTE; 80usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_DATARECORD_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 204usize, + concat!("Size of: ", stringify!(tagNET_VCA_DATARECORD_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_DATARECORD_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataBaseID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DATARECORD_COND), + "::", + stringify!(dwDataBaseID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAttribute) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DATARECORD_COND), + "::", + stringify!(struAttribute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DATARECORD_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_DATARECORD_COND = tagNET_VCA_DATARECORD_COND; +pub type LPNET_VCA_DATARECORD_COND = *mut tagNET_VCA_DATARECORD_COND; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_VCA_DELETE_RECORD_COND_UNION { + pub struAttribute: NET_VCA_HUMANATTRIBUTE_COND, + pub dwRecordID: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_DELETE_RECORD_COND_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 120usize, + concat!("Size of: ", stringify!(tagNET_VCA_DELETE_RECORD_COND_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_VCA_DELETE_RECORD_COND_UNION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAttribute) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DELETE_RECORD_COND_UNION), + "::", + stringify!(struAttribute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DELETE_RECORD_COND_UNION), + "::", + stringify!(dwRecordID) + ) + ); +} +pub type NET_VCA_DELETE_RECORD_COND_UNION = tagNET_VCA_DELETE_RECORD_COND_UNION; +pub type LPNET_VCA_DELETE_RECORD_COND_UNION = *mut tagNET_VCA_DELETE_RECORD_COND_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_VCA_DELETE_RECORD_COND { + pub dwDeleteType: VCA_DELETE_RECORD_TYPE, + pub uDeleteCond: NET_VCA_DELETE_RECORD_COND_UNION, + pub byRes: [BYTE; 40usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_DELETE_RECORD_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 164usize, + concat!("Size of: ", stringify!(tagNET_VCA_DELETE_RECORD_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_DELETE_RECORD_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeleteType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DELETE_RECORD_COND), + "::", + stringify!(dwDeleteType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uDeleteCond) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DELETE_RECORD_COND), + "::", + stringify!(uDeleteCond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DELETE_RECORD_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_DELETE_RECORD_COND = tagNET_VCA_DELETE_RECORD_COND; +pub type LPNET_VCA_DELETE_RECORD_COND = *mut tagNET_VCA_DELETE_RECORD_COND; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_VCA_SEARCH_FACEDB_COND { + pub dwDataBaseID: DWORD, + pub struAttribute: NET_VCA_HUMANATTRIBUTE_COND, + pub struSearchParam: NET_VCA_SEARCH_DATABASE_PARAM, + pub dwMaxSearchNum: DWORD, + pub wThreshold: WORD, + pub byRes: [BYTE; 78usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_SEARCH_FACEDB_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 328usize, + concat!("Size of: ", stringify!(tagNET_VCA_SEARCH_FACEDB_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_SEARCH_FACEDB_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataBaseID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_FACEDB_COND), + "::", + stringify!(dwDataBaseID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAttribute) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_FACEDB_COND), + "::", + stringify!(struAttribute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSearchParam) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_FACEDB_COND), + "::", + stringify!(struSearchParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxSearchNum) as usize - ptr as usize }, + 244usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_FACEDB_COND), + "::", + stringify!(dwMaxSearchNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wThreshold) as usize - ptr as usize }, + 248usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_FACEDB_COND), + "::", + stringify!(wThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 250usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_SEARCH_FACEDB_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_SEARCH_FACEDB_COND = tagNET_VCA_SEARCH_FACEDB_COND; +pub type LPNET_VCA_SEARCH_FACEDB_COND = *mut tagNET_VCA_SEARCH_FACEDB_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_FIND_MATCHPIC_COND { + pub dwSize: DWORD, + pub dwDataBaseType: DWORD, + pub dwDataBaseID: DWORD, + pub dwRecordID: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_FIND_MATCHPIC_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_VCA_FIND_MATCHPIC_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_FIND_MATCHPIC_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_MATCHPIC_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataBaseType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_MATCHPIC_COND), + "::", + stringify!(dwDataBaseType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataBaseID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_MATCHPIC_COND), + "::", + stringify!(dwDataBaseID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordID) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_MATCHPIC_COND), + "::", + stringify!(dwRecordID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_MATCHPIC_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_FIND_MATCHPIC_COND = tagNET_VCA_FIND_MATCHPIC_COND; +pub type LPNET_VCA_FIND_MATCHPIC_COND = *mut tagNET_VCA_FIND_MATCHPIC_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_FIND_MATCHPIC_RESULT { + pub dwSize: DWORD, + pub dwDataBaseType: DWORD, + pub dwDataBaseID: DWORD, + pub dwRecordID: DWORD, + pub dwPicLen: DWORD, + pub byRes: [BYTE; 64usize], + pub pPicBuffer: *mut BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_VCA_FIND_MATCHPIC_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 96usize, + concat!("Size of: ", stringify!(tagNET_VCA_FIND_MATCHPIC_RESULT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_VCA_FIND_MATCHPIC_RESULT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_MATCHPIC_RESULT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataBaseType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_MATCHPIC_RESULT), + "::", + stringify!(dwDataBaseType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataBaseID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_MATCHPIC_RESULT), + "::", + stringify!(dwDataBaseID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordID) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_MATCHPIC_RESULT), + "::", + stringify!(dwRecordID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicLen) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_MATCHPIC_RESULT), + "::", + stringify!(dwPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_MATCHPIC_RESULT), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPicBuffer) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIND_MATCHPIC_RESULT), + "::", + stringify!(pPicBuffer) + ) + ); +} +pub type NET_VCA_FIND_MATCHPIC_RESULT = tagNET_VCA_FIND_MATCHPIC_RESULT; +pub type LPNET_VCA_FIND_MATCHPIC_RESULT = *mut tagNET_VCA_FIND_MATCHPIC_RESULT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REMOTECONTROL_ALARM_PARAM { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub wDealyTime: WORD, + pub byRes: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REMOTECONTROL_ALARM_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_REMOTECONTROL_ALARM_PARAM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_REMOTECONTROL_ALARM_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROL_ALARM_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROL_ALARM_PARAM), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDealyTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROL_ALARM_PARAM), + "::", + stringify!(wDealyTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROL_ALARM_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_REMOTECONTROL_ALARM_PARAM = tagNET_DVR_REMOTECONTROL_ALARM_PARAM; +pub type LPNET_DVR_REMOTECONTROL_ALARM_PARAM = *mut tagNET_DVR_REMOTECONTROL_ALARM_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REMOTECONTROL_STUDY_PARAM { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REMOTECONTROL_STUDY_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_REMOTECONTROL_STUDY_PARAM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_REMOTECONTROL_STUDY_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROL_STUDY_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROL_STUDY_PARAM), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROL_STUDY_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_REMOTECONTROL_STUDY_PARAM = tagNET_DVR_REMOTECONTROL_STUDY_PARAM; +pub type LPNET_DVR_REMOTECONTROL_STUDY_PARAM = *mut tagNET_DVR_REMOTECONTROL_STUDY_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WIRELESS_ALARM_STUDY_PARAM { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byIndex: BYTE, + pub byRes: [BYTE; 15usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIRELESS_ALARM_STUDY_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_WIRELESS_ALARM_STUDY_PARAM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_WIRELESS_ALARM_STUDY_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESS_ALARM_STUDY_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESS_ALARM_STUDY_PARAM), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIndex) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESS_ALARM_STUDY_PARAM), + "::", + stringify!(byIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESS_ALARM_STUDY_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WIRELESS_ALARM_STUDY_PARAM = tagNET_DVR_WIRELESS_ALARM_STUDY_PARAM; +pub type LPNET_DVR_WIRELESS_ALARM_STUDY_PARAM = *mut tagNET_DVR_WIRELESS_ALARM_STUDY_PARAM; +pub const _IPC_AUX_ALARM_TYPE__IPC_AUXALARM_UNKNOW: _IPC_AUX_ALARM_TYPE_ = 0; +pub const _IPC_AUX_ALARM_TYPE__IPC_AUXALARM_PIR: _IPC_AUX_ALARM_TYPE_ = 1; +pub const _IPC_AUX_ALARM_TYPE__IPC_AUXALARM_WIRELESS: _IPC_AUX_ALARM_TYPE_ = 2; +pub const _IPC_AUX_ALARM_TYPE__IPC_AUXALARM_CALLHELP: _IPC_AUX_ALARM_TYPE_ = 3; +pub type _IPC_AUX_ALARM_TYPE_ = ::std::os::raw::c_uint; +pub use self::_IPC_AUX_ALARM_TYPE_ as IPC_AUX_ALARM_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUDIO_LIMIT_ALARM_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwDecibelLimit: DWORD, + pub struHandleException: NET_DVR_HANDLEEXCEPTION_V30, + pub byRes2: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUDIO_LIMIT_ALARM_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUDIO_LIMIT_ALARM_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_AUDIO_LIMIT_ALARM_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_LIMIT_ALARM_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_LIMIT_ALARM_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_LIMIT_ALARM_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDecibelLimit) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_LIMIT_ALARM_CFG), + "::", + stringify!(dwDecibelLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHandleException) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_LIMIT_ALARM_CFG), + "::", + stringify!(struHandleException) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_LIMIT_ALARM_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_IPC_AUDIO_LIMIT_ALARM_CFG = tagNET_DVR_AUDIO_LIMIT_ALARM_CFG; +pub type LPNET_IPC_AUDIO_LIMIT_ALARM_CFG = *mut tagNET_DVR_AUDIO_LIMIT_ALARM_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BUTTON_DOWN_ALARM_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub struHandleException: NET_DVR_HANDLEEXCEPTION_V30, + pub byRes2: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BUTTON_DOWN_ALARM_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_BUTTON_DOWN_ALARM_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_BUTTON_DOWN_ALARM_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BUTTON_DOWN_ALARM_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BUTTON_DOWN_ALARM_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BUTTON_DOWN_ALARM_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHandleException) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BUTTON_DOWN_ALARM_CFG), + "::", + stringify!(struHandleException) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BUTTON_DOWN_ALARM_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_IPC_BUTTON_DOWN_ALARM_CFG = tagNET_DVR_BUTTON_DOWN_ALARM_CFG; +pub type LPNET_IPC_BUTTON_DOWN_ALARM_CFG = *mut tagNET_DVR_BUTTON_DOWN_ALARM_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_IPC_PIR_ALARMCFG { + pub byAlarmName: [BYTE; 32usize], + pub byAlarmHandle: BYTE, + pub byRes1: [BYTE; 3usize], + pub struAlarmHandleType: NET_DVR_HANDLEEXCEPTION_V30, + pub byRelRecordChan: [BYTE; 64usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_IPC_PIR_ALARMCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_IPC_PIR_ALARMCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_IPC_PIR_ALARMCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_PIR_ALARMCFG), + "::", + stringify!(byAlarmName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmHandle) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_PIR_ALARMCFG), + "::", + stringify!(byAlarmHandle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_PIR_ALARMCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmHandleType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_PIR_ALARMCFG), + "::", + stringify!(struAlarmHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelRecordChan) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_PIR_ALARMCFG), + "::", + stringify!(byRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_PIR_ALARMCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_IPC_PIR_ALARMCFG = tagNET_IPC_PIR_ALARMCFG; +pub type LPNET_IPC_PIR_ALARMCFG = *mut tagNET_IPC_PIR_ALARMCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_IPC_PIR_ALARMCFG_EX { + pub byAlarmName: [BYTE; 32usize], + pub byAlarmHandle: BYTE, + pub byRes1: [BYTE; 3usize], + pub struAlarmHandleType: NET_DVR_HANDLEEXCEPTION_V30, + pub byRelRecordChan: [BYTE; 64usize], + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub byRes: [BYTE; 1464usize], +} +#[test] +fn bindgen_test_layout_tagNET_IPC_PIR_ALARMCFG_EX() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1888usize, + concat!("Size of: ", stringify!(tagNET_IPC_PIR_ALARMCFG_EX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_IPC_PIR_ALARMCFG_EX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_PIR_ALARMCFG_EX), + "::", + stringify!(byAlarmName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmHandle) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_PIR_ALARMCFG_EX), + "::", + stringify!(byAlarmHandle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_PIR_ALARMCFG_EX), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmHandleType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_PIR_ALARMCFG_EX), + "::", + stringify!(struAlarmHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelRecordChan) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_PIR_ALARMCFG_EX), + "::", + stringify!(byRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_PIR_ALARMCFG_EX), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 424usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_PIR_ALARMCFG_EX), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_IPC_PIR_ALARMCFG_EX = tagNET_IPC_PIR_ALARMCFG_EX; +pub type LPNET_IPC_PIR_ALARMCFG_EX = *mut tagNET_IPC_PIR_ALARMCFG_EX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_IPC_CALLHELP_ALARMCFG { + pub byAlarmHandle: BYTE, + pub byRes1: [BYTE; 3usize], + pub struAlarmHandleType: NET_DVR_HANDLEEXCEPTION_V30, + pub byRelRecordChan: [BYTE; 64usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_IPC_CALLHELP_ALARMCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 232usize, + concat!("Size of: ", stringify!(tagNET_IPC_CALLHELP_ALARMCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_IPC_CALLHELP_ALARMCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmHandle) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_CALLHELP_ALARMCFG), + "::", + stringify!(byAlarmHandle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_CALLHELP_ALARMCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmHandleType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_CALLHELP_ALARMCFG), + "::", + stringify!(struAlarmHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelRecordChan) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_CALLHELP_ALARMCFG), + "::", + stringify!(byRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_CALLHELP_ALARMCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_IPC_CALLHELP_ALARMCFG = tagNET_IPC_CALLHELP_ALARMCFG; +pub type LPNET_IPC_CALLHELP_ALARMCFG = *mut tagNET_IPC_CALLHELP_ALARMCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_IPC_SINGLE_WIRELESS_ALARMCFG { + pub byAlarmName: [BYTE; 32usize], + pub byAlarmHandle: BYTE, + pub byID: BYTE, + pub byRes1: [BYTE; 2usize], + pub struAlarmHandleType: NET_DVR_HANDLEEXCEPTION_V30, + pub byRelRecordChan: [BYTE; 64usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_IPC_SINGLE_WIRELESS_ALARMCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 232usize, + concat!("Size of: ", stringify!(tagNET_IPC_SINGLE_WIRELESS_ALARMCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_IPC_SINGLE_WIRELESS_ALARMCFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_SINGLE_WIRELESS_ALARMCFG), + "::", + stringify!(byAlarmName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmHandle) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_SINGLE_WIRELESS_ALARMCFG), + "::", + stringify!(byAlarmHandle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byID) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_SINGLE_WIRELESS_ALARMCFG), + "::", + stringify!(byID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 34usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_SINGLE_WIRELESS_ALARMCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmHandleType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_SINGLE_WIRELESS_ALARMCFG), + "::", + stringify!(struAlarmHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelRecordChan) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_SINGLE_WIRELESS_ALARMCFG), + "::", + stringify!(byRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_SINGLE_WIRELESS_ALARMCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_IPC_SINGLE_WIRELESS_ALARMCFG = tagNET_IPC_SINGLE_WIRELESS_ALARMCFG; +pub type LPNET_IPC_SINGLE_WIRELESS_ALARMCFG = *mut tagNET_IPC_SINGLE_WIRELESS_ALARMCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_IPC_WIRELESS_ALARMCFG { + pub struWirelessAlarm: [NET_IPC_SINGLE_WIRELESS_ALARMCFG; 8usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_IPC_WIRELESS_ALARMCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1888usize, + concat!("Size of: ", stringify!(tagNET_IPC_WIRELESS_ALARMCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_IPC_WIRELESS_ALARMCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWirelessAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_WIRELESS_ALARMCFG), + "::", + stringify!(struWirelessAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1856usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_WIRELESS_ALARMCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_IPC_WIRELESS_ALARMCFG = tagNET_IPC_WIRELESS_ALARMCFG; +pub type LPNET_IPC_WIRELESS_ALARMCFG = *mut tagNET_IPC_WIRELESS_ALARMCFG; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_IPC_AUX_ALARMCFG_UNION { + pub uLen: [DWORD; 472usize], + pub struPIRAlarm: NET_IPC_PIR_ALARMCFG_EX, + pub struWirelessAlarm: NET_IPC_WIRELESS_ALARMCFG, + pub struCallHelpAlarm: NET_IPC_CALLHELP_ALARMCFG, +} +#[test] +fn bindgen_test_layout_tagNET_IPC_AUX_ALARMCFG_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1888usize, + concat!("Size of: ", stringify!(tagNET_IPC_AUX_ALARMCFG_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_IPC_AUX_ALARMCFG_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_AUX_ALARMCFG_UNION), + "::", + stringify!(uLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPIRAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_AUX_ALARMCFG_UNION), + "::", + stringify!(struPIRAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWirelessAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_AUX_ALARMCFG_UNION), + "::", + stringify!(struWirelessAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCallHelpAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_AUX_ALARMCFG_UNION), + "::", + stringify!(struCallHelpAlarm) + ) + ); +} +pub type NET_IPC_AUX_ALARMCFG_UNION = tagNET_IPC_AUX_ALARMCFG_UNION; +pub type LPNET_IPC_AUX_ALARMCFG_UNION = *mut tagNET_IPC_AUX_ALARMCFG_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_IPC_SINGLE_AUX_ALARMCFG { + pub byAlarmType: BYTE, + pub byRes1: [BYTE; 3usize], + pub uAlarm: NET_IPC_AUX_ALARMCFG_UNION, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_IPC_SINGLE_AUX_ALARMCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1908usize, + concat!("Size of: ", stringify!(tagNET_IPC_SINGLE_AUX_ALARMCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_IPC_SINGLE_AUX_ALARMCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_SINGLE_AUX_ALARMCFG), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_SINGLE_AUX_ALARMCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uAlarm) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_SINGLE_AUX_ALARMCFG), + "::", + stringify!(uAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1892usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_SINGLE_AUX_ALARMCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_IPC_SINGLE_AUX_ALARMCFG = tagNET_IPC_SINGLE_AUX_ALARMCFG; +pub type LPNET_IPC_SINGLE_AUX_ALARMCFG = *mut tagNET_IPC_SINGLE_AUX_ALARMCFG; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_IPC_AUX_ALARMCFG { + pub dwSize: DWORD, + pub struAlarm: [NET_IPC_SINGLE_AUX_ALARMCFG; 8usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_IPC_AUX_ALARMCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 15332usize, + concat!("Size of: ", stringify!(tagNET_IPC_AUX_ALARMCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_IPC_AUX_ALARMCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_AUX_ALARMCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarm) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_AUX_ALARMCFG), + "::", + stringify!(struAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 15268usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_AUX_ALARMCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_IPC_AUX_ALARMCFG = tagNET_IPC_AUX_ALARMCFG; +pub type LPNET_IPC_AUX_ALARMCFG = *mut tagNET_IPC_AUX_ALARMCFG; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_IPC_AUXALARM_UPLOAD_UNION { + pub uLen: [DWORD; 66usize], + pub struPIRAlarm: NET_IPC_PIR_ALARMCFG, + pub struWirelessAlarm: NET_IPC_SINGLE_WIRELESS_ALARMCFG, + pub struCallHelpAlarm: NET_IPC_CALLHELP_ALARMCFG, +} +#[test] +fn bindgen_test_layout_tagNET_IPC_AUXALARM_UPLOAD_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_IPC_AUXALARM_UPLOAD_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_IPC_AUXALARM_UPLOAD_UNION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_AUXALARM_UPLOAD_UNION), + "::", + stringify!(uLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPIRAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_AUXALARM_UPLOAD_UNION), + "::", + stringify!(struPIRAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWirelessAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_AUXALARM_UPLOAD_UNION), + "::", + stringify!(struWirelessAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCallHelpAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_AUXALARM_UPLOAD_UNION), + "::", + stringify!(struCallHelpAlarm) + ) + ); +} +pub type NET_IPC_AUXALARM_UPLOAD_UNION = tagNET_IPC_AUXALARM_UPLOAD_UNION; +pub type LPNET_IPC_AUXALARM_UPLOAD_UNION = *mut tagNET_IPC_AUXALARM_UPLOAD_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_IPC_AUXALARM_RESULT { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byAlarmType: BYTE, + pub byRes1: [BYTE; 3usize], + pub struAuxAlarm: NET_IPC_AUXALARM_UPLOAD_UNION, + pub byDeviceID: [BYTE; 32usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_IPC_AUXALARM_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 340usize, + concat!("Size of: ", stringify!(tagNET_IPC_AUXALARM_RESULT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_IPC_AUXALARM_RESULT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_AUXALARM_RESULT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_AUXALARM_RESULT), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_AUXALARM_RESULT), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_AUXALARM_RESULT), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAuxAlarm) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_AUXALARM_RESULT), + "::", + stringify!(struAuxAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 276usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_AUXALARM_RESULT), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 308usize, + concat!( + "Offset of field: ", + stringify!(tagNET_IPC_AUXALARM_RESULT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_IPC_AUXALARM_RESULT = tagNET_IPC_AUXALARM_RESULT; +pub type LPNET_IPC_AUXALARM_RESULT = *mut tagNET_IPC_AUXALARM_RESULT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PREVIEW_DISPLAYCFG { + pub dwSize: DWORD, + pub byCorrectMode: BYTE, + pub byMountType: BYTE, + pub byRealTimeOutput: BYTE, + pub byRes: [BYTE; 61usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PREVIEW_DISPLAYCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_PREVIEW_DISPLAYCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PREVIEW_DISPLAYCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEW_DISPLAYCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCorrectMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEW_DISPLAYCFG), + "::", + stringify!(byCorrectMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMountType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEW_DISPLAYCFG), + "::", + stringify!(byMountType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRealTimeOutput) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEW_DISPLAYCFG), + "::", + stringify!(byRealTimeOutput) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEW_DISPLAYCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PREVIEW_DISPLAYCFG = tagNET_DVR_PREVIEW_DISPLAYCFG; +pub type LPNET_DVR_PREVIEW_DISPLAYCFG = *mut tagNET_DVR_PREVIEW_DISPLAYCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REMOTECONTROL_PTZ_PARAM { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub dwPTZCommand: DWORD, + pub struVcaPoint: NET_VCA_POINT, + pub dwSpeed: DWORD, + pub dwStop: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REMOTECONTROL_PTZ_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 60usize, + concat!("Size of: ", stringify!(tagNET_DVR_REMOTECONTROL_PTZ_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_REMOTECONTROL_PTZ_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROL_PTZ_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROL_PTZ_PARAM), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPTZCommand) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROL_PTZ_PARAM), + "::", + stringify!(dwPTZCommand) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaPoint) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROL_PTZ_PARAM), + "::", + stringify!(struVcaPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSpeed) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROL_PTZ_PARAM), + "::", + stringify!(dwSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStop) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROL_PTZ_PARAM), + "::", + stringify!(dwStop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROL_PTZ_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_REMOTECONTROL_PTZ_PARAM = tagNET_DVR_REMOTECONTROL_PTZ_PARAM; +pub type LPNET_DVR_REMOTECONTROL_PTZ_PARAM = *mut tagNET_DVR_REMOTECONTROL_PTZ_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PRESET_POINT_PARAM { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub dwPTZPresetCmd: DWORD, + pub struVcaPoint: NET_VCA_POINT, + pub dwPresetIndex: DWORD, + #[doc = "<Ԥ�õ㴰��Zoom\u{5b5}"] + pub wZoomCoordinate: WORD, + pub byRes: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PRESET_POINT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_PRESET_POINT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PRESET_POINT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESET_POINT_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESET_POINT_PARAM), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPTZPresetCmd) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESET_POINT_PARAM), + "::", + stringify!(dwPTZPresetCmd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaPoint) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESET_POINT_PARAM), + "::", + stringify!(struVcaPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPresetIndex) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESET_POINT_PARAM), + "::", + stringify!(dwPresetIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wZoomCoordinate) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESET_POINT_PARAM), + "::", + stringify!(wZoomCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESET_POINT_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PRESET_POINT_PARAM = tagNET_DVR_PRESET_POINT_PARAM; +pub type LPNET_DVR_PRESET_POINT_PARAM = *mut tagNET_DVR_PRESET_POINT_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZ_CRUISE_PARAM { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub dwPTZCruiseCmd: DWORD, + pub struVcaPoint: NET_VCA_POINT, + pub wCruiseRoute: WORD, + pub wCruisePoint: WORD, + pub wInput: WORD, + #[doc = "<Ԥ�õ㴰��Zoom\u{5b5}"] + pub wZoomCoordinate: WORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZ_CRUISE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 60usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZ_CRUISE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZ_CRUISE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_CRUISE_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_CRUISE_PARAM), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPTZCruiseCmd) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_CRUISE_PARAM), + "::", + stringify!(dwPTZCruiseCmd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaPoint) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_CRUISE_PARAM), + "::", + stringify!(struVcaPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCruiseRoute) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_CRUISE_PARAM), + "::", + stringify!(wCruiseRoute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCruisePoint) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_CRUISE_PARAM), + "::", + stringify!(wCruisePoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInput) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_CRUISE_PARAM), + "::", + stringify!(wInput) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wZoomCoordinate) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_CRUISE_PARAM), + "::", + stringify!(wZoomCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_CRUISE_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PTZ_CRUISE_PARAM = tagNET_DVR_PTZ_CRUISE_PARAM; +pub type LPNET_DVR_PTZ_CRUISE_PARAM = *mut tagNET_DVR_PTZ_CRUISE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WPS_PARAM { + pub dwSize: DWORD, + pub byEnableWps: BYTE, + pub byRes: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WPS_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_WPS_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WPS_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WPS_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableWps) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WPS_PARAM), + "::", + stringify!(byEnableWps) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WPS_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WPS_PARAM = tagNET_DVR_WPS_PARAM; +pub type LPNET_DVR_WPS_PARAM = *mut tagNET_DVR_WPS_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PIN_PARAM { + pub dwSize: DWORD, + pub byPIN: [BYTE; 8usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PIN_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_PIN_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PIN_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIN_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPIN) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIN_PARAM), + "::", + stringify!(byPIN) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIN_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PIN_PARAM = tagNET_DVR_PIN_PARAM; +pub type LPNET_DVR_PIN_PARAM = *mut tagNET_DVR_PIN_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WPS_CONNECT_PARAM_ { + pub dwSize: DWORD, + pub byConnectType: BYTE, + pub byRes1: [BYTE; 3usize], + pub byPIN: [BYTE; 8usize], + pub byEssid: [BYTE; 32usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WPS_CONNECT_PARAM_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_WPS_CONNECT_PARAM_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WPS_CONNECT_PARAM_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WPS_CONNECT_PARAM_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byConnectType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WPS_CONNECT_PARAM_), + "::", + stringify!(byConnectType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WPS_CONNECT_PARAM_), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPIN) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WPS_CONNECT_PARAM_), + "::", + stringify!(byPIN) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEssid) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WPS_CONNECT_PARAM_), + "::", + stringify!(byEssid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WPS_CONNECT_PARAM_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WPS_CONNECT_PARAM = tagNET_DVR_WPS_CONNECT_PARAM_; +pub type LPNET_DVR_WPS_CONNECT_PARAM = *mut tagNET_DVR_WPS_CONNECT_PARAM_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DECODER_JOINT_PARAM { + pub dwSize: DWORD, + pub byJointed: BYTE, + pub byRes1: [BYTE; 3usize], + pub struIP: NET_DVR_IPADDR, + pub wPort: WORD, + pub wChannel: WORD, + pub sDeviceName: [BYTE; 32usize], + pub sChanName: [BYTE; 32usize], + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DECODER_JOINT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 252usize, + concat!("Size of: ", stringify!(tagNET_DVR_DECODER_JOINT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DECODER_JOINT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODER_JOINT_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJointed) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODER_JOINT_PARAM), + "::", + stringify!(byJointed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODER_JOINT_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODER_JOINT_PARAM), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODER_JOINT_PARAM), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wChannel) as usize - ptr as usize }, + 154usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODER_JOINT_PARAM), + "::", + stringify!(wChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDeviceName) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODER_JOINT_PARAM), + "::", + stringify!(sDeviceName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sChanName) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODER_JOINT_PARAM), + "::", + stringify!(sChanName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODER_JOINT_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DECODER_JOINT_PARAM = tagNET_DVR_DECODER_JOINT_PARAM; +pub type LPNET_DVR_DECODER_JOINT_PARAM = *mut tagNET_DVR_DECODER_JOINT_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PIC_VIEW_PARAM { + pub dwSize: DWORD, + pub struCuIp: NET_DVR_IPADDR, + pub wPort: WORD, + pub bySourceIndex: BYTE, + pub byRes: [BYTE; 29usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PIC_VIEW_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 180usize, + concat!("Size of: ", stringify!(tagNET_DVR_PIC_VIEW_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PIC_VIEW_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_VIEW_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCuIp) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_VIEW_PARAM), + "::", + stringify!(struCuIp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_VIEW_PARAM), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySourceIndex) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_VIEW_PARAM), + "::", + stringify!(bySourceIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 151usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_VIEW_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PIC_VIEW_PARAM = tagNET_DVR_PIC_VIEW_PARAM; +pub type LPNET_DVR_PIC_VIEW_PARAM = *mut tagNET_DVR_PIC_VIEW_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PICVIEW_CALLBACKPARAM { + pub dwUserID: DWORD, + pub sDeviceID: [BYTE; 16usize], + pub nPicViewHandle: LONG, + pub wSignalIndex: WORD, + pub wHeadLen: WORD, + pub byHeadBuf: [BYTE; 100usize], + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PICVIEW_CALLBACKPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 160usize, + concat!("Size of: ", stringify!(tagNET_DVR_PICVIEW_CALLBACKPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PICVIEW_CALLBACKPARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwUserID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICVIEW_CALLBACKPARAM), + "::", + stringify!(dwUserID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDeviceID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICVIEW_CALLBACKPARAM), + "::", + stringify!(sDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nPicViewHandle) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICVIEW_CALLBACKPARAM), + "::", + stringify!(nPicViewHandle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSignalIndex) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICVIEW_CALLBACKPARAM), + "::", + stringify!(wSignalIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHeadLen) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICVIEW_CALLBACKPARAM), + "::", + stringify!(wHeadLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHeadBuf) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICVIEW_CALLBACKPARAM), + "::", + stringify!(byHeadBuf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICVIEW_CALLBACKPARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PICVIEW_CALLBACKPARAM = tagNET_DVR_PICVIEW_CALLBACKPARAM; +pub type LPNET_DVR_PICVIEW_CALLBACKPARAM = *mut tagNET_DVR_PICVIEW_CALLBACKPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEVICEID_INFO { + pub dwSize: DWORD, + pub dwDeviceIndex: DWORD, + pub byWallNo: BYTE, + pub byRes1: [BYTE; 27usize], + pub dwChan: DWORD, + pub dwInputSignalIndex: DWORD, + pub byRes2: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEVICEID_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 104usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEVICEID_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEVICEID_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEID_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeviceIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEID_INFO), + "::", + stringify!(dwDeviceIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWallNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEID_INFO), + "::", + stringify!(byWallNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEID_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChan) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEID_INFO), + "::", + stringify!(dwChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInputSignalIndex) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEID_INFO), + "::", + stringify!(dwInputSignalIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICEID_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DEVICEID_INFO = tagNET_DVR_DEVICEID_INFO; +pub type LPNET_DVR_DEVICEID_INFO = *mut tagNET_DVR_DEVICEID_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SINGLE_NETPARAM { + pub dwSize: DWORD, + pub byUseDhcp: BYTE, + pub byRes1: [BYTE; 3usize], + pub struDevIP: NET_DVR_IPADDR, + pub struSubnetMask: NET_DVR_IPADDR, + pub struGateway: NET_DVR_IPADDR, + pub wDevPort: WORD, + pub byMACAddr: [BYTE; 6usize], + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SINGLE_NETPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 464usize, + concat!("Size of: ", stringify!(tagNET_DVR_SINGLE_NETPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SINGLE_NETPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_NETPARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseDhcp) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_NETPARAM), + "::", + stringify!(byUseDhcp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_NETPARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevIP) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_NETPARAM), + "::", + stringify!(struDevIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSubnetMask) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_NETPARAM), + "::", + stringify!(struSubnetMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGateway) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_NETPARAM), + "::", + stringify!(struGateway) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevPort) as usize - ptr as usize }, + 440usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_NETPARAM), + "::", + stringify!(wDevPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMACAddr) as usize - ptr as usize }, + 442usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_NETPARAM), + "::", + stringify!(byMACAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 448usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_NETPARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SINGLE_NETPARAM = tagNET_DVR_SINGLE_NETPARAM; +pub type LPNET_DVR_SINGLE_NETPARAM = *mut tagNET_DVR_SINGLE_NETPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CHAN_INFO { + pub dwSize: DWORD, + pub byValid: BYTE, + pub byRes1: [BYTE; 3usize], + pub sChanName: [BYTE; 32usize], + pub struVideoColor: NET_DVR_COLOR, + pub wResolutionX: WORD, + pub wResolutionY: WORD, + pub byRes2: [BYTE; 40usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CHAN_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(tagNET_DVR_CHAN_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CHAN_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_INFO), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sChanName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_INFO), + "::", + stringify!(sChanName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVideoColor) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_INFO), + "::", + stringify!(struVideoColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wResolutionX) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_INFO), + "::", + stringify!(wResolutionX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wResolutionY) as usize - ptr as usize }, + 46usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_INFO), + "::", + stringify!(wResolutionY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CHAN_INFO = tagNET_DVR_CHAN_INFO; +pub type LPNET_DVR_CHAN_INFO = *mut tagNET_DVR_CHAN_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CODEDEV_INFO { + pub struChanInfo: [NET_DVR_CHAN_INFO; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CODEDEV_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1408usize, + concat!("Size of: ", stringify!(tagNET_DVR_CODEDEV_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CODEDEV_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struChanInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODEDEV_INFO), + "::", + stringify!(struChanInfo) + ) + ); +} +pub type NET_DVR_CODEDEV_INFO = tagNET_DVR_CODEDEV_INFO; +pub type LPNET_DVR_CODEDEV_INFO = *mut tagNET_DVR_CODEDEV_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DECODEDEV_INFO { + pub byRes: [BYTE; 1408usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DECODEDEV_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1408usize, + concat!("Size of: ", stringify!(tagNET_DVR_DECODEDEV_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DECODEDEV_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODEDEV_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DECODEDEV_INFO = tagNET_DVR_DECODEDEV_INFO; +pub type LPNET_DVR_DECODEDEV_INFO = *mut tagNET_DVR_DECODEDEV_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_NETSIGNAL_INFO { + pub dwSize: DWORD, + pub byDevName: [BYTE; 32usize], + pub struPuStream: NET_DVR_PU_STREAM_CFG, + pub byValid: BYTE, + pub byRes1: [BYTE; 3usize], + pub sGroupName: [BYTE; 32usize], + pub wResolutionX: WORD, + pub wResolutionY: WORD, + pub byRes2: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NETSIGNAL_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 592usize, + concat!("Size of: ", stringify!(tagNET_DVR_NETSIGNAL_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NETSIGNAL_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETSIGNAL_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETSIGNAL_INFO), + "::", + stringify!(byDevName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPuStream) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETSIGNAL_INFO), + "::", + stringify!(struPuStream) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 528usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETSIGNAL_INFO), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 529usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETSIGNAL_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sGroupName) as usize - ptr as usize }, + 532usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETSIGNAL_INFO), + "::", + stringify!(sGroupName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wResolutionX) as usize - ptr as usize }, + 564usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETSIGNAL_INFO), + "::", + stringify!(wResolutionX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wResolutionY) as usize - ptr as usize }, + 566usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETSIGNAL_INFO), + "::", + stringify!(wResolutionY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 568usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETSIGNAL_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_NETSIGNAL_INFO = tagNET_DVR_NETSIGNAL_INFO; +pub type LPNET_DVR_NETSIGNAL_INFO = *mut tagNET_DVR_NETSIGNAL_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_NETSIGNALDEV_INFO { + pub struDevInfo: NET_DVR_NETSIGNAL_INFO, + pub byRes1: [BYTE; 816usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NETSIGNALDEV_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1408usize, + concat!("Size of: ", stringify!(tagNET_DVR_NETSIGNALDEV_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NETSIGNALDEV_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETSIGNALDEV_INFO), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 592usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETSIGNALDEV_INFO), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_NETSIGNALDEV_INFO = tagNET_DVR_NETSIGNALDEV_INFO; +pub type LPNET_DVR_NETSIGNALDEV_INFO = *mut tagNET_DVR_NETSIGNALDEV_INFO; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_DIFFDEV_INFO { + pub struCodeDevInfo: NET_DVR_CODEDEV_INFO, + pub struDecodeDevInfo: NET_DVR_DECODEDEV_INFO, + pub struNetSignalInfo: NET_DVR_NETSIGNALDEV_INFO, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DIFFDEV_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1408usize, + concat!("Size of: ", stringify!(tagNET_DVR_DIFFDEV_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DIFFDEV_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCodeDevInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIFFDEV_INFO), + "::", + stringify!(struCodeDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDecodeDevInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIFFDEV_INFO), + "::", + stringify!(struDecodeDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNetSignalInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIFFDEV_INFO), + "::", + stringify!(struNetSignalInfo) + ) + ); +} +pub type NET_DVR_DIFFDEV_INFO = tagNET_DVR_DIFFDEV_INFO; +pub type LPNET_DVR_DIFFDEV_INFO = *mut tagNET_DVR_DIFFDEV_INFO; +pub const tagNET_DVCS_DEVICE_TYPE_NET_DVR_BNC_PROC: tagNET_DVCS_DEVICE_TYPE = 1; +pub const tagNET_DVCS_DEVICE_TYPE_NET_DVR_RGB_PROC: tagNET_DVCS_DEVICE_TYPE = 2; +pub const tagNET_DVCS_DEVICE_TYPE_NET_DVR_STP_PROC: tagNET_DVCS_DEVICE_TYPE = 3; +pub const tagNET_DVCS_DEVICE_TYPE_NET_DVR_DISP_PROC: tagNET_DVCS_DEVICE_TYPE = 4; +pub const tagNET_DVCS_DEVICE_TYPE_NET_DVR_NETSIGNAL: tagNET_DVCS_DEVICE_TYPE = 5; +pub const tagNET_DVCS_DEVICE_TYPE_NET_DVR_SDI_PROC: tagNET_DVCS_DEVICE_TYPE = 6; +pub const tagNET_DVCS_DEVICE_TYPE_NET_DVR_BIW_PROC: tagNET_DVCS_DEVICE_TYPE = 7; +pub const tagNET_DVCS_DEVICE_TYPE_NET_DVR_DON_PROC: tagNET_DVCS_DEVICE_TYPE = 8; +pub const tagNET_DVCS_DEVICE_TYPE_NET_DVR_TVI_PROC: tagNET_DVCS_DEVICE_TYPE = 9; +pub const tagNET_DVCS_DEVICE_TYPE_NET_DVR_DI2_PROC: tagNET_DVCS_DEVICE_TYPE = 10; +pub const tagNET_DVCS_DEVICE_TYPE_NET_DVR_DO2_PROC: tagNET_DVCS_DEVICE_TYPE = 11; +pub const tagNET_DVCS_DEVICE_TYPE_NET_DVR_UHDI_PROC: tagNET_DVCS_DEVICE_TYPE = 12; +pub const tagNET_DVCS_DEVICE_TYPE_NET_DVR_YI2_PROC: tagNET_DVCS_DEVICE_TYPE = 13; +pub const tagNET_DVCS_DEVICE_TYPE_NET_DVR_HI2_PROC: tagNET_DVCS_DEVICE_TYPE = 14; +pub const tagNET_DVCS_DEVICE_TYPE_NET_DVR_VI2_PROC: tagNET_DVCS_DEVICE_TYPE = 15; +pub const tagNET_DVCS_DEVICE_TYPE_NET_DVR_SI2_PROC: tagNET_DVCS_DEVICE_TYPE = 16; +pub const tagNET_DVCS_DEVICE_TYPE_NET_DVR_HO2_PROC: tagNET_DVCS_DEVICE_TYPE = 17; +pub const tagNET_DVCS_DEVICE_TYPE_NET_DVR_S24G_PROC: tagNET_DVCS_DEVICE_TYPE = 18; +pub const tagNET_DVCS_DEVICE_TYPE_NET_DVR_S24X_PROC: tagNET_DVCS_DEVICE_TYPE = 19; +pub type tagNET_DVCS_DEVICE_TYPE = ::std::os::raw::c_uint; +pub use self::tagNET_DVCS_DEVICE_TYPE as NET_DVCS_DEVICE_TYPE; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SINGLE_DEV_INFO { + pub dwSize: DWORD, + pub dwSoftVersion: DWORD, + pub dwSoftwareBuildDate: DWORD, + pub byUseInSys: BYTE, + pub byDevStatus: BYTE, + pub byDeviceType: BYTE, + pub byRes1: [BYTE; 17usize], + pub sDevName: [BYTE; 32usize], + pub struEtherNet: [NET_DVR_SINGLE_NETPARAM; 2usize], + pub sSerialNumber: [BYTE; 48usize], + pub struSubDevInfo: NET_DVR_DIFFDEV_INFO, + pub dwDeviceIndex: DWORD, + pub dwSubBoardNo: DWORD, + pub bySubSysNo: BYTE, + pub byRes3: [BYTE; 3usize], + pub wStartAudioTalkChanNo: WORD, + pub wAudioTalkChanNum: WORD, + pub byRes2: [BYTE; 36usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SINGLE_DEV_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2500usize, + concat!("Size of: ", stringify!(tagNET_DVR_SINGLE_DEV_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SINGLE_DEV_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_DEV_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSoftVersion) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_DEV_INFO), + "::", + stringify!(dwSoftVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSoftwareBuildDate) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_DEV_INFO), + "::", + stringify!(dwSoftwareBuildDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseInSys) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_DEV_INFO), + "::", + stringify!(byUseInSys) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevStatus) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_DEV_INFO), + "::", + stringify!(byDevStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceType) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_DEV_INFO), + "::", + stringify!(byDeviceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_DEV_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDevName) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_DEV_INFO), + "::", + stringify!(sDevName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEtherNet) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_DEV_INFO), + "::", + stringify!(struEtherNet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSerialNumber) as usize - ptr as usize }, + 992usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_DEV_INFO), + "::", + stringify!(sSerialNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSubDevInfo) as usize - ptr as usize }, + 1040usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_DEV_INFO), + "::", + stringify!(struSubDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeviceIndex) as usize - ptr as usize }, + 2448usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_DEV_INFO), + "::", + stringify!(dwDeviceIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSubBoardNo) as usize - ptr as usize }, + 2452usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_DEV_INFO), + "::", + stringify!(dwSubBoardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSysNo) as usize - ptr as usize }, + 2456usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_DEV_INFO), + "::", + stringify!(bySubSysNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 2457usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_DEV_INFO), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStartAudioTalkChanNo) as usize - ptr as usize }, + 2460usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_DEV_INFO), + "::", + stringify!(wStartAudioTalkChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAudioTalkChanNum) as usize - ptr as usize }, + 2462usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_DEV_INFO), + "::", + stringify!(wAudioTalkChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 2464usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_DEV_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SINGLE_DEV_INFO = tagNET_DVR_SINGLE_DEV_INFO; +pub type LPNET_DVR_SINGLE_DEV_INFO = *mut tagNET_DVR_SINGLE_DEV_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEVLIST { + pub dwSize: DWORD, + pub dwDevNums: DWORD, + pub pBuffer: *mut BYTE, + pub byRes1: [BYTE; 3usize], + pub dwBufLen: DWORD, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEVLIST() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEVLIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEVLIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVLIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDevNums) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVLIST), + "::", + stringify!(dwDevNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVLIST), + "::", + stringify!(pBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVLIST), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBufLen) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVLIST), + "::", + stringify!(dwBufLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVLIST), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DEVLIST = tagNET_DVR_DEVLIST; +pub type LPNET_DVR_DEVLIST = *mut tagNET_DVR_DEVLIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEV_BASE_INFO { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byDeviceType: BYTE, + pub byRes1: [BYTE; 2usize], + pub sDevName: [BYTE; 32usize], + pub byRes2: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEV_BASE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEV_BASE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEV_BASE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_BASE_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_BASE_INFO), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_BASE_INFO), + "::", + stringify!(byDeviceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_BASE_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDevName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_BASE_INFO), + "::", + stringify!(sDevName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_BASE_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DEV_BASE_INFO = tagNET_DVR_DEV_BASE_INFO; +pub type LPNET_DVR_DEV_BASE_INFO = *mut tagNET_DVR_DEV_BASE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_NETPARAM { + pub dwSize: DWORD, + pub struEtherNet: [NET_DVR_SINGLE_NETPARAM; 2usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NETPARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 996usize, + concat!("Size of: ", stringify!(tagNET_DVR_NETPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NETPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETPARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEtherNet) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETPARAM), + "::", + stringify!(struEtherNet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 932usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETPARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_NETPARAM = tagNET_DVR_NETPARAM; +pub type LPNET_DVR_NETPARAM = *mut tagNET_DVR_NETPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DISP_SCREEN { + pub dwSize: DWORD, + pub wScreenID: WORD, + pub byWallNo: BYTE, + pub byRes1: BYTE, + pub dwDeviceIndex: DWORD, + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DISP_SCREEN() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28usize, + concat!("Size of: ", stringify!(tagNET_DVR_DISP_SCREEN)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DISP_SCREEN)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_SCREEN), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wScreenID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_SCREEN), + "::", + stringify!(wScreenID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWallNo) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_SCREEN), + "::", + stringify!(byWallNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_SCREEN), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeviceIndex) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_SCREEN), + "::", + stringify!(dwDeviceIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISP_SCREEN), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DISP_SCREEN = tagNET_DVR_DISP_SCREEN; +pub type LPNET_DVR_DISP_SCREEN = *mut tagNET_DVR_DISP_SCREEN; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TEXTSHOW { + pub dwSize: DWORD, + pub byShowText: BYTE, + pub byRes: [BYTE; 35usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TEXTSHOW() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_TEXTSHOW)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TEXTSHOW)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEXTSHOW), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShowText) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEXTSHOW), + "::", + stringify!(byShowText) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEXTSHOW), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TEXTSHOW = tagNET_DVR_TEXTSHOW; +pub type LPNET_DVR_TEXTSHOW = *mut tagNET_DVR_TEXTSHOW; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCREENLIST { + pub dwSize: DWORD, + pub byWallNo: BYTE, + pub byRes: [BYTE; 11usize], + pub dwScreenNums: DWORD, + pub pBuffer: *mut BYTE, + pub dwBufLen: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREENLIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREENLIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREENLIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENLIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWallNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENLIST), + "::", + stringify!(byWallNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENLIST), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwScreenNums) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENLIST), + "::", + stringify!(dwScreenNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENLIST), + "::", + stringify!(pBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBufLen) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREENLIST), + "::", + stringify!(dwBufLen) + ) + ); +} +pub type NET_DVR_SCREENLIST = tagNET_DVR_SCREENLIST; +pub type LPNET_DVR_SCREENLIST = *mut tagNET_DVR_SCREENLIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OPERATE_DEVICE { + pub dwSize: DWORD, + pub dwSubCommand: DWORD, + pub dwDeviceIndex: DWORD, + pub byRes: [BYTE; 44usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OPERATE_DEVICE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_OPERATE_DEVICE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OPERATE_DEVICE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_DEVICE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSubCommand) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_DEVICE), + "::", + stringify!(dwSubCommand) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeviceIndex) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_DEVICE), + "::", + stringify!(dwDeviceIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_DEVICE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_OPERATE_DEVICE = tagNET_DVR_OPERATE_DEVICE; +pub type LPNET_DVR_OPERATE_DEVICE = *mut tagNET_DVR_OPERATE_DEVICE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_UPGRADE_STATE { + pub dwProgress: DWORD, + pub byState: BYTE, + pub byRes2: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_UPGRADE_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_UPGRADE_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_UPGRADE_STATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwProgress) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_STATE), + "::", + stringify!(dwProgress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byState) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_STATE), + "::", + stringify!(byState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_STATE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_UPGRADE_STATE = tagNET_DVR_UPGRADE_STATE; +pub type LPNET_DVR_UPGRADE_STATE = *mut tagNET_DVR_UPGRADE_STATE; +pub type DVCS_UPGRADESTATE_CB = ::std::option::Option< + unsafe extern "C" fn( + nUpgradeHandle: LONG, + pBuffer: *mut BYTE, + dwBufSize: DWORD, + pUser: *mut ::std::os::raw::c_void, + ), +>; +pub const PIC_PREVIEW_DATATYPE_NET_DVR_DATA_BMP: PIC_PREVIEW_DATATYPE = 0; +pub const PIC_PREVIEW_DATATYPE_NET_DVR_START_CALLBACK: PIC_PREVIEW_DATATYPE = 1; +pub const PIC_PREVIEW_DATATYPE_NET_DVR_STREAM_SYSHEAD: PIC_PREVIEW_DATATYPE = 2; +pub const PIC_PREVIEW_DATATYPE_NET_DVR_STREAM_DATA: PIC_PREVIEW_DATATYPE = 3; +pub type PIC_PREVIEW_DATATYPE = ::std::os::raw::c_uint; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_START_PIC_VIEW_INFO { + pub dwSize: DWORD, + pub dwSignalIndex: DWORD, + pub dwDeviceIndex: DWORD, + pub byRes1: [BYTE; 12usize], + pub byChanIndex: BYTE, + pub byRes2: [BYTE; 3usize], + pub dwScreenNum: DWORD, + pub dwLayer: DWORD, + pub dwResolution: DWORD, + pub byFrame: BYTE, + pub bySupportStreamView: BYTE, + pub byRes3: [BYTE; 14usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_START_PIC_VIEW_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_START_PIC_VIEW_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_START_PIC_VIEW_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PIC_VIEW_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSignalIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PIC_VIEW_INFO), + "::", + stringify!(dwSignalIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeviceIndex) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PIC_VIEW_INFO), + "::", + stringify!(dwDeviceIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PIC_VIEW_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanIndex) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PIC_VIEW_INFO), + "::", + stringify!(byChanIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PIC_VIEW_INFO), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwScreenNum) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PIC_VIEW_INFO), + "::", + stringify!(dwScreenNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLayer) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PIC_VIEW_INFO), + "::", + stringify!(dwLayer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwResolution) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PIC_VIEW_INFO), + "::", + stringify!(dwResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFrame) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PIC_VIEW_INFO), + "::", + stringify!(byFrame) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportStreamView) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PIC_VIEW_INFO), + "::", + stringify!(bySupportStreamView) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PIC_VIEW_INFO), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_START_PIC_VIEW_INFO = tagNET_DVR_START_PIC_VIEW_INFO; +pub type LPNET_DVR_START_PIC_VIEW_INFO = *mut tagNET_DVR_START_PIC_VIEW_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DVCS_STATE_ALARM { + pub dwSize: DWORD, + pub byAlarmType: BYTE, + pub byDeviceType: BYTE, + pub byWallNo: BYTE, + pub byDeviceChanIndex: BYTE, + pub dwDeviceIndex: DWORD, + pub wResolutionX: WORD, + pub wResolutionY: WORD, + pub wTemperature: WORD, + pub byRes: [BYTE; 86usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DVCS_STATE_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 104usize, + concat!("Size of: ", stringify!(tagNET_DVR_DVCS_STATE_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DVCS_STATE_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DVCS_STATE_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DVCS_STATE_ALARM), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DVCS_STATE_ALARM), + "::", + stringify!(byDeviceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWallNo) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DVCS_STATE_ALARM), + "::", + stringify!(byWallNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceChanIndex) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DVCS_STATE_ALARM), + "::", + stringify!(byDeviceChanIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeviceIndex) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DVCS_STATE_ALARM), + "::", + stringify!(dwDeviceIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wResolutionX) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DVCS_STATE_ALARM), + "::", + stringify!(wResolutionX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wResolutionY) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DVCS_STATE_ALARM), + "::", + stringify!(wResolutionY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTemperature) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DVCS_STATE_ALARM), + "::", + stringify!(wTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DVCS_STATE_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DVCS_STATE_ALARM = tagNET_DVR_DVCS_STATE_ALARM; +pub type LPNET_DVR_DVCS_STATE_ALARM = *mut tagNET_DVR_DVCS_STATE_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PIC_ADJUST { + pub dwSize: DWORD, + pub bySubCommand: BYTE, + pub byScale: BYTE, + pub byPictureProportion: BYTE, + pub byRes: [BYTE; 29usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PIC_ADJUST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_PIC_ADJUST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PIC_ADJUST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_ADJUST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubCommand) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_ADJUST), + "::", + stringify!(bySubCommand) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScale) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_ADJUST), + "::", + stringify!(byScale) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPictureProportion) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_ADJUST), + "::", + stringify!(byPictureProportion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_ADJUST), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PIC_ADJUST = tagNET_DVR_PIC_ADJUST; +pub type LPNET_DVR_PIC_ADJUST = *mut tagNET_DVR_PIC_ADJUST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PICTURE_PARAM { + pub dwSize: DWORD, + pub byControlCommand: BYTE, + pub byUseType: BYTE, + pub byWallNo: BYTE, + pub byPictureNo: BYTE, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PICTURE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_PICTURE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PICTURE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICTURE_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byControlCommand) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICTURE_PARAM), + "::", + stringify!(byControlCommand) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICTURE_PARAM), + "::", + stringify!(byUseType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWallNo) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICTURE_PARAM), + "::", + stringify!(byWallNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPictureNo) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICTURE_PARAM), + "::", + stringify!(byPictureNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PICTURE_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PICTURE_PARAM = tagNET_DVR_PICTURE_PARAM; +pub type LPNET_DVR_PICTURE_PARAM = *mut tagNET_DVR_PICTURE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_POE_CHANNEL_ADD_MODE { + pub dwSize: DWORD, + pub byAddMode: BYTE, + pub byRes1: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_POE_CHANNEL_ADD_MODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_POE_CHANNEL_ADD_MODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_POE_CHANNEL_ADD_MODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POE_CHANNEL_ADD_MODE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POE_CHANNEL_ADD_MODE), + "::", + stringify!(byAddMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POE_CHANNEL_ADD_MODE), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_POE_CHANNEL_ADD_MODE = tagNET_DVR_POE_CHANNEL_ADD_MODE; +pub type LPNET_DVR_POE_CHANNEL_ADD_MODE = *mut tagNET_DVR_POE_CHANNEL_ADD_MODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ESATA_MINISAS_USAGE { + pub dwSize: DWORD, + pub byESATAUsage: [BYTE; 16usize], + pub byMiniSASUsage: [BYTE; 96usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ESATA_MINISAS_USAGE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!("Size of: ", stringify!(tagNET_DVR_ESATA_MINISAS_USAGE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ESATA_MINISAS_USAGE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ESATA_MINISAS_USAGE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byESATAUsage) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ESATA_MINISAS_USAGE), + "::", + stringify!(byESATAUsage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMiniSASUsage) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ESATA_MINISAS_USAGE), + "::", + stringify!(byMiniSASUsage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ESATA_MINISAS_USAGE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ESATA_MINISAS_USAGE = tagNET_DVR_ESATA_MINISAS_USAGE; +pub type LPNET_DVR_ESATA_MINISAS_USAGE = *mut tagNET_DVR_ESATA_MINISAS_USAGE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BACKUP_LOG_PARAM { + pub dwSize: DWORD, + pub byDiskDesc: [BYTE; 32usize], + pub byHardDisk: [BYTE; 128usize], + pub byBackupHardDiskNum: BYTE, + pub byContinue: BYTE, + pub byAllLogBackUp: BYTE, + pub byRes: [BYTE; 29usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BACKUP_LOG_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 196usize, + concat!("Size of: ", stringify!(tagNET_DVR_BACKUP_LOG_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BACKUP_LOG_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_LOG_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDiskDesc) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_LOG_PARAM), + "::", + stringify!(byDiskDesc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHardDisk) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_LOG_PARAM), + "::", + stringify!(byHardDisk) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBackupHardDiskNum) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_LOG_PARAM), + "::", + stringify!(byBackupHardDiskNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byContinue) as usize - ptr as usize }, + 165usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_LOG_PARAM), + "::", + stringify!(byContinue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAllLogBackUp) as usize - ptr as usize }, + 166usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_LOG_PARAM), + "::", + stringify!(byAllLogBackUp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 167usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_LOG_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BACKUP_LOG_PARAM = tagNET_DVR_BACKUP_LOG_PARAM; +pub type LPNET_DVR_BACKUP_LOG_PARAM = *mut tagNET_DVR_BACKUP_LOG_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DIGITAL_CHANNEL_STATE { + pub dwSize: DWORD, + pub byDigitalAudioChanTalkState: [BYTE; 64usize], + pub byDigitalChanState: [BYTE; 64usize], + pub byDigitalAudioChanTalkStateEx: [BYTE; 192usize], + pub byDigitalChanStateEx: [BYTE; 192usize], + pub byAnalogChanState: [BYTE; 32usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DIGITAL_CHANNEL_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 580usize, + concat!("Size of: ", stringify!(tagNET_DVR_DIGITAL_CHANNEL_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_DIGITAL_CHANNEL_STATE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIGITAL_CHANNEL_STATE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDigitalAudioChanTalkState) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIGITAL_CHANNEL_STATE), + "::", + stringify!(byDigitalAudioChanTalkState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDigitalChanState) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIGITAL_CHANNEL_STATE), + "::", + stringify!(byDigitalChanState) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byDigitalAudioChanTalkStateEx) as usize - ptr as usize + }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIGITAL_CHANNEL_STATE), + "::", + stringify!(byDigitalAudioChanTalkStateEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDigitalChanStateEx) as usize - ptr as usize }, + 324usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIGITAL_CHANNEL_STATE), + "::", + stringify!(byDigitalChanStateEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAnalogChanState) as usize - ptr as usize }, + 516usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIGITAL_CHANNEL_STATE), + "::", + stringify!(byAnalogChanState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 548usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIGITAL_CHANNEL_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DIGITAL_CHANNEL_STATE = tagNET_DVR_DIGITAL_CHANNEL_STATE; +pub type LPNET_DVR_DIGITAL_CHANNEL_STATE = *mut tagNET_DVR_DIGITAL_CHANNEL_STATE; +pub const NET_SDK_DIGITAL_CHANNEL_STATUS_NET_SDK_DC_STATUS_CONNECTED: + NET_SDK_DIGITAL_CHANNEL_STATUS = 1; +pub const NET_SDK_DIGITAL_CHANNEL_STATUS_NET_SDK_DC_STATUS_CONNECTING: + NET_SDK_DIGITAL_CHANNEL_STATUS = 2; +pub const NET_SDK_DIGITAL_CHANNEL_STATUS_NET_SDK_DC_STATUS_BAND_WIDTH_EXCEED: + NET_SDK_DIGITAL_CHANNEL_STATUS = 3; +pub const NET_SDK_DIGITAL_CHANNEL_STATUS_NET_SDK_DC_STATUS_DOMAIN_ERROR: + NET_SDK_DIGITAL_CHANNEL_STATUS = 4; +pub const NET_SDK_DIGITAL_CHANNEL_STATUS_NET_SDK_DC_STATUS_CHANNEL_ERROR: + NET_SDK_DIGITAL_CHANNEL_STATUS = 5; +pub const NET_SDK_DIGITAL_CHANNEL_STATUS_NET_SDK_DC_STATUS_ACCOUNT_ERROR: + NET_SDK_DIGITAL_CHANNEL_STATUS = 6; +pub const NET_SDK_DIGITAL_CHANNEL_STATUS_NET_SDK_DC_STATUS_STREAM_TYPE_NOT_SUPPORT: + NET_SDK_DIGITAL_CHANNEL_STATUS = 7; +pub const NET_SDK_DIGITAL_CHANNEL_STATUS_NET_SDK_DC_STATUS_CONFLICT_WITH_DVR: + NET_SDK_DIGITAL_CHANNEL_STATUS = 8; +pub const NET_SDK_DIGITAL_CHANNEL_STATUS_NET_SDK_DC_STATUS_CONFLICT_WITH_IPC: + NET_SDK_DIGITAL_CHANNEL_STATUS = 9; +pub const NET_SDK_DIGITAL_CHANNEL_STATUS_NET_SDK_DC_STATUS_NETWORK_UNREACHBALE: + NET_SDK_DIGITAL_CHANNEL_STATUS = 10; +pub const NET_SDK_DIGITAL_CHANNEL_STATUS_NET_SDK_DC_STATUS_IPC_NOT_EXIST: + NET_SDK_DIGITAL_CHANNEL_STATUS = 11; +pub const NET_SDK_DIGITAL_CHANNEL_STATUS_NET_SDK_DC_STATUS_IPC_EXCEPTION: + NET_SDK_DIGITAL_CHANNEL_STATUS = 12; +pub const NET_SDK_DIGITAL_CHANNEL_STATUS_NET_SDK_DC_STATUS_OTHER_ERROR: + NET_SDK_DIGITAL_CHANNEL_STATUS = 13; +pub const NET_SDK_DIGITAL_CHANNEL_STATUS_NET_SDK_DC_STATUS_RESOLUTION_NOT_SUPPORT: + NET_SDK_DIGITAL_CHANNEL_STATUS = 14; +pub const NET_SDK_DIGITAL_CHANNEL_STATUS_NET_SDK_DC_STATUS_IPC_LAN_ERR: + NET_SDK_DIGITAL_CHANNEL_STATUS = 15; +pub const NET_SDK_DIGITAL_CHANNEL_STATUS_NET_SDK_DC_STATUS_USER_LOCKED: + NET_SDK_DIGITAL_CHANNEL_STATUS = 16; +pub const NET_SDK_DIGITAL_CHANNEL_STATUS_NET_SDK_DC_STATUS_NOT_ACTIVATED: + NET_SDK_DIGITAL_CHANNEL_STATUS = 17; +pub const NET_SDK_DIGITAL_CHANNEL_STATUS_NET_SDK_DC_STATUS_USER_NOT_EXIST: + NET_SDK_DIGITAL_CHANNEL_STATUS = 18; +pub const NET_SDK_DIGITAL_CHANNEL_STATUS_NET_SDK_DC_STATUS_IPC_UNREGISTERED: + NET_SDK_DIGITAL_CHANNEL_STATUS = 19; +pub const NET_SDK_DIGITAL_CHANNEL_STATUS_NET_SDK_DC_STATUS_POE_PORT_DETECTING: + NET_SDK_DIGITAL_CHANNEL_STATUS = 20; +pub const NET_SDK_DIGITAL_CHANNEL_STATUS_NET_SDK_DC_STATUS_RESOURCE_EXCEED: + NET_SDK_DIGITAL_CHANNEL_STATUS = 21; +pub const NET_SDK_DIGITAL_CHANNEL_STATUS_NET_SDK_DC_STATUS_NEED_TO_REPAIR: + NET_SDK_DIGITAL_CHANNEL_STATUS = 22; +pub const NET_SDK_DIGITAL_CHANNEL_STATUS_NET_SDK_DC_STATUS_ACTIVATING: + NET_SDK_DIGITAL_CHANNEL_STATUS = 23; +pub const NET_SDK_DIGITAL_CHANNEL_STATUS_NET_SDK_DC_STATUS_TOKEN_AUTHENTCATE_FAILED: + NET_SDK_DIGITAL_CHANNEL_STATUS = 24; +pub type NET_SDK_DIGITAL_CHANNEL_STATUS = ::std::os::raw::c_uint; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_BASEINFO { + pub dwSize: DWORD, + pub byMainVer: [BYTE; 32usize], + pub byMprVer: [BYTE; 32usize], + pub byBvtVer: [BYTE; 32usize], + pub byLptVer: [BYTE; 32usize], + pub byTvdVer: [BYTE; 32usize], + pub byTldVer: [BYTE; 32usize], + pub byRes: [BYTE; 252usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_BASEINFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 448usize, + concat!("Size of: ", stringify!(tagNET_ITS_BASEINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITS_BASEINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_BASEINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainVer) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_BASEINFO), + "::", + stringify!(byMainVer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMprVer) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_BASEINFO), + "::", + stringify!(byMprVer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBvtVer) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_BASEINFO), + "::", + stringify!(byBvtVer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLptVer) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_BASEINFO), + "::", + stringify!(byLptVer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTvdVer) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_BASEINFO), + "::", + stringify!(byTvdVer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTldVer) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_BASEINFO), + "::", + stringify!(byTldVer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_BASEINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITS_BASEINFO = tagNET_ITS_BASEINFO; +pub type LPNET_ITS_BASEINFO = *mut tagNET_ITS_BASEINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_IMGMERGE_CFG { + pub dwSize: DWORD, + pub byIsMerge: BYTE, + pub byCloseupProportion: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwOneMergeType: DWORD, + pub dwTwoMergeType: DWORD, + pub dwThreeMergeType: DWORD, + pub dwJpegQuality: DWORD, + pub dwCloseupIndex: DWORD, + pub dwMerageMaxSize: DWORD, + pub wCloseupDeviation: WORD, + pub byRes: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_IMGMERGE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(tagNET_ITS_IMGMERGE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITS_IMGMERGE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_IMGMERGE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsMerge) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_IMGMERGE_CFG), + "::", + stringify!(byIsMerge) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCloseupProportion) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_IMGMERGE_CFG), + "::", + stringify!(byCloseupProportion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_IMGMERGE_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOneMergeType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_IMGMERGE_CFG), + "::", + stringify!(dwOneMergeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTwoMergeType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_IMGMERGE_CFG), + "::", + stringify!(dwTwoMergeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwThreeMergeType) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_IMGMERGE_CFG), + "::", + stringify!(dwThreeMergeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwJpegQuality) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_IMGMERGE_CFG), + "::", + stringify!(dwJpegQuality) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCloseupIndex) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_IMGMERGE_CFG), + "::", + stringify!(dwCloseupIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMerageMaxSize) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_IMGMERGE_CFG), + "::", + stringify!(dwMerageMaxSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCloseupDeviation) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_IMGMERGE_CFG), + "::", + stringify!(wCloseupDeviation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 34usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_IMGMERGE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITS_IMGMERGE_CFG = tagNET_ITS_IMGMERGE_CFG; +pub type LPNET_ITS_IMGMERGE_CFG = *mut tagNET_ITS_IMGMERGE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_TRAFFIC_DATA_HOST { + pub struHostAddr: NET_DVR_IPADDR, + pub wHostPort: WORD, + pub byRes1: [BYTE; 2usize], + pub dwDataType: DWORD, + pub bySuspendUpload: BYTE, + pub byUploadStrategy: BYTE, + pub wUploadInterval: WORD, + pub dwUploadTimeOut: DWORD, + pub byRes: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_TRAFFIC_DATA_HOST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 184usize, + concat!("Size of: ", stringify!(tagNET_ITS_TRAFFIC_DATA_HOST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITS_TRAFFIC_DATA_HOST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHostAddr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_DATA_HOST), + "::", + stringify!(struHostAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHostPort) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_DATA_HOST), + "::", + stringify!(wHostPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 146usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_DATA_HOST), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataType) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_DATA_HOST), + "::", + stringify!(dwDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySuspendUpload) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_DATA_HOST), + "::", + stringify!(bySuspendUpload) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUploadStrategy) as usize - ptr as usize }, + 153usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_DATA_HOST), + "::", + stringify!(byUploadStrategy) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wUploadInterval) as usize - ptr as usize }, + 154usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_DATA_HOST), + "::", + stringify!(wUploadInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwUploadTimeOut) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_DATA_HOST), + "::", + stringify!(dwUploadTimeOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_DATA_HOST), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITS_TRAFFIC_DATA_HOST = tagNET_ITS_TRAFFIC_DATA_HOST; +pub type LPNET_ITS_TRAFFIC_DATA_HOST = *mut tagNET_ITS_TRAFFIC_DATA_HOST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_UPLOAD_CFG { + pub dwSize: DWORD, + pub struRemoteDataHost1: NET_ITS_TRAFFIC_DATA_HOST, + pub struRemoteDataHost2: NET_ITS_TRAFFIC_DATA_HOST, +} +#[test] +fn bindgen_test_layout_tagNET_ITS_UPLOAD_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 372usize, + concat!("Size of: ", stringify!(tagNET_ITS_UPLOAD_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITS_UPLOAD_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_UPLOAD_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRemoteDataHost1) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_UPLOAD_CFG), + "::", + stringify!(struRemoteDataHost1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRemoteDataHost2) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_UPLOAD_CFG), + "::", + stringify!(struRemoteDataHost2) + ) + ); +} +pub type NET_ITS_UPLOAD_CFG = tagNET_ITS_UPLOAD_CFG; +pub type LPNET_ITS_UPLOAD_CFG = *mut tagNET_ITS_UPLOAD_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SYSTEM_TIME { + pub wYear: WORD, + pub wMonth: WORD, + pub wDay: WORD, + pub wHour: WORD, + pub wMinute: WORD, + pub wSecond: WORD, + pub wMilliSec: WORD, + pub byRes: [BYTE; 2usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SYSTEM_TIME() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_SYSTEM_TIME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SYSTEM_TIME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wYear) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SYSTEM_TIME), + "::", + stringify!(wYear) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMonth) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SYSTEM_TIME), + "::", + stringify!(wMonth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDay) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SYSTEM_TIME), + "::", + stringify!(wDay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHour) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SYSTEM_TIME), + "::", + stringify!(wHour) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMinute) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SYSTEM_TIME), + "::", + stringify!(wMinute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSecond) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SYSTEM_TIME), + "::", + stringify!(wSecond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMilliSec) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SYSTEM_TIME), + "::", + stringify!(wMilliSec) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SYSTEM_TIME), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SYSTEM_TIME = tagNET_DVR_SYSTEM_TIME; +pub type LPNET_DVR_SYSTEM_TIME = *mut tagNET_DVR_SYSTEM_TIME; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_TRAFFIC_DATA_INFO { + pub dwDataQuantity: DWORD, + pub dwDataRsendQuantity: DWORD, + pub struStartTime: NET_DVR_SYSTEM_TIME, + pub struEndTime: NET_DVR_SYSTEM_TIME, + pub struDataHost: NET_DVR_IPADDR, +} +#[test] +fn bindgen_test_layout_tagNET_ITS_TRAFFIC_DATA_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 184usize, + concat!("Size of: ", stringify!(tagNET_ITS_TRAFFIC_DATA_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITS_TRAFFIC_DATA_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataQuantity) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_DATA_INFO), + "::", + stringify!(dwDataQuantity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataRsendQuantity) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_DATA_INFO), + "::", + stringify!(dwDataRsendQuantity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_DATA_INFO), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_DATA_INFO), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDataHost) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_DATA_INFO), + "::", + stringify!(struDataHost) + ) + ); +} +pub type NET_ITS_TRAFFIC_DATA_INFO = tagNET_ITS_TRAFFIC_DATA_INFO; +pub type LPNET_ITS_TRAFFIC_DATA_INFO = *mut tagNET_ITS_TRAFFIC_DATA_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_WORKSTATE { + pub dwSize: DWORD, + pub byDevName: [BYTE; 32usize], + pub dwRunTime: DWORD, + pub struTrafficDataInfo: [NET_ITS_TRAFFIC_DATA_INFO; 2usize], + pub dwMemoryUsage: DWORD, + pub dwCpuUsage: DWORD, + pub dwDevTemperature: DWORD, + pub dwDeviceStatic: DWORD, + pub struHardDiskStatic: [NET_DVR_DISKSTATE; 33usize], + pub struChanStatic: [NET_DVR_CHANNELSTATE_V30; 64usize], + pub byAlarmInStatic: [BYTE; 160usize], + pub byAlarmOutStatic: [BYTE; 96usize], + pub dwLocalDisplay: DWORD, + pub byAudioInChanStatus: [BYTE; 8usize], + pub byRes: [BYTE; 36usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_WORKSTATE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 58212usize, + concat!("Size of: ", stringify!(tagNET_ITS_WORKSTATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITS_WORKSTATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_WORKSTATE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_WORKSTATE), + "::", + stringify!(byDevName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRunTime) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_WORKSTATE), + "::", + stringify!(dwRunTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTrafficDataInfo) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_WORKSTATE), + "::", + stringify!(struTrafficDataInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMemoryUsage) as usize - ptr as usize }, + 408usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_WORKSTATE), + "::", + stringify!(dwMemoryUsage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCpuUsage) as usize - ptr as usize }, + 412usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_WORKSTATE), + "::", + stringify!(dwCpuUsage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDevTemperature) as usize - ptr as usize }, + 416usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_WORKSTATE), + "::", + stringify!(dwDevTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeviceStatic) as usize - ptr as usize }, + 420usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_WORKSTATE), + "::", + stringify!(dwDeviceStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHardDiskStatic) as usize - ptr as usize }, + 424usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_WORKSTATE), + "::", + stringify!(struHardDiskStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struChanStatic) as usize - ptr as usize }, + 820usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_WORKSTATE), + "::", + stringify!(struChanStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInStatic) as usize - ptr as usize }, + 57908usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_WORKSTATE), + "::", + stringify!(byAlarmInStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutStatic) as usize - ptr as usize }, + 58068usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_WORKSTATE), + "::", + stringify!(byAlarmOutStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalDisplay) as usize - ptr as usize }, + 58164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_WORKSTATE), + "::", + stringify!(dwLocalDisplay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioInChanStatus) as usize - ptr as usize }, + 58168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_WORKSTATE), + "::", + stringify!(byAudioInChanStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 58176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_WORKSTATE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITS_WORKSTATE = tagNET_ITS_WORKSTATE; +pub type LPNET_ITS_WORKSTATE = *mut tagNET_ITS_WORKSTATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_ECT_WORKSTATE_COMMAND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_ECT_WORKSTATE_COMMAND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_ITS_ECT_WORKSTATE_COMMAND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITS_ECT_WORKSTATE_COMMAND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECT_WORKSTATE_COMMAND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECT_WORKSTATE_COMMAND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECT_WORKSTATE_COMMAND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITS_ECT_WORKSTATE_COMMAND = tagNET_ITS_ECT_WORKSTATE_COMMAND; +pub type LPNET_ITS_ECT_WORKSTATE_COMMAND = *mut tagNET_ITS_ECT_WORKSTATE_COMMAND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_ECTWORKSTATE { + pub dwSize: DWORD, + pub byDevName: [BYTE; 32usize], + pub dwRunTime: DWORD, + pub struTrafficDataInfo: [NET_ITS_TRAFFIC_DATA_INFO; 2usize], + pub dwMemoryUsage: DWORD, + pub dwCpuUsage: DWORD, + pub dwDevTemperature: DWORD, + pub dwDeviceStatic: DWORD, + pub struHardDiskStatic: [NET_DVR_DISKSTATE; 33usize], + pub byAlarmInStatic: [BYTE; 160usize], + pub byAlarmOutStatic: [BYTE; 96usize], + pub dwLocalDisplay: DWORD, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_ECTWORKSTATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1336usize, + concat!("Size of: ", stringify!(tagNET_ITS_ECTWORKSTATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITS_ECTWORKSTATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECTWORKSTATE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECTWORKSTATE), + "::", + stringify!(byDevName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRunTime) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECTWORKSTATE), + "::", + stringify!(dwRunTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTrafficDataInfo) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECTWORKSTATE), + "::", + stringify!(struTrafficDataInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMemoryUsage) as usize - ptr as usize }, + 408usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECTWORKSTATE), + "::", + stringify!(dwMemoryUsage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCpuUsage) as usize - ptr as usize }, + 412usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECTWORKSTATE), + "::", + stringify!(dwCpuUsage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDevTemperature) as usize - ptr as usize }, + 416usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECTWORKSTATE), + "::", + stringify!(dwDevTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeviceStatic) as usize - ptr as usize }, + 420usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECTWORKSTATE), + "::", + stringify!(dwDeviceStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHardDiskStatic) as usize - ptr as usize }, + 424usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECTWORKSTATE), + "::", + stringify!(struHardDiskStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInStatic) as usize - ptr as usize }, + 820usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECTWORKSTATE), + "::", + stringify!(byAlarmInStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutStatic) as usize - ptr as usize }, + 980usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECTWORKSTATE), + "::", + stringify!(byAlarmOutStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalDisplay) as usize - ptr as usize }, + 1076usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECTWORKSTATE), + "::", + stringify!(dwLocalDisplay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1080usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECTWORKSTATE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITS_ECTWORKSTATE = tagNET_ITS_ECTWORKSTATE; +pub type LPNET_ITS_ECTWORKSTATE = *mut tagNET_ITS_ECTWORKSTATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_PICTURE_INFO { + pub dwDataLen: DWORD, + pub byType: BYTE, + pub byDataType: BYTE, + pub byCloseUpType: BYTE, + pub byPicRecogMode: BYTE, + pub dwRedLightTime: DWORD, + pub byAbsTime: [BYTE; 32usize], + pub struPlateRect: NET_VCA_RECT, + pub struPlateRecgRect: NET_VCA_RECT, + pub pBuffer: *mut BYTE, + pub dwUTCTime: DWORD, + pub byCompatibleAblity: BYTE, + pub byTimeDiffFlag: BYTE, + pub cTimeDifferenceH: ::std::os::raw::c_char, + pub cTimeDifferenceM: ::std::os::raw::c_char, + pub byRes2: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_PICTURE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 104usize, + concat!("Size of: ", stringify!(tagNET_ITS_PICTURE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_ITS_PICTURE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PICTURE_INFO), + "::", + stringify!(dwDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PICTURE_INFO), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PICTURE_INFO), + "::", + stringify!(byDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCloseUpType) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PICTURE_INFO), + "::", + stringify!(byCloseUpType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicRecogMode) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PICTURE_INFO), + "::", + stringify!(byPicRecogMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRedLightTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PICTURE_INFO), + "::", + stringify!(dwRedLightTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAbsTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PICTURE_INFO), + "::", + stringify!(byAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRect) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PICTURE_INFO), + "::", + stringify!(struPlateRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRecgRect) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PICTURE_INFO), + "::", + stringify!(struPlateRecgRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PICTURE_INFO), + "::", + stringify!(pBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwUTCTime) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PICTURE_INFO), + "::", + stringify!(dwUTCTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCompatibleAblity) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PICTURE_INFO), + "::", + stringify!(byCompatibleAblity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeDiffFlag) as usize - ptr as usize }, + 93usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PICTURE_INFO), + "::", + stringify!(byTimeDiffFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceH) as usize - ptr as usize }, + 94usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PICTURE_INFO), + "::", + stringify!(cTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceM) as usize - ptr as usize }, + 95usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PICTURE_INFO), + "::", + stringify!(cTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PICTURE_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_ITS_PICTURE_INFO = tagNET_ITS_PICTURE_INFO; +pub type LPNET_ITS_PICTURE_INFO = *mut tagNET_ITS_PICTURE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_ILLEGAL_INFO { + pub byIllegalInfo: [BYTE; 64usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_ILLEGAL_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 320usize, + concat!("Size of: ", stringify!(tagNET_ITS_ILLEGAL_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_ITS_ILLEGAL_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIllegalInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ILLEGAL_INFO), + "::", + stringify!(byIllegalInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ILLEGAL_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITS_ILLEGAL_INFO = tagNET_ITS_ILLEGAL_INFO; +pub type LPNET_ITS_ILLEGAL_INFO = *mut tagNET_ITS_ILLEGAL_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_PLATE_RESULT { + pub dwSize: DWORD, + pub dwMatchNo: DWORD, + pub byGroupNum: BYTE, + pub byPicNo: BYTE, + pub bySecondCam: BYTE, + pub byFeaturePicNo: BYTE, + pub byDriveChan: BYTE, + pub byVehicleType: BYTE, + pub byDetSceneID: BYTE, + pub byVehicleAttribute: BYTE, + pub wIllegalType: WORD, + pub byIllegalSubType: [BYTE; 8usize], + pub byPostPicNo: BYTE, + pub byChanIndex: BYTE, + pub wSpeedLimit: WORD, + pub byChanIndexEx: BYTE, + pub byVehiclePositionControl: BYTE, + pub struPlateInfo: NET_DVR_PLATE_INFO, + pub struVehicleInfo: NET_DVR_VEHICLE_INFO, + pub byMonitoringSiteID: [BYTE; 48usize], + pub byDeviceID: [BYTE; 48usize], + pub byDir: BYTE, + pub byDetectType: BYTE, + pub byRelaLaneDirectionType: BYTE, + pub byCarDirectionType: BYTE, + pub dwCustomIllegalType: DWORD, + pub pIllegalInfoBuf: *mut BYTE, + pub byIllegalFromatType: BYTE, + pub byPendant: BYTE, + pub byDataAnalysis: BYTE, + pub byYellowLabelCar: BYTE, + pub byDangerousVehicles: BYTE, + pub byPilotSafebelt: BYTE, + pub byCopilotSafebelt: BYTE, + pub byPilotSunVisor: BYTE, + pub byCopilotSunVisor: BYTE, + pub byPilotCall: BYTE, + pub byBarrierGateCtrlType: BYTE, + pub byAlarmDataType: BYTE, + pub struSnapFirstPicTime: NET_DVR_TIME_V30, + pub dwIllegalTime: DWORD, + pub dwPicNum: DWORD, + pub struPicInfo: [NET_ITS_PICTURE_INFO; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_PLATE_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 944usize, + concat!("Size of: ", stringify!(tagNET_ITS_PLATE_RESULT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_ITS_PLATE_RESULT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMatchNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(dwMatchNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGroupNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byGroupNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicNo) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byPicNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySecondCam) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(bySecondCam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFeaturePicNo) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byFeaturePicNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDriveChan) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byDriveChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleType) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byVehicleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetSceneID) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byDetSceneID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleAttribute) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byVehicleAttribute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wIllegalType) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(wIllegalType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIllegalSubType) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byIllegalSubType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPostPicNo) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byPostPicNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanIndex) as usize - ptr as usize }, + 27usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byChanIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSpeedLimit) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(wSpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanIndexEx) as usize - ptr as usize }, + 30usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byChanIndexEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehiclePositionControl) as usize - ptr as usize }, + 31usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byVehiclePositionControl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateInfo) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(struPlateInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVehicleInfo) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(struVehicleInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonitoringSiteID) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byMonitoringSiteID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDir) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byDir) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectType) as usize - ptr as usize }, + 273usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byDetectType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelaLaneDirectionType) as usize - ptr as usize }, + 274usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byRelaLaneDirectionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCarDirectionType) as usize - ptr as usize }, + 275usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byCarDirectionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCustomIllegalType) as usize - ptr as usize }, + 276usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(dwCustomIllegalType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pIllegalInfoBuf) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(pIllegalInfoBuf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIllegalFromatType) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byIllegalFromatType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPendant) as usize - ptr as usize }, + 289usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byPendant) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataAnalysis) as usize - ptr as usize }, + 290usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byDataAnalysis) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byYellowLabelCar) as usize - ptr as usize }, + 291usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byYellowLabelCar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDangerousVehicles) as usize - ptr as usize }, + 292usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byDangerousVehicles) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPilotSafebelt) as usize - ptr as usize }, + 293usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byPilotSafebelt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCopilotSafebelt) as usize - ptr as usize }, + 294usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byCopilotSafebelt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPilotSunVisor) as usize - ptr as usize }, + 295usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byPilotSunVisor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCopilotSunVisor) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byCopilotSunVisor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPilotCall) as usize - ptr as usize }, + 297usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byPilotCall) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBarrierGateCtrlType) as usize - ptr as usize }, + 298usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byBarrierGateCtrlType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmDataType) as usize - ptr as usize }, + 299usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(byAlarmDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSnapFirstPicTime) as usize - ptr as usize }, + 300usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(struSnapFirstPicTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIllegalTime) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(dwIllegalTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicNum) as usize - ptr as usize }, + 316usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(dwPicNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPicInfo) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_PLATE_RESULT), + "::", + stringify!(struPicInfo) + ) + ); +} +pub type NET_ITS_PLATE_RESULT = tagNET_ITS_PLATE_RESULT; +pub type LPNET_ITS_PLATE_RESULT = *mut tagNET_ITS_PLATE_RESULT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_GATE_VEHICLE { + pub dwSize: DWORD, + pub dwMatchNo: DWORD, + pub byGroupNum: BYTE, + pub byPicNo: BYTE, + pub bySecondCam: BYTE, + pub byRes: BYTE, + pub wLaneid: WORD, + pub byCamLaneId: BYTE, + pub byRes1: BYTE, + pub byAlarmReason: [BYTE; 32usize], + pub wBackList: WORD, + pub wSpeedLimit: WORD, + pub dwChanIndex: DWORD, + pub struPlateInfo: NET_DVR_PLATE_INFO, + pub struVehicleInfo: NET_DVR_VEHICLE_INFO, + pub byMonitoringSiteID: [BYTE; 48usize], + pub byDeviceID: [BYTE; 48usize], + pub byDir: BYTE, + pub byDetectType: BYTE, + pub byRes2: [BYTE; 2usize], + pub byCardNo: [BYTE; 48usize], + pub dwPicNum: DWORD, + pub struPicInfo: [NET_ITS_PICTURE_INFO; 4usize], + pub bySwipeTime: [BYTE; 32usize], + pub byRes3: [BYTE; 224usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_GATE_VEHICLE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1024usize, + concat!("Size of: ", stringify!(tagNET_ITS_GATE_VEHICLE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_ITS_GATE_VEHICLE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_VEHICLE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMatchNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_VEHICLE), + "::", + stringify!(dwMatchNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGroupNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_VEHICLE), + "::", + stringify!(byGroupNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicNo) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_VEHICLE), + "::", + stringify!(byPicNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySecondCam) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_VEHICLE), + "::", + stringify!(bySecondCam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_VEHICLE), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLaneid) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_VEHICLE), + "::", + stringify!(wLaneid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCamLaneId) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_VEHICLE), + "::", + stringify!(byCamLaneId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_VEHICLE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmReason) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_VEHICLE), + "::", + stringify!(byAlarmReason) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBackList) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_VEHICLE), + "::", + stringify!(wBackList) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSpeedLimit) as usize - ptr as usize }, + 50usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_VEHICLE), + "::", + stringify!(wSpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChanIndex) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_VEHICLE), + "::", + stringify!(dwChanIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateInfo) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_VEHICLE), + "::", + stringify!(struPlateInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVehicleInfo) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_VEHICLE), + "::", + stringify!(struVehicleInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonitoringSiteID) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_VEHICLE), + "::", + stringify!(byMonitoringSiteID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 248usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_VEHICLE), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDir) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_VEHICLE), + "::", + stringify!(byDir) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectType) as usize - ptr as usize }, + 297usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_VEHICLE), + "::", + stringify!(byDetectType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 298usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_VEHICLE), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 300usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_VEHICLE), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicNum) as usize - ptr as usize }, + 348usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_VEHICLE), + "::", + stringify!(dwPicNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPicInfo) as usize - ptr as usize }, + 352usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_VEHICLE), + "::", + stringify!(struPicInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySwipeTime) as usize - ptr as usize }, + 768usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_VEHICLE), + "::", + stringify!(bySwipeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 800usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_VEHICLE), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_ITS_GATE_VEHICLE = tagNET_ITS_GATE_VEHICLE; +pub type LPNET_ITS_GATE_VEHICLE = *mut tagNET_ITS_GATE_VEHICLE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_GATE_FACE { + pub dwSize: DWORD, + pub byGroupNum: BYTE, + pub byPicNo: BYTE, + pub byFeaturePicNo: BYTE, + pub byRes: BYTE, + pub wLaneid: WORD, + pub byCamLaneId: BYTE, + pub byDir: BYTE, + pub dwChanIndex: DWORD, + pub byMonitoringSiteID: [BYTE; 48usize], + pub byDeviceID: [BYTE; 48usize], + pub struFaceInfo: NET_VCA_FACESNAP_RESULT, + pub byRes2: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_GATE_FACE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 672usize, + concat!("Size of: ", stringify!(tagNET_ITS_GATE_FACE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_ITS_GATE_FACE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_FACE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGroupNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_FACE), + "::", + stringify!(byGroupNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicNo) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_FACE), + "::", + stringify!(byPicNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFeaturePicNo) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_FACE), + "::", + stringify!(byFeaturePicNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_FACE), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLaneid) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_FACE), + "::", + stringify!(wLaneid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCamLaneId) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_FACE), + "::", + stringify!(byCamLaneId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDir) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_FACE), + "::", + stringify!(byDir) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChanIndex) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_FACE), + "::", + stringify!(dwChanIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonitoringSiteID) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_FACE), + "::", + stringify!(byMonitoringSiteID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_FACE), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFaceInfo) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_FACE), + "::", + stringify!(struFaceInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 416usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_FACE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_ITS_GATE_FACE = tagNET_ITS_GATE_FACE; +pub type LPNET_ITS_GATE_FACE = *mut tagNET_ITS_GATE_FACE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _tagNET_ITS_PARK_VEHICLE_ { + pub dwSize: DWORD, + pub byGroupNum: BYTE, + pub byPicNo: BYTE, + pub byLocationNum: BYTE, + pub byParkError: BYTE, + pub byParkingNo: [BYTE; 16usize], + pub byLocationStatus: BYTE, + pub bylogicalLaneNum: BYTE, + pub wUpLoadType: WORD, + pub byRes1: [BYTE; 4usize], + pub dwChanIndex: DWORD, + pub struPlateInfo: NET_DVR_PLATE_INFO, + pub struVehicleInfo: NET_DVR_VEHICLE_INFO, + pub byMonitoringSiteID: [BYTE; 48usize], + pub byDeviceID: [BYTE; 48usize], + pub dwPicNum: DWORD, + pub struPicInfo: [NET_ITS_PICTURE_INFO; 2usize], + pub byRes2: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout__tagNET_ITS_PARK_VEHICLE_() { + const UNINIT: ::std::mem::MaybeUninit<_tagNET_ITS_PARK_VEHICLE_> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_tagNET_ITS_PARK_VEHICLE_>(), + 752usize, + concat!("Size of: ", stringify!(_tagNET_ITS_PARK_VEHICLE_)) + ); + assert_eq!( + ::std::mem::align_of::<_tagNET_ITS_PARK_VEHICLE_>(), + 8usize, + concat!("Alignment of ", stringify!(_tagNET_ITS_PARK_VEHICLE_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PARK_VEHICLE_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGroupNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PARK_VEHICLE_), + "::", + stringify!(byGroupNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicNo) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PARK_VEHICLE_), + "::", + stringify!(byPicNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocationNum) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PARK_VEHICLE_), + "::", + stringify!(byLocationNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParkError) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PARK_VEHICLE_), + "::", + stringify!(byParkError) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParkingNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PARK_VEHICLE_), + "::", + stringify!(byParkingNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocationStatus) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PARK_VEHICLE_), + "::", + stringify!(byLocationStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bylogicalLaneNum) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PARK_VEHICLE_), + "::", + stringify!(bylogicalLaneNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wUpLoadType) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PARK_VEHICLE_), + "::", + stringify!(wUpLoadType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PARK_VEHICLE_), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChanIndex) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PARK_VEHICLE_), + "::", + stringify!(dwChanIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateInfo) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PARK_VEHICLE_), + "::", + stringify!(struPlateInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVehicleInfo) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PARK_VEHICLE_), + "::", + stringify!(struVehicleInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonitoringSiteID) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PARK_VEHICLE_), + "::", + stringify!(byMonitoringSiteID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PARK_VEHICLE_), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicNum) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PARK_VEHICLE_), + "::", + stringify!(dwPicNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPicInfo) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PARK_VEHICLE_), + "::", + stringify!(struPicInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 496usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PARK_VEHICLE_), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_ITS_PARK_VEHICLE = _tagNET_ITS_PARK_VEHICLE_; +pub type LPNET_ITS_PARK_VEHICLE = *mut _tagNET_ITS_PARK_VEHICLE_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TFS_ALARM { + pub dwSize: DWORD, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub dwIllegalType: DWORD, + pub dwIllegalDuration: DWORD, + pub byMonitoringSiteID: [BYTE; 48usize], + pub byDeviceID: [BYTE; 48usize], + pub struDevInfo: NET_VCA_DEV_INFO, + pub struSceneInfo: NET_DVR_SCENE_INFO, + pub struBeginRecTime: NET_DVR_TIME_EX, + pub struEndRecTime: NET_DVR_TIME_EX, + pub struAIDInfo: NET_DVR_AID_INFO, + pub struPlateInfo: NET_DVR_PLATE_INFO, + pub struVehicleInfo: NET_DVR_VEHICLE_INFO, + pub dwPicNum: DWORD, + pub struPicInfo: [NET_ITS_PICTURE_INFO; 8usize], + pub bySpecificVehicleType: BYTE, + pub byLaneNo: BYTE, + pub wDevInfoIvmsChannelEx: WORD, + pub struTime: NET_DVR_TIME_V30, + pub dwSerialNo: DWORD, + pub byVehicleAttribute: BYTE, + pub byPilotSafebelt: BYTE, + pub byCopilotSafebelt: BYTE, + pub byPilotSunVisor: BYTE, + pub byCopilotSunVisor: BYTE, + pub byPilotCall: BYTE, + pub byRes2: [BYTE; 2usize], + pub byIllegalCode: [BYTE; 32usize], + pub wCountry: WORD, + pub byRegion: BYTE, + pub byCrossLine: BYTE, + pub byParkingSerialNO: [BYTE; 16usize], + pub byCrossSpaces: BYTE, + pub byAngledParking: BYTE, + pub byAlarmValidity: BYTE, + pub byDoorsStatus: BYTE, + pub dwXmlLen: DWORD, + pub pXmlBuf: *mut ::std::os::raw::c_char, + pub byVehicleHeadTailStatus: BYTE, + pub byBrokenNetHttp: BYTE, + pub byRes: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TFS_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1600usize, + concat!("Size of: ", stringify!(tagNET_DVR_TFS_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TFS_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIllegalType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(dwIllegalType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIllegalDuration) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(dwIllegalDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonitoringSiteID) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(byMonitoringSiteID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSceneInfo) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(struSceneInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBeginRecTime) as usize - ptr as usize }, + 376usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(struBeginRecTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndRecTime) as usize - ptr as usize }, + 384usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(struEndRecTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAIDInfo) as usize - ptr as usize }, + 392usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(struAIDInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateInfo) as usize - ptr as usize }, + 488usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(struPlateInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVehicleInfo) as usize - ptr as usize }, + 584usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(struVehicleInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicNum) as usize - ptr as usize }, + 632usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(dwPicNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPicInfo) as usize - ptr as usize }, + 640usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(struPicInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpecificVehicleType) as usize - ptr as usize }, + 1472usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(bySpecificVehicleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNo) as usize - ptr as usize }, + 1473usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(byLaneNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevInfoIvmsChannelEx) as usize - ptr as usize }, + 1474usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(wDevInfoIvmsChannelEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 1476usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSerialNo) as usize - ptr as usize }, + 1488usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(dwSerialNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleAttribute) as usize - ptr as usize }, + 1492usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(byVehicleAttribute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPilotSafebelt) as usize - ptr as usize }, + 1493usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(byPilotSafebelt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCopilotSafebelt) as usize - ptr as usize }, + 1494usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(byCopilotSafebelt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPilotSunVisor) as usize - ptr as usize }, + 1495usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(byPilotSunVisor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCopilotSunVisor) as usize - ptr as usize }, + 1496usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(byCopilotSunVisor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPilotCall) as usize - ptr as usize }, + 1497usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(byPilotCall) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1498usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIllegalCode) as usize - ptr as usize }, + 1500usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(byIllegalCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCountry) as usize - ptr as usize }, + 1532usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(wCountry) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRegion) as usize - ptr as usize }, + 1534usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(byRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCrossLine) as usize - ptr as usize }, + 1535usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(byCrossLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParkingSerialNO) as usize - ptr as usize }, + 1536usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(byParkingSerialNO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCrossSpaces) as usize - ptr as usize }, + 1552usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(byCrossSpaces) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAngledParking) as usize - ptr as usize }, + 1553usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(byAngledParking) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmValidity) as usize - ptr as usize }, + 1554usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(byAlarmValidity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDoorsStatus) as usize - ptr as usize }, + 1555usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(byDoorsStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwXmlLen) as usize - ptr as usize }, + 1556usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(dwXmlLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pXmlBuf) as usize - ptr as usize }, + 1560usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(pXmlBuf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleHeadTailStatus) as usize - ptr as usize }, + 1568usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(byVehicleHeadTailStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrokenNetHttp) as usize - ptr as usize }, + 1569usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(byBrokenNetHttp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1570usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TFS_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TFS_ALARM = tagNET_DVR_TFS_ALARM; +pub type LPNET_DVR_TFS_ALARM = *mut tagNET_DVR_TFS_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SOFTWARE_SERVICE_CFG { + pub dwSize: DWORD, + pub byThirdStreamEnabled: BYTE, + pub bySubStreamEnabled: BYTE, + pub byRes: [BYTE; 254usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SOFTWARE_SERVICE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(tagNET_DVR_SOFTWARE_SERVICE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SOFTWARE_SERVICE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SOFTWARE_SERVICE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byThirdStreamEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SOFTWARE_SERVICE_CFG), + "::", + stringify!(byThirdStreamEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubStreamEnabled) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SOFTWARE_SERVICE_CFG), + "::", + stringify!(bySubStreamEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SOFTWARE_SERVICE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SOFTWARE_SERVICE_CFG = tagNET_DVR_SOFTWARE_SERVICE_CFG; +pub type LPNET_DVR_SOFTWARE_SERVICE_CFG = *mut tagNET_DVR_SOFTWARE_SERVICE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_ECT_BLOCKLIST { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub bylogicalLaneNo: BYTE, + pub byRes1: [BYTE; 3usize], + pub byLaneName: [BYTE; 32usize], + pub struPlateInfo: NET_DVR_PLATE_INFO, + pub byRes2: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_ECT_BLOCKLIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 400usize, + concat!("Size of: ", stringify!(tagNET_ITS_ECT_BLOCKLIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_ITS_ECT_BLOCKLIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECT_BLOCKLIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECT_BLOCKLIST), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bylogicalLaneNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECT_BLOCKLIST), + "::", + stringify!(bylogicalLaneNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECT_BLOCKLIST), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneName) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECT_BLOCKLIST), + "::", + stringify!(byLaneName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateInfo) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECT_BLOCKLIST), + "::", + stringify!(struPlateInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECT_BLOCKLIST), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_ITS_ECT_BLOCKLIST = tagNET_ITS_ECT_BLOCKLIST; +pub type LPNET_ITS_ECT_BLOCKLIST = *mut tagNET_ITS_ECT_BLOCKLIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_IPC_CHAN_CFG { + pub dwSize: DWORD, + pub byCameraType: BYTE, + pub byRes1: [BYTE; 3usize], + pub byMonitoringSiteID: [BYTE; 48usize], + pub byDeviceID: [BYTE; 48usize], + pub byDirectionNo: BYTE, + pub byMonitorInfo: [BYTE; 48usize], + pub byRes2: [BYTE; 15usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_IPC_CHAN_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 168usize, + concat!("Size of: ", stringify!(tagNET_ITS_IPC_CHAN_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITS_IPC_CHAN_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_IPC_CHAN_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCameraType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_IPC_CHAN_CFG), + "::", + stringify!(byCameraType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_IPC_CHAN_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonitoringSiteID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_IPC_CHAN_CFG), + "::", + stringify!(byMonitoringSiteID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_IPC_CHAN_CFG), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDirectionNo) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_IPC_CHAN_CFG), + "::", + stringify!(byDirectionNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonitorInfo) as usize - ptr as usize }, + 105usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_IPC_CHAN_CFG), + "::", + stringify!(byMonitorInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 153usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_IPC_CHAN_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_ITS_IPC_CHAN_CFG = tagNET_ITS_IPC_CHAN_CFG; +pub type LPNET_ITS_IPC_CHAN_CFG = *mut tagNET_ITS_IPC_CHAN_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_SINGLE_DEVICE_INFO { + pub dwDeviceType: DWORD, + pub dwDirID: DWORD, + pub dwLaneID: DWORD, + pub dwDeviceState: DWORD, + pub byDeviceName: [BYTE; 32usize], + pub byDeviceID: [BYTE; 48usize], + pub struTriggerTime: NET_DVR_TIME_V30, + pub byRelateChan: BYTE, + pub byRes: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_SINGLE_DEVICE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 112usize, + concat!("Size of: ", stringify!(tagNET_ITS_SINGLE_DEVICE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITS_SINGLE_DEVICE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeviceType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_SINGLE_DEVICE_INFO), + "::", + stringify!(dwDeviceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDirID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_SINGLE_DEVICE_INFO), + "::", + stringify!(dwDirID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLaneID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_SINGLE_DEVICE_INFO), + "::", + stringify!(dwLaneID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeviceState) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_SINGLE_DEVICE_INFO), + "::", + stringify!(dwDeviceState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceName) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_SINGLE_DEVICE_INFO), + "::", + stringify!(byDeviceName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_SINGLE_DEVICE_INFO), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTriggerTime) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_SINGLE_DEVICE_INFO), + "::", + stringify!(struTriggerTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelateChan) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_SINGLE_DEVICE_INFO), + "::", + stringify!(byRelateChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 109usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_SINGLE_DEVICE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITS_SINGLE_DEVICE_INFO = tagNET_ITS_SINGLE_DEVICE_INFO; +pub type LPNET_ITS_SINGLE_DEVICE_INFO = *mut tagNET_ITS_SINGLE_DEVICE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_ROADINFO { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byTriggerMode: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwDeviceNum: DWORD, + pub byMonitoringSiteID: [BYTE; 48usize], + pub byRoadInfo: [BYTE; 48usize], + pub struSingleDevice: [NET_ITS_SINGLE_DEVICE_INFO; 32usize], + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_ROADINFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 3712usize, + concat!("Size of: ", stringify!(tagNET_ITS_ROADINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITS_ROADINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ROADINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ROADINFO), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTriggerMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ROADINFO), + "::", + stringify!(byTriggerMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ROADINFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeviceNum) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ROADINFO), + "::", + stringify!(dwDeviceNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonitoringSiteID) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ROADINFO), + "::", + stringify!(byMonitoringSiteID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRoadInfo) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ROADINFO), + "::", + stringify!(byRoadInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSingleDevice) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ROADINFO), + "::", + stringify!(struSingleDevice) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3696usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ROADINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITS_ROADINFO = tagNET_ITS_ROADINFO; +pub type LPNET_ITS_ROADINFO = *mut tagNET_ITS_ROADINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_TRAFFIC_DRIVE_CHAN { + pub byDriveChan: BYTE, + pub byRes1: [BYTE; 3usize], + pub wCarFlux: WORD, + pub wPasserbyFlux: WORD, + pub wShayFlux: WORD, + pub fAverOccpancy: f32, + pub wAverSpeed: WORD, + pub wAverCarDis: WORD, + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_TRAFFIC_DRIVE_CHAN() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_ITS_TRAFFIC_DRIVE_CHAN)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITS_TRAFFIC_DRIVE_CHAN)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDriveChan) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_DRIVE_CHAN), + "::", + stringify!(byDriveChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_DRIVE_CHAN), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCarFlux) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_DRIVE_CHAN), + "::", + stringify!(wCarFlux) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPasserbyFlux) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_DRIVE_CHAN), + "::", + stringify!(wPasserbyFlux) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wShayFlux) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_DRIVE_CHAN), + "::", + stringify!(wShayFlux) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fAverOccpancy) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_DRIVE_CHAN), + "::", + stringify!(fAverOccpancy) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAverSpeed) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_DRIVE_CHAN), + "::", + stringify!(wAverSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAverCarDis) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_DRIVE_CHAN), + "::", + stringify!(wAverCarDis) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_DRIVE_CHAN), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_ITS_TRAFFIC_DRIVE_CHAN = tagNET_ITS_TRAFFIC_DRIVE_CHAN; +pub type LPNET_ITS_TRAFFIC_DRIVE_CHAN = *mut tagNET_ITS_TRAFFIC_DRIVE_CHAN; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_TRAFFIC_COLLECT { + pub dwSize: DWORD, + pub byMonitoringSiteID: [BYTE; 48usize], + pub byDeviceID: [BYTE; 48usize], + pub byLaneNum: BYTE, + pub byDir: BYTE, + pub byDetectType: BYTE, + pub byRes1: BYTE, + pub dwChannel: DWORD, + pub struStartTime: NET_DVR_SYSTEM_TIME, + pub dwSamplePeriod: DWORD, + pub struDriveChan: [NET_ITS_TRAFFIC_DRIVE_CHAN; 6usize], + pub byRes2: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_TRAFFIC_COLLECT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 368usize, + concat!("Size of: ", stringify!(tagNET_ITS_TRAFFIC_COLLECT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITS_TRAFFIC_COLLECT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_COLLECT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonitoringSiteID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_COLLECT), + "::", + stringify!(byMonitoringSiteID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_COLLECT), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNum) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_COLLECT), + "::", + stringify!(byLaneNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDir) as usize - ptr as usize }, + 101usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_COLLECT), + "::", + stringify!(byDir) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectType) as usize - ptr as usize }, + 102usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_COLLECT), + "::", + stringify!(byDetectType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 103usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_COLLECT), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_COLLECT), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_COLLECT), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSamplePeriod) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_COLLECT), + "::", + stringify!(dwSamplePeriod) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDriveChan) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_COLLECT), + "::", + stringify!(struDriveChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 344usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_TRAFFIC_COLLECT), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_ITS_TRAFFIC_COLLECT = tagNET_ITS_TRAFFIC_COLLECT; +pub type LPNET_ITS_TRAFFIC_COLLECT = *mut tagNET_ITS_TRAFFIC_COLLECT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_OVERLAPCFG_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub dwConfigMode: DWORD, + pub byPicModeType: BYTE, + pub byRelateType: BYTE, + pub byRes: [BYTE; 14usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_OVERLAPCFG_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28usize, + concat!("Size of: ", stringify!(tagNET_ITS_OVERLAPCFG_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITS_OVERLAPCFG_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAPCFG_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAPCFG_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwConfigMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAPCFG_COND), + "::", + stringify!(dwConfigMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicModeType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAPCFG_COND), + "::", + stringify!(byPicModeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelateType) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAPCFG_COND), + "::", + stringify!(byRelateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAPCFG_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITS_OVERLAPCFG_COND = tagNET_ITS_OVERLAPCFG_COND; +pub type LPNET_ITS_OVERLAPCFG_COND = *mut tagNET_ITS_OVERLAPCFG_COND; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_NULL: ITS_OVERLAP_ITEM_TYPE = 0; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_SITE: ITS_OVERLAP_ITEM_TYPE = 1; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_ROADNUM: ITS_OVERLAP_ITEM_TYPE = 2; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_INSTRUMENTNUM: ITS_OVERLAP_ITEM_TYPE = 3; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_DIRECTION: ITS_OVERLAP_ITEM_TYPE = 4; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_DIRECTIONDESC: ITS_OVERLAP_ITEM_TYPE = 5; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_LANENUM: ITS_OVERLAP_ITEM_TYPE = 6; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_LANEDES: ITS_OVERLAP_ITEM_TYPE = 7; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_CAPTIME: ITS_OVERLAP_ITEM_TYPE = 8; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_CAPTIME_MILLSECOND: ITS_OVERLAP_ITEM_TYPE = 9; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_PLATENUM: ITS_OVERLAP_ITEM_TYPE = 10; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_CARCOLOR: ITS_OVERLAP_ITEM_TYPE = 11; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_CARTYPE: ITS_OVERLAP_ITEM_TYPE = 12; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_CARBRAND: ITS_OVERLAP_ITEM_TYPE = 13; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_CARSPEED: ITS_OVERLAP_ITEM_TYPE = 14; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_SPEEDLIMIT: ITS_OVERLAP_ITEM_TYPE = 15; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_CARLENGTH: ITS_OVERLAP_ITEM_TYPE = 16; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_ILLEGALNUM: ITS_OVERLAP_ITEM_TYPE = 17; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_MONITOR_INFO: ITS_OVERLAP_ITEM_TYPE = 18; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_ILLEGALDES: ITS_OVERLAP_ITEM_TYPE = 19; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_OVERSPEED_PERCENT: ITS_OVERLAP_ITEM_TYPE = 20; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_RED_STARTTIME: ITS_OVERLAP_ITEM_TYPE = 21; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_RED_STOPTIME: ITS_OVERLAP_ITEM_TYPE = 22; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_RED_DURATION: ITS_OVERLAP_ITEM_TYPE = 23; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_SECUNITY_CODE: ITS_OVERLAP_ITEM_TYPE = 24; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_CAP_CODE: ITS_OVERLAP_ITEM_TYPE = 25; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_SEATBELT: ITS_OVERLAP_ITEM_TYPE = 26; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_MONITOR_ID: ITS_OVERLAP_ITEM_TYPE = 27; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_SUN_VISOR: ITS_OVERLAP_ITEM_TYPE = 28; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_LANE_DIRECTION: ITS_OVERLAP_ITEM_TYPE = 29; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_LICENSE_PLATE_COLOR: ITS_OVERLAP_ITEM_TYPE = 30; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_SCENE_NUMBER: ITS_OVERLAP_ITEM_TYPE = 31; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_SCENE_NAME: ITS_OVERLAP_ITEM_TYPE = 32; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_YELLOW_SIGN_CAR: ITS_OVERLAP_ITEM_TYPE = 33; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_DANGEROUS_CAR: ITS_OVERLAP_ITEM_TYPE = 34; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_CAR_SUBBRAND: ITS_OVERLAP_ITEM_TYPE = 35; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_CAR_DIRECTION: ITS_OVERLAP_ITEM_TYPE = 36; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_PENDANT: ITS_OVERLAP_ITEM_TYPE = 37; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_CALL: ITS_OVERLAP_ITEM_TYPE = 38; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_CAR_VALIDITY: ITS_OVERLAP_ITEM_TYPE = 39; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_CAR_COUNTRY: ITS_OVERLAP_ITEM_TYPE = 40; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_CAR_PLATE_TYPE: ITS_OVERLAP_ITEM_TYPE = 41; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_CAR_PLATE_SIZE: ITS_OVERLAP_ITEM_TYPE = 42; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_CAR_PLATE_COLOR: ITS_OVERLAP_ITEM_TYPE = 43; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_CAR_PLATE_CATEGORY: ITS_OVERLAP_ITEM_TYPE = 44; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_ACCIDENT: ITS_OVERLAP_ITEM_TYPE = 45; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_SMOKING: ITS_OVERLAP_ITEM_TYPE = 46; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_HELMET: ITS_OVERLAP_ITEM_TYPE = 47; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_MANNED: ITS_OVERLAP_ITEM_TYPE = 48; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_HUMAN: ITS_OVERLAP_ITEM_TYPE = 49; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_PLAYMOBILEPHONE: ITS_OVERLAP_ITEM_TYPE = 50; +pub const ITS_OVERLAP_ITEM_TYPE_OVERLAP_ITEM_ADR: ITS_OVERLAP_ITEM_TYPE = 51; +pub type ITS_OVERLAP_ITEM_TYPE = ::std::os::raw::c_uint; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM { + pub byRes1: [BYTE; 2usize], + pub byItemType: BYTE, + pub byChangeLineNum: BYTE, + pub bySpaceNum: BYTE, + pub byRes2: [BYTE; 2usize], + pub byEnablePos: BYTE, + pub wStartPosTop: WORD, + pub wStartPosLeft: WORD, + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!( + "Size of: ", + stringify!(tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byItemType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM), + "::", + stringify!(byItemType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChangeLineNum) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM), + "::", + stringify!(byChangeLineNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpaceNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM), + "::", + stringify!(bySpaceNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnablePos) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM), + "::", + stringify!(byEnablePos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStartPosTop) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM), + "::", + stringify!(wStartPosTop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStartPosLeft) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM), + "::", + stringify!(wStartPosLeft) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITS_OVERLAP_SINGLE_ITEM_PARAM = tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM; +pub type LPNET_ITS_OVERLAP_SINGLE_ITEM_PARAM = *mut tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_OVERLAP_ITEM_PARAM { + pub struSingleItem: [NET_ITS_OVERLAP_SINGLE_ITEM_PARAM; 50usize], + pub dwLinePercent: DWORD, + pub dwItemsStlye: DWORD, + pub wStartPosTop: WORD, + pub wStartPosLeft: WORD, + pub wCharStyle: WORD, + pub wCharSize: WORD, + pub wCharInterval: WORD, + pub byRes1: [BYTE; 2usize], + pub dwForeClorRGB: DWORD, + pub dwBackClorRGB: DWORD, + pub byColorAdapt: BYTE, + pub byParamFillZeroEnble: BYTE, + pub byPlateLeftCornerEnable: BYTE, + pub byRes2: BYTE, + pub wStartSPicPosTop: WORD, + pub wStartSPicPosLeft: WORD, + pub byOsdLocate: BYTE, + pub byRes: [BYTE; 23usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_OVERLAP_ITEM_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1060usize, + concat!("Size of: ", stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSingleItem) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM), + "::", + stringify!(struSingleItem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLinePercent) as usize - ptr as usize }, + 1000usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM), + "::", + stringify!(dwLinePercent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwItemsStlye) as usize - ptr as usize }, + 1004usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM), + "::", + stringify!(dwItemsStlye) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStartPosTop) as usize - ptr as usize }, + 1008usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM), + "::", + stringify!(wStartPosTop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStartPosLeft) as usize - ptr as usize }, + 1010usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM), + "::", + stringify!(wStartPosLeft) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCharStyle) as usize - ptr as usize }, + 1012usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM), + "::", + stringify!(wCharStyle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCharSize) as usize - ptr as usize }, + 1014usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM), + "::", + stringify!(wCharSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCharInterval) as usize - ptr as usize }, + 1016usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM), + "::", + stringify!(wCharInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1018usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwForeClorRGB) as usize - ptr as usize }, + 1020usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM), + "::", + stringify!(dwForeClorRGB) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBackClorRGB) as usize - ptr as usize }, + 1024usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM), + "::", + stringify!(dwBackClorRGB) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byColorAdapt) as usize - ptr as usize }, + 1028usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM), + "::", + stringify!(byColorAdapt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParamFillZeroEnble) as usize - ptr as usize }, + 1029usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM), + "::", + stringify!(byParamFillZeroEnble) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateLeftCornerEnable) as usize - ptr as usize }, + 1030usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM), + "::", + stringify!(byPlateLeftCornerEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1031usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStartSPicPosTop) as usize - ptr as usize }, + 1032usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM), + "::", + stringify!(wStartSPicPosTop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStartSPicPosLeft) as usize - ptr as usize }, + 1034usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM), + "::", + stringify!(wStartSPicPosLeft) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOsdLocate) as usize - ptr as usize }, + 1036usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM), + "::", + stringify!(byOsdLocate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1037usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITS_OVERLAP_ITEM_PARAM = tagNET_ITS_OVERLAP_ITEM_PARAM; +pub type LPNET_ITS_OVERLAP_ITEM_PARAM = *mut tagNET_ITS_OVERLAP_ITEM_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_OVERLAP_INFO_PARAM { + pub bySite: [BYTE; 128usize], + pub byRoadNum: [BYTE; 32usize], + pub byInstrumentNum: [BYTE; 32usize], + pub byDirection: [BYTE; 32usize], + pub byDirectionDesc: [BYTE; 32usize], + pub byLaneDes: [BYTE; 32usize], + pub byRes1: [BYTE; 32usize], + pub byMonitoringSite1: [BYTE; 44usize], + pub byMonitoringSite2: [BYTE; 32usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_OVERLAP_INFO_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 460usize, + concat!("Size of: ", stringify!(tagNET_ITS_OVERLAP_INFO_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_ITS_OVERLAP_INFO_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySite) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_INFO_PARAM), + "::", + stringify!(bySite) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRoadNum) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_INFO_PARAM), + "::", + stringify!(byRoadNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInstrumentNum) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_INFO_PARAM), + "::", + stringify!(byInstrumentNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDirection) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_INFO_PARAM), + "::", + stringify!(byDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDirectionDesc) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_INFO_PARAM), + "::", + stringify!(byDirectionDesc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneDes) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_INFO_PARAM), + "::", + stringify!(byLaneDes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_INFO_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonitoringSite1) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_INFO_PARAM), + "::", + stringify!(byMonitoringSite1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonitoringSite2) as usize - ptr as usize }, + 364usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_INFO_PARAM), + "::", + stringify!(byMonitoringSite2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 396usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_INFO_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITS_OVERLAP_INFO_PARAM = tagNET_ITS_OVERLAP_INFO_PARAM; +pub type LPNET_ITS_OVERLAP_INFO_PARAM = *mut tagNET_ITS_OVERLAP_INFO_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_OVERLAP_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub struOverLapItem: NET_ITS_OVERLAP_ITEM_PARAM, + pub struOverLapInfo: NET_ITS_OVERLAP_INFO_PARAM, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_OVERLAP_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1560usize, + concat!("Size of: ", stringify!(tagNET_ITS_OVERLAP_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITS_OVERLAP_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOverLapItem) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_CFG), + "::", + stringify!(struOverLapItem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOverLapInfo) as usize - ptr as usize }, + 1068usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_CFG), + "::", + stringify!(struOverLapInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1528usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITS_OVERLAP_CFG = tagNET_ITS_OVERLAP_CFG; +pub type LPNET_ITS_OVERLAP_CFG = *mut tagNET_ITS_OVERLAP_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50 { + pub byRes1: [BYTE; 2usize], + pub byItemType: BYTE, + pub byChangeLineNum: BYTE, + pub bySpaceNum: BYTE, + pub byRes2: [BYTE; 2usize], + pub byEnablePos: BYTE, + pub wStartPosTop: WORD, + pub wStartPosLeft: WORD, + pub byItemTypeCustom: [BYTE; 32usize], + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 52usize, + concat!( + "Size of: ", + stringify!(tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byItemType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50), + "::", + stringify!(byItemType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChangeLineNum) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50), + "::", + stringify!(byChangeLineNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpaceNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50), + "::", + stringify!(bySpaceNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnablePos) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50), + "::", + stringify!(byEnablePos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStartPosTop) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50), + "::", + stringify!(wStartPosTop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStartPosLeft) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50), + "::", + stringify!(wStartPosLeft) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byItemTypeCustom) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50), + "::", + stringify!(byItemTypeCustom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50 = tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50; +pub type LPNET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50 = *mut tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_OVERLAP_ITEM_PARAM_V50 { + pub struSingleItem: [NET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50; 50usize], + pub dwLinePercent: DWORD, + pub dwItemsStlye: DWORD, + pub wStartPosTop: WORD, + pub wStartPosLeft: WORD, + pub wCharStyle: WORD, + pub wCharSize: WORD, + pub wCharInterval: WORD, + pub byRes1: [BYTE; 2usize], + pub dwForeClorRGB: DWORD, + pub dwBackClorRGB: DWORD, + pub byColorAdapt: BYTE, + pub byParamFillZeroEnble: BYTE, + pub byPlateLeftCornerEnable: BYTE, + pub byRes2: BYTE, + pub wStartSPicPosTop: WORD, + pub wStartSPicPosLeft: WORD, + pub byOsdLocate: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_OVERLAP_ITEM_PARAM_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2700usize, + concat!("Size of: ", stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSingleItem) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM_V50), + "::", + stringify!(struSingleItem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLinePercent) as usize - ptr as usize }, + 2600usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM_V50), + "::", + stringify!(dwLinePercent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwItemsStlye) as usize - ptr as usize }, + 2604usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM_V50), + "::", + stringify!(dwItemsStlye) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStartPosTop) as usize - ptr as usize }, + 2608usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM_V50), + "::", + stringify!(wStartPosTop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStartPosLeft) as usize - ptr as usize }, + 2610usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM_V50), + "::", + stringify!(wStartPosLeft) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCharStyle) as usize - ptr as usize }, + 2612usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM_V50), + "::", + stringify!(wCharStyle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCharSize) as usize - ptr as usize }, + 2614usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM_V50), + "::", + stringify!(wCharSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCharInterval) as usize - ptr as usize }, + 2616usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM_V50), + "::", + stringify!(wCharInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2618usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwForeClorRGB) as usize - ptr as usize }, + 2620usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM_V50), + "::", + stringify!(dwForeClorRGB) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBackClorRGB) as usize - ptr as usize }, + 2624usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM_V50), + "::", + stringify!(dwBackClorRGB) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byColorAdapt) as usize - ptr as usize }, + 2628usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM_V50), + "::", + stringify!(byColorAdapt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParamFillZeroEnble) as usize - ptr as usize }, + 2629usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM_V50), + "::", + stringify!(byParamFillZeroEnble) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateLeftCornerEnable) as usize - ptr as usize }, + 2630usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM_V50), + "::", + stringify!(byPlateLeftCornerEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 2631usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM_V50), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStartSPicPosTop) as usize - ptr as usize }, + 2632usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM_V50), + "::", + stringify!(wStartSPicPosTop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStartSPicPosLeft) as usize - ptr as usize }, + 2634usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM_V50), + "::", + stringify!(wStartSPicPosLeft) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOsdLocate) as usize - ptr as usize }, + 2636usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM_V50), + "::", + stringify!(byOsdLocate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2637usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_ITEM_PARAM_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITS_OVERLAP_ITEM_PARAM_V50 = tagNET_ITS_OVERLAP_ITEM_PARAM_V50; +pub type LPNET_ITS_OVERLAP_ITEM_PARAM_V50 = *mut tagNET_ITS_OVERLAP_ITEM_PARAM_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_OVERLAP_CFG_V50 { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub struOverLapItemV50: NET_ITS_OVERLAP_ITEM_PARAM_V50, + pub struOverLapInfo: NET_ITS_OVERLAP_INFO_PARAM, + pub byRes: [BYTE; 120usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_OVERLAP_CFG_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 3288usize, + concat!("Size of: ", stringify!(tagNET_ITS_OVERLAP_CFG_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITS_OVERLAP_CFG_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_CFG_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_CFG_V50), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_CFG_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOverLapItemV50) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_CFG_V50), + "::", + stringify!(struOverLapItemV50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOverLapInfo) as usize - ptr as usize }, + 2708usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_CFG_V50), + "::", + stringify!(struOverLapInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_OVERLAP_CFG_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITS_OVERLAP_CFG_V50 = tagNET_ITS_OVERLAP_CFG_V50; +pub type LPNET_ITS_OVERLAP_CFG_V50 = *mut tagNET_ITS_OVERLAP_CFG_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PRESET_INFO { + pub dwSize: DWORD, + pub dwPresetNum: DWORD, + pub dwGroupNum: DWORD, + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PRESET_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_PRESET_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PRESET_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESET_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPresetNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESET_INFO), + "::", + stringify!(dwPresetNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGroupNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESET_INFO), + "::", + stringify!(dwGroupNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESET_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PRESET_INFO = tagNET_DVR_PRESET_INFO; +pub type LPNET_DVR_PRESET_INFO = *mut tagNET_DVR_PRESET_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PRESET_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub dwGroupNO: DWORD, + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PRESET_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_PRESET_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PRESET_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESET_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESET_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGroupNO) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESET_COND), + "::", + stringify!(dwGroupNO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESET_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PRESET_COND = tagNET_DVR_PRESET_COND; +pub type LPNET_DVR_PRESET_COND = *mut tagNET_DVR_PRESET_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PRESETCFG { + pub dwSize: DWORD, + pub dwPresetIndex: DWORD, + pub struVcaPoint: NET_VCA_POINT, + #[doc = "<Ԥ�õ㴰��Zoom\u{5b5}"] + pub wZoomCoordinate: WORD, + pub byRes: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PRESETCFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_DVR_PRESETCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PRESETCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESETCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPresetIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESETCFG), + "::", + stringify!(dwPresetIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaPoint) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESETCFG), + "::", + stringify!(struVcaPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wZoomCoordinate) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESETCFG), + "::", + stringify!(wZoomCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESETCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PRESETCFG = tagNET_DVR_PRESETCFG; +pub type LPNET_DVR_PRESETCFG = *mut tagNET_DVR_PRESETCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZCRUISE_INFO { + pub dwSize: DWORD, + pub dwPtzCruiseNum: DWORD, + pub dwGroupNum: DWORD, + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZCRUISE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZCRUISE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZCRUISE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZCRUISE_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPtzCruiseNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZCRUISE_INFO), + "::", + stringify!(dwPtzCruiseNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGroupNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZCRUISE_INFO), + "::", + stringify!(dwGroupNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZCRUISE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PTZCRUISE_INFO = tagNET_DVR_PTZCRUISE_INFO; +pub type LPNET_DVR_PTZCRUISE_INFO = *mut tagNET_DVR_PTZCRUISE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZCRUISE_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub dwGroupNO: DWORD, + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZCRUISE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZCRUISE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZCRUISE_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZCRUISE_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZCRUISE_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGroupNO) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZCRUISE_COND), + "::", + stringify!(dwGroupNO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZCRUISE_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PTZCRUISE_COND = tagNET_DVR_PTZCRUISE_COND; +pub type LPNET_DVR_PTZCRUISE_COND = *mut tagNET_DVR_PTZCRUISE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZCRUISE_POINTCFG { + pub dwSize: DWORD, + pub dwPresetIndex: DWORD, + pub struVcaPoint: NET_VCA_POINT, + pub byDwell: BYTE, + pub bySpeed: BYTE, + #[doc = "<Ԥ�õ㴰��Zoom\u{5b5}"] + pub wZoomCoordinate: WORD, + pub byRes: [BYTE; 28usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZCRUISE_POINTCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZCRUISE_POINTCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZCRUISE_POINTCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZCRUISE_POINTCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPresetIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZCRUISE_POINTCFG), + "::", + stringify!(dwPresetIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaPoint) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZCRUISE_POINTCFG), + "::", + stringify!(struVcaPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDwell) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZCRUISE_POINTCFG), + "::", + stringify!(byDwell) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpeed) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZCRUISE_POINTCFG), + "::", + stringify!(bySpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wZoomCoordinate) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZCRUISE_POINTCFG), + "::", + stringify!(wZoomCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZCRUISE_POINTCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PTZCRUISE_POINTCFG = tagNET_DVR_PTZCRUISE_POINTCFG; +pub type LPNET_DVR_PTZCRUISE_POINTCFG = *mut tagNET_DVR_PTZCRUISE_POINTCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZCRUISECFG { + pub dwSize: DWORD, + pub dwCruiseRoute: DWORD, + pub struCruisePoint: [NET_DVR_PTZCRUISE_POINTCFG; 32usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZCRUISECFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1576usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZCRUISECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZCRUISECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZCRUISECFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCruiseRoute) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZCRUISECFG), + "::", + stringify!(dwCruiseRoute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCruisePoint) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZCRUISECFG), + "::", + stringify!(struCruisePoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1544usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZCRUISECFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PTZCRUISECFG = tagNET_DVR_PTZCRUISECFG; +pub type LPNET_DVR_PTZCRUISECFG = *mut tagNET_DVR_PTZCRUISECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MOTION_TRACK_CFG { + pub dwSize: DWORD, + pub byEnableTrack: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MOTION_TRACK_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_MOTION_TRACK_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MOTION_TRACK_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOTION_TRACK_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableTrack) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOTION_TRACK_CFG), + "::", + stringify!(byEnableTrack) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOTION_TRACK_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MOTION_TRACK_CFG = tagNET_DVR_MOTION_TRACK_CFG; +pub type LPNET_DVR_MOTION_TRACK_CFG = *mut tagNET_DVR_MOTION_TRACK_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DAY_SCHEDULE { + pub byWorkMode: BYTE, + pub byRes1: [BYTE; 3usize], + pub struTime: [NET_DVR_SCHEDTIME; 8usize], + pub byRes2: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DAY_SCHEDULE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_DAY_SCHEDULE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DAY_SCHEDULE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DAY_SCHEDULE), + "::", + stringify!(byWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DAY_SCHEDULE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DAY_SCHEDULE), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DAY_SCHEDULE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DAY_SCHEDULE = tagNET_DVR_DAY_SCHEDULE; +pub type LPNET_DVR_DAY_SCHEDULE = *mut tagNET_DVR_DAY_SCHEDULE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCHEDULE_AUTO_TRACK_CFG { + pub dwSize: DWORD, + pub byEnableTrack: BYTE, + pub byRes1: [BYTE; 3usize], + pub struSchedule: [NET_DVR_DAY_SCHEDULE; 7usize], + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCHEDULE_AUTO_TRACK_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 444usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCHEDULE_AUTO_TRACK_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SCHEDULE_AUTO_TRACK_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_AUTO_TRACK_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableTrack) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_AUTO_TRACK_CFG), + "::", + stringify!(byEnableTrack) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_AUTO_TRACK_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSchedule) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_AUTO_TRACK_CFG), + "::", + stringify!(struSchedule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 316usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_AUTO_TRACK_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SCHEDULE_AUTO_TRACK_CFG = tagNET_DVR_SCHEDULE_AUTO_TRACK_CFG; +pub type LPNET_DVR_SCHEDULE_AUTO_TRACK_CFG = *mut tagNET_DVR_SCHEDULE_AUTO_TRACK_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_I_FRAME { + pub dwSize: DWORD, + pub sStreamID: [BYTE; 32usize], + pub dwChan: DWORD, + pub byStreamType: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_I_FRAME() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 104usize, + concat!("Size of: ", stringify!(tagNET_DVR_I_FRAME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_I_FRAME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_I_FRAME), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sStreamID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_I_FRAME), + "::", + stringify!(sStreamID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChan) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_I_FRAME), + "::", + stringify!(dwChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_I_FRAME), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_I_FRAME), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_I_FRAME = tagNET_DVR_I_FRAME; +pub type LPNET_DVR_I_FRAME = *mut tagNET_DVR_I_FRAME; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REBOOT_TIME { + pub byDate: BYTE, + pub byHour: BYTE, + pub byMinute: BYTE, + pub byRes1: BYTE, + pub byRebootMode: BYTE, + pub byDisabled: BYTE, + pub byRes: [BYTE; 10usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REBOOT_TIME() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_REBOOT_TIME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_REBOOT_TIME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDate) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REBOOT_TIME), + "::", + stringify!(byDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHour) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REBOOT_TIME), + "::", + stringify!(byHour) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMinute) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REBOOT_TIME), + "::", + stringify!(byMinute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REBOOT_TIME), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRebootMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REBOOT_TIME), + "::", + stringify!(byRebootMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDisabled) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REBOOT_TIME), + "::", + stringify!(byDisabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REBOOT_TIME), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_REBOOT_TIME = tagNET_DVR_REBOOT_TIME; +pub type LPNET_DVR_REBOOT_TIME = *mut tagNET_DVR_REBOOT_TIME; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUTO_REBOOT_CFG { + pub dwSize: DWORD, + pub struRebootTime: NET_DVR_REBOOT_TIME, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUTO_REBOOT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUTO_REBOOT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AUTO_REBOOT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTO_REBOOT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRebootTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTO_REBOOT_CFG), + "::", + stringify!(struRebootTime) + ) + ); +} +pub type NET_DVR_AUTO_REBOOT_CFG = tagNET_DVR_AUTO_REBOOT_CFG; +pub type LPNET_DVR_AUTO_REBOOT_CFG = *mut tagNET_DVR_AUTO_REBOOT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MENU_OUTPUT_MODE { + pub dwSize: DWORD, + pub byMenuOutputMode: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MENU_OUTPUT_MODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_MENU_OUTPUT_MODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MENU_OUTPUT_MODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MENU_OUTPUT_MODE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMenuOutputMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MENU_OUTPUT_MODE), + "::", + stringify!(byMenuOutputMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MENU_OUTPUT_MODE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MENU_OUTPUT_MODE = tagNET_DVR_MENU_OUTPUT_MODE; +pub type LPNET_DVR_MENU_OUTPUT_MODE = *mut tagNET_DVR_MENU_OUTPUT_MODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MB_IPADDR { + pub struIP: NET_DVR_IPADDR, + pub wPort: WORD, + pub byRes: [BYTE; 2usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MB_IPADDR() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!("Size of: ", stringify!(tagNET_DVR_MB_IPADDR)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MB_IPADDR)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_IPADDR), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_IPADDR), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 146usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_IPADDR), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MB_IPADDR = tagNET_DVR_MB_IPADDR; +pub type LPNET_DVR_MB_IPADDR = *mut tagNET_DVR_MB_IPADDR; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MB_WVSPARA { + pub struWVSAddr: NET_DVR_MB_IPADDR, + pub byPuid: [BYTE; 32usize], + pub byPassword: [BYTE; 16usize], + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MB_WVSPARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 204usize, + concat!("Size of: ", stringify!(tagNET_DVR_MB_WVSPARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MB_WVSPARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWVSAddr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_WVSPARA), + "::", + stringify!(struWVSAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPuid) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_WVSPARA), + "::", + stringify!(byPuid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPassword) as usize - ptr as usize }, + 180usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_WVSPARA), + "::", + stringify!(byPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_WVSPARA), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MB_WVSPARA = tagNET_DVR_MB_WVSPARA; +pub type LPNET_DVR_MB_WVSPARA = *mut tagNET_DVR_MB_WVSPARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MB_EHOMEPARA { + pub struEHomeAddr: NET_DVR_MB_IPADDR, + pub byPuid: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MB_EHOMEPARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 180usize, + concat!("Size of: ", stringify!(tagNET_DVR_MB_EHOMEPARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MB_EHOMEPARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEHomeAddr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_EHOMEPARA), + "::", + stringify!(struEHomeAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPuid) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_EHOMEPARA), + "::", + stringify!(byPuid) + ) + ); +} +pub type NET_DVR_MB_EHOMEPARA = tagNET_DVR_MB_EHOMEPARA; +pub type LPNET_DVR_MB_EHOMEPARA = *mut tagNET_DVR_MB_EHOMEPARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MB_PLATFORMPARA { + pub dwSize: DWORD, + pub byNetEnvironment: BYTE, + pub byCurPlatForm: BYTE, + pub byRes1: [BYTE; 2usize], + pub struWVSPara: NET_DVR_MB_WVSPARA, + pub struMbEHpara: NET_DVR_MB_EHOMEPARA, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MB_PLATFORMPARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 456usize, + concat!("Size of: ", stringify!(tagNET_DVR_MB_PLATFORMPARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MB_PLATFORMPARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_PLATFORMPARA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetEnvironment) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_PLATFORMPARA), + "::", + stringify!(byNetEnvironment) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCurPlatForm) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_PLATFORMPARA), + "::", + stringify!(byCurPlatForm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_PLATFORMPARA), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWVSPara) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_PLATFORMPARA), + "::", + stringify!(struWVSPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMbEHpara) as usize - ptr as usize }, + 212usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_PLATFORMPARA), + "::", + stringify!(struMbEHpara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 392usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_PLATFORMPARA), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_MB_PLATFORMPARA = tagNET_DVR_MB_PLATFORMPARA; +pub type LPNET_DVR_MB_PLATFORMPARA = *mut tagNET_DVR_MB_PLATFORMPARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MB_GPS_STATUS { + pub byGPSModule: BYTE, + pub byPositionStatus: BYTE, + pub bySignalStrength: BYTE, + pub byres: [BYTE; 5usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MB_GPS_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_MB_GPS_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MB_GPS_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGPSModule) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_GPS_STATUS), + "::", + stringify!(byGPSModule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPositionStatus) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_GPS_STATUS), + "::", + stringify!(byPositionStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySignalStrength) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_GPS_STATUS), + "::", + stringify!(bySignalStrength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byres) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_GPS_STATUS), + "::", + stringify!(byres) + ) + ); +} +pub type NET_DVR_MB_GPS_STATUS = tagNET_DVR_MB_GPS_STATUS; +pub type LPNET_DVR_MB_GPS_STATUS = *mut tagNET_DVR_MB_GPS_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MB_GSENSOR_STATUS { + pub byGsensorModule: BYTE, + pub byCurAccX: [BYTE; 10usize], + pub byCurAccY: [BYTE; 10usize], + pub byCurAccZ: [BYTE; 10usize], + pub byRefAccX: [BYTE; 10usize], + pub byRefAccY: [BYTE; 10usize], + pub byRefAccZ: [BYTE; 10usize], + pub byres: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MB_GSENSOR_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(tagNET_DVR_MB_GSENSOR_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MB_GSENSOR_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGsensorModule) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_GSENSOR_STATUS), + "::", + stringify!(byGsensorModule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCurAccX) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_GSENSOR_STATUS), + "::", + stringify!(byCurAccX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCurAccY) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_GSENSOR_STATUS), + "::", + stringify!(byCurAccY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCurAccZ) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_GSENSOR_STATUS), + "::", + stringify!(byCurAccZ) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRefAccX) as usize - ptr as usize }, + 31usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_GSENSOR_STATUS), + "::", + stringify!(byRefAccX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRefAccY) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_GSENSOR_STATUS), + "::", + stringify!(byRefAccY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRefAccZ) as usize - ptr as usize }, + 51usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_GSENSOR_STATUS), + "::", + stringify!(byRefAccZ) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byres) as usize - ptr as usize }, + 61usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_GSENSOR_STATUS), + "::", + stringify!(byres) + ) + ); +} +pub type NET_DVR_MB_GSENSOR_STATUS = tagNET_DVR_MB_GSENSOR_STATUS; +pub type LPNET_DVR_MB_GSENSOR_STATUS = *mut tagNET_DVR_MB_GSENSOR_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MB_WIFI_STATUS { + pub byEnableWiFi: BYTE, + pub byWiFiConnectStatus: BYTE, + pub bySignalStrength: BYTE, + pub byIPaddress: [BYTE; 16usize], + pub byEssid: [BYTE; 32usize], + pub byres: [BYTE; 5usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MB_WIFI_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_MB_WIFI_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MB_WIFI_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableWiFi) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_WIFI_STATUS), + "::", + stringify!(byEnableWiFi) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWiFiConnectStatus) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_WIFI_STATUS), + "::", + stringify!(byWiFiConnectStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySignalStrength) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_WIFI_STATUS), + "::", + stringify!(bySignalStrength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIPaddress) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_WIFI_STATUS), + "::", + stringify!(byIPaddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEssid) as usize - ptr as usize }, + 19usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_WIFI_STATUS), + "::", + stringify!(byEssid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byres) as usize - ptr as usize }, + 51usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_WIFI_STATUS), + "::", + stringify!(byres) + ) + ); +} +pub type NET_DVR_MB_WIFI_STATUS = tagNET_DVR_MB_WIFI_STATUS; +pub type LPNET_DVR_MB_WIFI_STATUS = *mut tagNET_DVR_MB_WIFI_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MB_PLATFORM_STATUS { + pub byCurPlat: BYTE, + pub byLoginStatus: BYTE, + pub byExceptionInfo: BYTE, + pub byres: [BYTE; 5usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MB_PLATFORM_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_MB_PLATFORM_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MB_PLATFORM_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCurPlat) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_PLATFORM_STATUS), + "::", + stringify!(byCurPlat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLoginStatus) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_PLATFORM_STATUS), + "::", + stringify!(byLoginStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExceptionInfo) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_PLATFORM_STATUS), + "::", + stringify!(byExceptionInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byres) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_PLATFORM_STATUS), + "::", + stringify!(byres) + ) + ); +} +pub type NET_DVR_MB_PLATFORM_STATUS = tagNET_DVR_MB_PLATFORM_STATUS; +pub type LPNET_DVR_MB_PLATFORM_STATUS = *mut tagNET_DVR_MB_PLATFORM_STATUS; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_MB_MOBILEDEV_STATUS { + pub dwSize: DWORD, + pub mobileStatus: tagNET_DVR_MB_MOBILEDEV_STATUS__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_MB_MOBILEDEV_STATUS__bindgen_ty_1 { + pub struGPSStatus: NET_DVR_MB_GPS_STATUS, + pub struGSensorStatus: NET_DVR_MB_GSENSOR_STATUS, + pub struWiFiStatus: NET_DVR_MB_WIFI_STATUS, + pub struPlatformStatus: NET_DVR_MB_PLATFORM_STATUS, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MB_MOBILEDEV_STATUS__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_MB_MOBILEDEV_STATUS__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MB_MOBILEDEV_STATUS__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGPSStatus) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_MOBILEDEV_STATUS__bindgen_ty_1), + "::", + stringify!(struGPSStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGSensorStatus) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_MOBILEDEV_STATUS__bindgen_ty_1), + "::", + stringify!(struGSensorStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWiFiStatus) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_MOBILEDEV_STATUS__bindgen_ty_1), + "::", + stringify!(struWiFiStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlatformStatus) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_MOBILEDEV_STATUS__bindgen_ty_1), + "::", + stringify!(struPlatformStatus) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MB_MOBILEDEV_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_MB_MOBILEDEV_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MB_MOBILEDEV_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_MOBILEDEV_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mobileStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MB_MOBILEDEV_STATUS), + "::", + stringify!(mobileStatus) + ) + ); +} +pub type NET_DVR_MB_MOBILEDEV_STATUS = tagNET_DVR_MB_MOBILEDEV_STATUS; +pub type LPNET_DVR_MB_MOBILEDEV_STATUS = *mut tagNET_DVR_MB_MOBILEDEV_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GPS_INFO { + pub byDirection: [BYTE; 2usize], + pub bySvs: BYTE, + pub byLocateMode: BYTE, + pub wHDOP: WORD, + pub wHeight: WORD, + pub dwLatitude: DWORD, + pub dwLongitude: DWORD, + pub dwVehicleSpeed: DWORD, + pub dwVehicleDirection: DWORD, + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GPS_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_DVR_GPS_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GPS_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDirection) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPS_INFO), + "::", + stringify!(byDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySvs) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPS_INFO), + "::", + stringify!(bySvs) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocateMode) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPS_INFO), + "::", + stringify!(byLocateMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHDOP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPS_INFO), + "::", + stringify!(wHDOP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHeight) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPS_INFO), + "::", + stringify!(wHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLatitude) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPS_INFO), + "::", + stringify!(dwLatitude) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLongitude) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPS_INFO), + "::", + stringify!(dwLongitude) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVehicleSpeed) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPS_INFO), + "::", + stringify!(dwVehicleSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVehicleDirection) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPS_INFO), + "::", + stringify!(dwVehicleDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GPS_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GPS_INFO = tagNET_DVR_GPS_INFO; +pub type LPNET_DVR_GPS_INFO = *mut tagNET_DVR_GPS_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_GPS_STATUS_ALARM_ { + pub dwSize: DWORD, + pub struGPSTime: NET_DVR_TIME_V30, + pub struGPSInfo: NET_DVR_GPS_INFO, + pub byRetransFlag: BYTE, + pub byNeedsResponse: BYTE, + pub byType: BYTE, + pub byBatteryRemaining: BYTE, + pub iRollAngle: ::std::os::raw::c_int, + pub iPitchAngle: ::std::os::raw::c_int, + pub wRelativeHeight: WORD, + pub wVerticalSpeed: WORD, + pub byRes2: [BYTE; 160usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_GPS_STATUS_ALARM_() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_GPS_STATUS_ALARM_> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_GPS_STATUS_ALARM_>(), + 224usize, + concat!("Size of: ", stringify!(_NET_DVR_GPS_STATUS_ALARM_)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_GPS_STATUS_ALARM_>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_GPS_STATUS_ALARM_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_GPS_STATUS_ALARM_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGPSTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_GPS_STATUS_ALARM_), + "::", + stringify!(struGPSTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGPSInfo) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_GPS_STATUS_ALARM_), + "::", + stringify!(struGPSInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRetransFlag) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_GPS_STATUS_ALARM_), + "::", + stringify!(byRetransFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNeedsResponse) as usize - ptr as usize }, + 49usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_GPS_STATUS_ALARM_), + "::", + stringify!(byNeedsResponse) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 50usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_GPS_STATUS_ALARM_), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBatteryRemaining) as usize - ptr as usize }, + 51usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_GPS_STATUS_ALARM_), + "::", + stringify!(byBatteryRemaining) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iRollAngle) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_GPS_STATUS_ALARM_), + "::", + stringify!(iRollAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPitchAngle) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_GPS_STATUS_ALARM_), + "::", + stringify!(iPitchAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRelativeHeight) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_GPS_STATUS_ALARM_), + "::", + stringify!(wRelativeHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wVerticalSpeed) as usize - ptr as usize }, + 62usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_GPS_STATUS_ALARM_), + "::", + stringify!(wVerticalSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_GPS_STATUS_ALARM_), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_GPS_STATUS_ALARM = _NET_DVR_GPS_STATUS_ALARM_; +pub type LPNET_DVR_GPS_STATUS_ALARM = *mut _NET_DVR_GPS_STATUS_ALARM_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNTE_DVR_GPS_DATA { + pub struGPSInfo: NET_DVR_GPS_INFO, + pub struTime: NET_DVR_TIME, + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNTE_DVR_GPS_DATA() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNTE_DVR_GPS_DATA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNTE_DVR_GPS_DATA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGPSInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNTE_DVR_GPS_DATA), + "::", + stringify!(struGPSInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNTE_DVR_GPS_DATA), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNTE_DVR_GPS_DATA), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GPS_DATA = tagNTE_DVR_GPS_DATA; +pub type LPNET_DVR_GPS_DATA = *mut tagNTE_DVR_GPS_DATA; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_GET_GPS_DATA_PAPAM { + pub dwCmdType: DWORD, + pub GpsDataParam: tagNET_DVR_GET_GPS_DATA_PAPAM__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_GET_GPS_DATA_PAPAM__bindgen_ty_1 { + pub TimeSeg: tagNET_DVR_GET_GPS_DATA_PAPAM__bindgen_ty_1__bindgen_ty_1, + pub TimePoint: tagNET_DVR_GET_GPS_DATA_PAPAM__bindgen_ty_1__bindgen_ty_2, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GET_GPS_DATA_PAPAM__bindgen_ty_1__bindgen_ty_1 { + pub struBeginTime: NET_DVR_TIME, + pub struEndTime: NET_DVR_TIME, + pub dwInterval: DWORD, + pub byRes: [BYTE; 76usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GET_GPS_DATA_PAPAM__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_GET_GPS_DATA_PAPAM__bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_GET_GPS_DATA_PAPAM__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_GET_GPS_DATA_PAPAM__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBeginTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GET_GPS_DATA_PAPAM__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(struBeginTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GET_GPS_DATA_PAPAM__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInterval) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GET_GPS_DATA_PAPAM__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(dwInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GET_GPS_DATA_PAPAM__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GET_GPS_DATA_PAPAM__bindgen_ty_1__bindgen_ty_2 { + pub struTimePoint: NET_DVR_TIME, + pub byRes: [BYTE; 104usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GET_GPS_DATA_PAPAM__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_GET_GPS_DATA_PAPAM__bindgen_ty_1__bindgen_ty_2, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_GET_GPS_DATA_PAPAM__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_GET_GPS_DATA_PAPAM__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTimePoint) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GET_GPS_DATA_PAPAM__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(struTimePoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GET_GPS_DATA_PAPAM__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byRes) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GET_GPS_DATA_PAPAM__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_GET_GPS_DATA_PAPAM__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_GET_GPS_DATA_PAPAM__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).TimeSeg) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GET_GPS_DATA_PAPAM__bindgen_ty_1), + "::", + stringify!(TimeSeg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).TimePoint) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GET_GPS_DATA_PAPAM__bindgen_ty_1), + "::", + stringify!(TimePoint) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GET_GPS_DATA_PAPAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_GET_GPS_DATA_PAPAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GET_GPS_DATA_PAPAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCmdType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GET_GPS_DATA_PAPAM), + "::", + stringify!(dwCmdType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).GpsDataParam) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GET_GPS_DATA_PAPAM), + "::", + stringify!(GpsDataParam) + ) + ); +} +pub type NET_DVR_GET_GPS_DATA_PARAM = tagNET_DVR_GET_GPS_DATA_PAPAM; +pub type LPNET_DVR_GET_GPS_DATA_PARAM = *mut tagNET_DVR_GET_GPS_DATA_PAPAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_TAG_INFO_ALARM_ { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub iRssi: ::std::os::raw::c_int, + pub byIndexCode: [BYTE; 64usize], + pub struAcquisitionTime: NET_DVR_TIME_V30, + pub byRFIDInfo: [BYTE; 32usize], + pub byRFIDInfoLen: BYTE, + pub byVoltageLow: BYTE, + pub byAlarmFlag: BYTE, + pub byDirection: BYTE, + pub byRes: [BYTE; 48usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_TAG_INFO_ALARM_() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_TAG_INFO_ALARM_> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_TAG_INFO_ALARM_>(), + 200usize, + concat!("Size of: ", stringify!(_NET_DVR_TAG_INFO_ALARM_)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_TAG_INFO_ALARM_>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_TAG_INFO_ALARM_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_TAG_INFO_ALARM_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_TAG_INFO_ALARM_), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iRssi) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_TAG_INFO_ALARM_), + "::", + stringify!(iRssi) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIndexCode) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_TAG_INFO_ALARM_), + "::", + stringify!(byIndexCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAcquisitionTime) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_TAG_INFO_ALARM_), + "::", + stringify!(struAcquisitionTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRFIDInfo) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_TAG_INFO_ALARM_), + "::", + stringify!(byRFIDInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRFIDInfoLen) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_TAG_INFO_ALARM_), + "::", + stringify!(byRFIDInfoLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVoltageLow) as usize - ptr as usize }, + 149usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_TAG_INFO_ALARM_), + "::", + stringify!(byVoltageLow) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmFlag) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_TAG_INFO_ALARM_), + "::", + stringify!(byAlarmFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDirection) as usize - ptr as usize }, + 151usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_TAG_INFO_ALARM_), + "::", + stringify!(byDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_TAG_INFO_ALARM_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TAG_INFO_ALARM = _NET_DVR_TAG_INFO_ALARM_; +pub type LPNET_DVR_TAG_INFO_ALARM = *mut _NET_DVR_TAG_INFO_ALARM_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SDKLOCAL_CFG { + pub byEnableAbilityParse: BYTE, + pub byVoiceComMode: BYTE, + pub byLoginWithSimXml: BYTE, + pub byCompatibleType: BYTE, + pub byRes: [BYTE; 380usize], + pub byProtectKey: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SDKLOCAL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(tagNET_DVR_SDKLOCAL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SDKLOCAL_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableAbilityParse) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SDKLOCAL_CFG), + "::", + stringify!(byEnableAbilityParse) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVoiceComMode) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SDKLOCAL_CFG), + "::", + stringify!(byVoiceComMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLoginWithSimXml) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SDKLOCAL_CFG), + "::", + stringify!(byLoginWithSimXml) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCompatibleType) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SDKLOCAL_CFG), + "::", + stringify!(byCompatibleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SDKLOCAL_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProtectKey) as usize - ptr as usize }, + 384usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SDKLOCAL_CFG), + "::", + stringify!(byProtectKey) + ) + ); +} +pub type NET_DVR_SDKLOCAL_CFG = tagNET_DVR_SDKLOCAL_CFG; +pub type LPNET_DVR_SDKLOCAL_CFG = *mut tagNET_DVR_SDKLOCAL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCAL_ABILITY_PARSE_CFG { + pub byEnableAbilityParse: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCAL_ABILITY_PARSE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOCAL_ABILITY_PARSE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_LOCAL_ABILITY_PARSE_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableAbilityParse) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_ABILITY_PARSE_CFG), + "::", + stringify!(byEnableAbilityParse) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_ABILITY_PARSE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOCAL_ABILITY_PARSE_CFG = tagNET_DVR_LOCAL_ABILITY_PARSE_CFG; +pub type LPNET_DVR_LOCAL_ABILITY_PARSE_CFG = *mut tagNET_DVR_LOCAL_ABILITY_PARSE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCAL_TALK_MODE_CFG { + pub byTalkMode: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCAL_TALK_MODE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOCAL_TALK_MODE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOCAL_TALK_MODE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTalkMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_TALK_MODE_CFG), + "::", + stringify!(byTalkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_TALK_MODE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOCAL_TALK_MODE_CFG = tagNET_DVR_LOCAL_TALK_MODE_CFG; +pub type LPNET_DVR_LOCAL_TALK_MODE_CFG = *mut tagNET_DVR_LOCAL_TALK_MODE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCAL_PROTECT_KEY_CFG { + pub byProtectKey: [BYTE; 128usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCAL_PROTECT_KEY_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOCAL_PROTECT_KEY_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_LOCAL_PROTECT_KEY_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProtectKey) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_PROTECT_KEY_CFG), + "::", + stringify!(byProtectKey) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_PROTECT_KEY_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOCAL_PROTECT_KEY_CFG = tagNET_DVR_LOCAL_PROTECT_KEY_CFG; +pub type LPNET_DVR_LOCAL_PROTECT_KEY_CFG = *mut tagNET_DVR_LOCAL_PROTECT_KEY_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SIMXML_LOGIN { + pub byLoginWithSimXml: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SIMXML_LOGIN() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_DVR_SIMXML_LOGIN)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SIMXML_LOGIN)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLoginWithSimXml) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIMXML_LOGIN), + "::", + stringify!(byLoginWithSimXml) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIMXML_LOGIN), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SIMXML_LOGIN = tagNET_DVR_SIMXML_LOGIN; +pub type LPNET_DVR_SIMXML_LOGIN = *mut tagNET_DVR_SIMXML_LOGIN; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_MESSAGE_CALLBACK_PARAM_V51 { + pub byVcaAlarmJsonType: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_MESSAGE_CALLBACK_PARAM_V51() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(NET_DVR_MESSAGE_CALLBACK_PARAM_V51)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(NET_DVR_MESSAGE_CALLBACK_PARAM_V51) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVcaAlarmJsonType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MESSAGE_CALLBACK_PARAM_V51), + "::", + stringify!(byVcaAlarmJsonType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MESSAGE_CALLBACK_PARAM_V51), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_MESSAGE_CALLBACK_PARAM_V51 = *mut NET_DVR_MESSAGE_CALLBACK_PARAM_V51; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_SDK_LOCAL_CFG_TYPE_TCP_PORT_BIND: + tagNET_SDK_LOCAL_CFG_TYPE = 0; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_SDK_LOCAL_CFG_TYPE_UDP_PORT_BIND: + tagNET_SDK_LOCAL_CFG_TYPE = 1; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_SDK_LOCAL_CFG_TYPE_MEM_POOL: tagNET_SDK_LOCAL_CFG_TYPE = 2; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_SDK_LOCAL_CFG_TYPE_MODULE_RECV_TIMEOUT: + tagNET_SDK_LOCAL_CFG_TYPE = 3; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_SDK_LOCAL_CFG_TYPE_ABILITY_PARSE: + tagNET_SDK_LOCAL_CFG_TYPE = 4; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_SDK_LOCAL_CFG_TYPE_TALK_MODE: tagNET_SDK_LOCAL_CFG_TYPE = 5; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_SDK_LOCAL_CFG_TYPE_PROTECT_KEY: tagNET_SDK_LOCAL_CFG_TYPE = + 6; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_SDK_LOCAL_CFG_TYPE_CFG_VERSION: tagNET_SDK_LOCAL_CFG_TYPE = + 7; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_SDK_LOCAL_CFG_TYPE_RTSP_PARAMS: tagNET_SDK_LOCAL_CFG_TYPE = + 8; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_SDK_LOCAL_CFG_TYPE_SIMXML_LOGIN: tagNET_SDK_LOCAL_CFG_TYPE = + 9; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_SDK_LOCAL_CFG_TYPE_CHECK_DEV: tagNET_SDK_LOCAL_CFG_TYPE = + 10; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_SDK_LOCAL_CFG_TYPE_SECURITY: tagNET_SDK_LOCAL_CFG_TYPE = 11; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_SDK_LOCAL_CFG_TYPE_EZVIZLIB_PATH: + tagNET_SDK_LOCAL_CFG_TYPE = 12; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_SDK_LOCAL_CFG_TYPE_CHAR_ENCODE: tagNET_SDK_LOCAL_CFG_TYPE = + 13; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_SDK_LOCAL_CFG_TYPE_PROXYS: tagNET_SDK_LOCAL_CFG_TYPE = 14; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_DVR_LOCAL_CFG_TYPE_LOG: tagNET_SDK_LOCAL_CFG_TYPE = 15; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_DVR_LOCAL_CFG_TYPE_STREAM_CALLBACK: + tagNET_SDK_LOCAL_CFG_TYPE = 16; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_DVR_LOCAL_CFG_TYPE_GENERAL: tagNET_SDK_LOCAL_CFG_TYPE = 17; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_DVR_LOCAL_CFG_TYPE_PTZ: tagNET_SDK_LOCAL_CFG_TYPE = 18; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_DVR_LOCAL_CFG_MESSAGE_CALLBACK_V51: + tagNET_SDK_LOCAL_CFG_TYPE = 19; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_SDK_LOCAL_CFG_CERTIFICATION: tagNET_SDK_LOCAL_CFG_TYPE = 20; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_SDK_LOCAL_CFG_PORT_MULTIPLEX: tagNET_SDK_LOCAL_CFG_TYPE = + 21; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_SDK_LOCAL_CFG_ASYNC: tagNET_SDK_LOCAL_CFG_TYPE = 22; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_SDK_P2P_LOGIN_2C: tagNET_SDK_LOCAL_CFG_TYPE = 23; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_SDK_P2P_LOGIN_2B: tagNET_SDK_LOCAL_CFG_TYPE = 24; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_SDK_P2P_LOGOUT: tagNET_SDK_LOCAL_CFG_TYPE = 25; +pub const tagNET_SDK_LOCAL_CFG_TYPE_NET_SDK_AUDIOCAST_CFG: tagNET_SDK_LOCAL_CFG_TYPE = 26; +pub type tagNET_SDK_LOCAL_CFG_TYPE = ::std::os::raw::c_uint; +pub use self::tagNET_SDK_LOCAL_CFG_TYPE as NET_SDK_LOCAL_CFG_TYPE; +pub const tagNET_SDK_EXCEPTION_CALLBACK_TYPE_NET_SDK_EXCEPTION_CALLBACK_BY_POOL: + tagNET_SDK_EXCEPTION_CALLBACK_TYPE = 0; +pub const tagNET_SDK_EXCEPTION_CALLBACK_TYPE_NET_SDK_EXCEPTION_CALLBACK_DIRECTLY: + tagNET_SDK_EXCEPTION_CALLBACK_TYPE = 1; +pub type tagNET_SDK_EXCEPTION_CALLBACK_TYPE = ::std::os::raw::c_uint; +pub use self::tagNET_SDK_EXCEPTION_CALLBACK_TYPE as NET_SDK_EXCEPTION_CALLBACK_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCAL_GENERAL_CFG { + pub byExceptionCbDirectly: BYTE, + pub byNotSplitRecordFile: BYTE, + pub byResumeUpgradeEnable: BYTE, + pub byAlarmJsonPictureSeparate: BYTE, + pub byRes: [BYTE; 4usize], + pub i64FileSize: UINT64, + pub dwResumeUpgradeTimeout: DWORD, + pub byAlarmReconnectMode: BYTE, + pub byStdXmlBufferSize: BYTE, + pub byMultiplexing: BYTE, + pub byFastUpgrade: BYTE, + pub byRes1: [BYTE; 232usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCAL_GENERAL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOCAL_GENERAL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOCAL_GENERAL_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExceptionCbDirectly) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_GENERAL_CFG), + "::", + stringify!(byExceptionCbDirectly) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNotSplitRecordFile) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_GENERAL_CFG), + "::", + stringify!(byNotSplitRecordFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byResumeUpgradeEnable) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_GENERAL_CFG), + "::", + stringify!(byResumeUpgradeEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmJsonPictureSeparate) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_GENERAL_CFG), + "::", + stringify!(byAlarmJsonPictureSeparate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_GENERAL_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i64FileSize) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_GENERAL_CFG), + "::", + stringify!(i64FileSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwResumeUpgradeTimeout) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_GENERAL_CFG), + "::", + stringify!(dwResumeUpgradeTimeout) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmReconnectMode) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_GENERAL_CFG), + "::", + stringify!(byAlarmReconnectMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStdXmlBufferSize) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_GENERAL_CFG), + "::", + stringify!(byStdXmlBufferSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMultiplexing) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_GENERAL_CFG), + "::", + stringify!(byMultiplexing) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFastUpgrade) as usize - ptr as usize }, + 23usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_GENERAL_CFG), + "::", + stringify!(byFastUpgrade) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_GENERAL_CFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_LOCAL_GENERAL_CFG = tagNET_DVR_LOCAL_GENERAL_CFG; +pub type LPNET_DVR_LOCAL_GENERAL_CFG = *mut tagNET_DVR_LOCAL_GENERAL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_SDK_P2P_SERVER_2C { + pub byPlatformType: BYTE, + pub byRes1: [BYTE; 3usize], + pub pAppID: *mut ::std::os::raw::c_char, + pub pAuthAddr: *mut ::std::os::raw::c_char, + pub pPlatformAddr: *mut ::std::os::raw::c_char, + pub pUserName: *mut ::std::os::raw::c_char, + pub pPassword: *mut ::std::os::raw::c_char, + pub byRes: [BYTE; 40usize], +} +#[test] +fn bindgen_test_layout_tagNET_SDK_P2P_SERVER_2C() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(tagNET_SDK_P2P_SERVER_2C)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_SDK_P2P_SERVER_2C)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlatformType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_P2P_SERVER_2C), + "::", + stringify!(byPlatformType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_P2P_SERVER_2C), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pAppID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_P2P_SERVER_2C), + "::", + stringify!(pAppID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pAuthAddr) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_P2P_SERVER_2C), + "::", + stringify!(pAuthAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPlatformAddr) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_P2P_SERVER_2C), + "::", + stringify!(pPlatformAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pUserName) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_P2P_SERVER_2C), + "::", + stringify!(pUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPassword) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_P2P_SERVER_2C), + "::", + stringify!(pPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_P2P_SERVER_2C), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_SDK_P2P_SERVER_2C = tagNET_SDK_P2P_SERVER_2C; +pub type LPNET_DVR_P2P_SERVER_2C = *mut tagNET_SDK_P2P_SERVER_2C; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_SDK_P2P_SERVER_2B { + pub byPlatformType: BYTE, + pub byRes1: [BYTE; 3usize], + pub pAppID: *mut ::std::os::raw::c_char, + pub pAuthAddr: *mut ::std::os::raw::c_char, + pub pPlatformAddr: *mut ::std::os::raw::c_char, + pub pToken: *mut ::std::os::raw::c_char, + pub byRes: [BYTE; 44usize], +} +#[test] +fn bindgen_test_layout_tagNET_SDK_P2P_SERVER_2B() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(tagNET_SDK_P2P_SERVER_2B)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_SDK_P2P_SERVER_2B)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlatformType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_P2P_SERVER_2B), + "::", + stringify!(byPlatformType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_P2P_SERVER_2B), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pAppID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_P2P_SERVER_2B), + "::", + stringify!(pAppID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pAuthAddr) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_P2P_SERVER_2B), + "::", + stringify!(pAuthAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPlatformAddr) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_P2P_SERVER_2B), + "::", + stringify!(pPlatformAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pToken) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_P2P_SERVER_2B), + "::", + stringify!(pToken) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_P2P_SERVER_2B), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_SDK_P2P_SERVER_2B = tagNET_SDK_P2P_SERVER_2B; +pub type LPNET_DVR_P2P_SERVER_2B = *mut tagNET_SDK_P2P_SERVER_2B; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCAL_ASYNC_CFG { + pub bEnable: ::std::os::raw::c_int, + pub byRes: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCAL_ASYNC_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOCAL_ASYNC_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOCAL_ASYNC_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_ASYNC_CFG), + "::", + stringify!(bEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_ASYNC_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOCAL_ASYNC_CFG = tagNET_DVR_LOCAL_ASYNC_CFG; +pub type LPNET_DVR_LOCAL_ASYNC_CFG = *mut tagNET_DVR_LOCAL_ASYNC_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCAL_STREAM_CALLBACK_CFG { + pub byPlayBackEndFlag: BYTE, + pub byRes: [BYTE; 255usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCAL_STREAM_CALLBACK_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_LOCAL_STREAM_CALLBACK_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_LOCAL_STREAM_CALLBACK_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlayBackEndFlag) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_STREAM_CALLBACK_CFG), + "::", + stringify!(byPlayBackEndFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_STREAM_CALLBACK_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOCAL_STREAM_CALLBACK_CFG = tagNET_DVR_LOCAL_STREAM_CALLBACK_CFG; +pub type LPNET_DVR_LOCAL_STREAM_CALLBACK_CFG = *mut tagNET_DVR_LOCAL_STREAM_CALLBACK_CFG; +pub type LOGCALLBACK = ::std::option::Option< + unsafe extern "C" fn( + pContent: *mut ::std::os::raw::c_char, + dwInputLen: ::std::os::raw::c_uint, + wLogLevel: ::std::os::raw::c_int, + pData: *mut ::std::os::raw::c_void, + ), +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCAL_LOG_CFG { + pub wSDKLogNum: WORD, + pub fnCB: LOGCALLBACK, + pub pUserData: *mut ::std::os::raw::c_void, + pub byRes: [BYTE; 238usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCAL_LOG_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOCAL_LOG_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOCAL_LOG_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSDKLogNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_LOG_CFG), + "::", + stringify!(wSDKLogNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fnCB) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_LOG_CFG), + "::", + stringify!(fnCB) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pUserData) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_LOG_CFG), + "::", + stringify!(pUserData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_LOG_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOCAL_LOG_CFG = tagNET_DVR_LOCAL_LOG_CFG; +pub type LPNET_DVR_LOCAL_LOG_CFG = *mut tagNET_DVR_LOCAL_LOG_CFG; +pub type CHAR_ENCODE_CONVERT = ::std::option::Option< + unsafe extern "C" fn( + pInput: *mut ::std::os::raw::c_char, + dwInputLen: DWORD, + dwInEncodeType: DWORD, + pOutput: *mut ::std::os::raw::c_char, + dwOutputLen: DWORD, + dwOutEncodeType: DWORD, + ) -> ::std::os::raw::c_int, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCAL_BYTE_ENCODE_CONVERT { + pub fnCharConvertCallBack: CHAR_ENCODE_CONVERT, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCAL_BYTE_ENCODE_CONVERT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_LOCAL_BYTE_ENCODE_CONVERT) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_LOCAL_BYTE_ENCODE_CONVERT) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fnCharConvertCallBack) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_BYTE_ENCODE_CONVERT), + "::", + stringify!(fnCharConvertCallBack) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_BYTE_ENCODE_CONVERT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOCAL_BYTE_ENCODE_CONVERT = tagNET_DVR_LOCAL_BYTE_ENCODE_CONVERT; +pub type LPNET_DVR_LOCAL_BYTE_ENCODE_CONVERT = *mut tagNET_DVR_LOCAL_BYTE_ENCODE_CONVERT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCAL_SECURITY { + pub bySecurityLevel: BYTE, + pub byRes: [BYTE; 255usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCAL_SECURITY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOCAL_SECURITY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOCAL_SECURITY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySecurityLevel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_SECURITY), + "::", + stringify!(bySecurityLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_SECURITY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOCAL_SECURITY = tagNET_DVR_LOCAL_SECURITY; +pub type LPNET_DVR_LOCAL_SECURITY = *mut tagNET_DVR_LOCAL_SECURITY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCAL_CHECK_DEV { + pub dwCheckOnlineTimeout: DWORD, + pub dwCheckOnlineNetFailMax: DWORD, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCAL_CHECK_DEV() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOCAL_CHECK_DEV)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOCAL_CHECK_DEV)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCheckOnlineTimeout) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_CHECK_DEV), + "::", + stringify!(dwCheckOnlineTimeout) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCheckOnlineNetFailMax) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_CHECK_DEV), + "::", + stringify!(dwCheckOnlineNetFailMax) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_CHECK_DEV), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOCAL_CHECK_DEV = tagNET_DVR_LOCAL_CHECK_DEV; +pub type LPNET_DVR_LOCAL_CHECK_DEV = *mut tagNET_DVR_LOCAL_CHECK_DEV; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCAL_PTZ_CFG { + pub byWithoutRecv: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCAL_PTZ_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOCAL_PTZ_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOCAL_PTZ_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWithoutRecv) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_PTZ_CFG), + "::", + stringify!(byWithoutRecv) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_PTZ_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOCAL_PTZ_CFG = tagNET_DVR_LOCAL_PTZ_CFG; +pub type LPNET_DVR_LOCAL_PTZ_CFG = *mut tagNET_DVR_LOCAL_PTZ_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCAL_CFG_VERSION { + pub byVersion: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCAL_CFG_VERSION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOCAL_CFG_VERSION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOCAL_CFG_VERSION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVersion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_CFG_VERSION), + "::", + stringify!(byVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_CFG_VERSION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOCAL_CFG_VERSION = tagNET_DVR_LOCAL_CFG_VERSION; +pub type LPNET_DVR_LOCAL_CFG_VERSION = *mut tagNET_DVR_LOCAL_CFG_VERSION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCAL_TCP_PORT_BIND_CFG { + pub wLocalBindTcpMinPort: WORD, + pub wLocalBindTcpMaxPort: WORD, + pub byRes: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCAL_TCP_PORT_BIND_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOCAL_TCP_PORT_BIND_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_LOCAL_TCP_PORT_BIND_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalBindTcpMinPort) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_TCP_PORT_BIND_CFG), + "::", + stringify!(wLocalBindTcpMinPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalBindTcpMaxPort) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_TCP_PORT_BIND_CFG), + "::", + stringify!(wLocalBindTcpMaxPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_TCP_PORT_BIND_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOCAL_TCP_PORT_BIND_CFG = tagNET_DVR_LOCAL_TCP_PORT_BIND_CFG; +pub type LPNET_DVR_LOCAL_TCP_PORT_BIND_CFG = *mut tagNET_DVR_LOCAL_TCP_PORT_BIND_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCAL_UDP_PORT_BIND_CFG { + pub wLocalBindUdpMinPort: WORD, + pub wLocalBindUdpMaxPort: WORD, + pub byRes: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCAL_UDP_PORT_BIND_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOCAL_UDP_PORT_BIND_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_LOCAL_UDP_PORT_BIND_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalBindUdpMinPort) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_UDP_PORT_BIND_CFG), + "::", + stringify!(wLocalBindUdpMinPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalBindUdpMaxPort) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_UDP_PORT_BIND_CFG), + "::", + stringify!(wLocalBindUdpMaxPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_UDP_PORT_BIND_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOCAL_UDP_PORT_BIND_CFG = tagNET_DVR_LOCAL_UDP_PORT_BIND_CFG; +pub type LPNET_DVR_LOCAL_UDP_PORT_BIND_CFG = *mut tagNET_DVR_LOCAL_UDP_PORT_BIND_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCAL_MEM_POOL_CFG { + pub dwAlarmMaxBlockNum: DWORD, + pub dwAlarmReleaseInterval: DWORD, + pub dwObjectReleaseInterval: DWORD, + pub byRes: [BYTE; 508usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCAL_MEM_POOL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 520usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOCAL_MEM_POOL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOCAL_MEM_POOL_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmMaxBlockNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_MEM_POOL_CFG), + "::", + stringify!(dwAlarmMaxBlockNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmReleaseInterval) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_MEM_POOL_CFG), + "::", + stringify!(dwAlarmReleaseInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwObjectReleaseInterval) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_MEM_POOL_CFG), + "::", + stringify!(dwObjectReleaseInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_MEM_POOL_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOCAL_MEM_POOL_CFG = tagNET_DVR_LOCAL_MEM_POOL_CFG; +pub type LPNET_DVR_LOCAL_MEM_POOL_CFG = *mut tagNET_DVR_LOCAL_MEM_POOL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCAL_MODULE_RECV_TIMEOUT_CFG { + pub dwPreviewTime: DWORD, + pub dwAlarmTime: DWORD, + pub dwVodTime: DWORD, + pub dwElse: DWORD, + pub byRes: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCAL_MODULE_RECV_TIMEOUT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 528usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_LOCAL_MODULE_RECV_TIMEOUT_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_LOCAL_MODULE_RECV_TIMEOUT_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPreviewTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_MODULE_RECV_TIMEOUT_CFG), + "::", + stringify!(dwPreviewTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_MODULE_RECV_TIMEOUT_CFG), + "::", + stringify!(dwAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVodTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_MODULE_RECV_TIMEOUT_CFG), + "::", + stringify!(dwVodTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwElse) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_MODULE_RECV_TIMEOUT_CFG), + "::", + stringify!(dwElse) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_MODULE_RECV_TIMEOUT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOCAL_MODULE_RECV_TIMEOUT_CFG = tagNET_DVR_LOCAL_MODULE_RECV_TIMEOUT_CFG; +pub type LPNET_DVR_LOCAL_MODULE_RECV_TIMEOUT_CFG = *mut tagNET_DVR_LOCAL_MODULE_RECV_TIMEOUT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CETTIFICATE_INFO { + pub dwSize: DWORD, + pub szIssuer: [::std::os::raw::c_char; 64usize], + pub szSubject: [::std::os::raw::c_char; 64usize], + pub struStartTime: NET_DVR_TIME, + pub struEndTime: NET_DVR_TIME, + pub byRes1: [BYTE; 1024usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CETTIFICATE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1204usize, + concat!("Size of: ", stringify!(tagNET_DVR_CETTIFICATE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CETTIFICATE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CETTIFICATE_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szIssuer) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CETTIFICATE_INFO), + "::", + stringify!(szIssuer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szSubject) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CETTIFICATE_INFO), + "::", + stringify!(szSubject) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CETTIFICATE_INFO), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CETTIFICATE_INFO), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 180usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CETTIFICATE_INFO), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_CETTIFICATE_INFO = tagNET_DVR_CETTIFICATE_INFO; +pub type LPNET_DVR_CETTIFICATE_INFO = *mut tagNET_DVR_CETTIFICATE_INFO; +pub type fnCertVerifyResultCallBack = ::std::option::Option< + unsafe extern "C" fn( + uiResult: DWORD, + lpCertificateInfo: LPNET_DVR_CETTIFICATE_INFO, + pUserData: *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCAL_CERTIFICATION { + pub szLoadPath: [::std::os::raw::c_char; 256usize], + pub fnCB: fnCertVerifyResultCallBack, + pub pUserData: *mut ::std::os::raw::c_void, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCAL_CERTIFICATION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 336usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOCAL_CERTIFICATION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOCAL_CERTIFICATION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szLoadPath) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_CERTIFICATION), + "::", + stringify!(szLoadPath) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fnCB) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_CERTIFICATION), + "::", + stringify!(fnCB) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pUserData) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_CERTIFICATION), + "::", + stringify!(pUserData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_CERTIFICATION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOCAL_CERTIFICATION = tagNET_DVR_LOCAL_CERTIFICATION; +pub type LPNET_DVR_LOCAL_CERTIFICATION = *mut tagNET_DVR_LOCAL_CERTIFICATION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCAL_PORT_MULTI_CFG { + pub bEnable: ::std::os::raw::c_int, + pub byRes: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCAL_PORT_MULTI_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOCAL_PORT_MULTI_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOCAL_PORT_MULTI_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_PORT_MULTI_CFG), + "::", + stringify!(bEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_PORT_MULTI_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOCAL_PORT_MULTI_CFG = tagNET_DVR_LOCAL_PORT_MULTI_CFG; +pub type LPNET_DVR_LOCAL_PORT_MULTI_CFG = *mut tagNET_DVR_LOCAL_PORT_MULTI_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RTSP_PARAMS_CFG { + pub dwMaxBuffRoomNum: DWORD, + pub byUseSort: BYTE, + pub byRes: [BYTE; 123usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RTSP_PARAMS_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_DVR_RTSP_PARAMS_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RTSP_PARAMS_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxBuffRoomNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RTSP_PARAMS_CFG), + "::", + stringify!(dwMaxBuffRoomNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseSort) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RTSP_PARAMS_CFG), + "::", + stringify!(byUseSort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RTSP_PARAMS_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RTSP_PARAMS_CFG = tagNET_DVR_RTSP_PARAMS_CFG; +pub type LPNET_DVR_RTSP_PARAMS_CFG = *mut tagNET_DVR_RTSP_PARAMS_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OPTICAL_CHANNEL_BIND { + pub wChannelIndex: WORD, + pub wSubChannel: WORD, + pub byBind: BYTE, + pub byRes: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OPTICAL_CHANNEL_BIND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_OPTICAL_CHANNEL_BIND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OPTICAL_CHANNEL_BIND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wChannelIndex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_CHANNEL_BIND), + "::", + stringify!(wChannelIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSubChannel) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_CHANNEL_BIND), + "::", + stringify!(wSubChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBind) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_CHANNEL_BIND), + "::", + stringify!(byBind) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_CHANNEL_BIND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_OPTICAL_CHANNEL_BIND = tagNET_DVR_OPTICAL_CHANNEL_BIND; +pub type LPNET_DVR_OPTICAL_CHANNEL_BIND = *mut tagNET_DVR_OPTICAL_CHANNEL_BIND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OPTICAL_CHANNEL_CFG { + pub dwSize: DWORD, + pub struBindVideo: NET_DVR_OPTICAL_CHANNEL_BIND, + pub struBindAudio: NET_DVR_OPTICAL_CHANNEL_BIND, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OPTICAL_CHANNEL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_OPTICAL_CHANNEL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OPTICAL_CHANNEL_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_CHANNEL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBindVideo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_CHANNEL_CFG), + "::", + stringify!(struBindVideo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBindAudio) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_CHANNEL_CFG), + "::", + stringify!(struBindAudio) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_CHANNEL_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_OPTICAL_CHANNEL_CFG = tagNET_DVR_OPTICAL_CHANNEL_CFG; +pub type LPNET_DVR_OPTICAL_CHANNEL_CFG = *mut tagNET_DVR_OPTICAL_CHANNEL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OPTICAL_INFO { + pub dwSize: DWORD, + pub bySlotNum: BYTE, + pub byChannel: BYTE, + pub byRes: [BYTE; 18usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OPTICAL_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_DVR_OPTICAL_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OPTICAL_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySlotNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_INFO), + "::", + stringify!(bySlotNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_INFO), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_OPTICAL_INFO = tagNET_DVR_OPTICAL_INFO; +pub type LPNET_DVR_OPTICAL_INFO = *mut tagNET_DVR_OPTICAL_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUDIO_SURCHAN_CFG { + pub dwSize: DWORD, + pub byStatus: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwSubWinNum: DWORD, + pub dwSurChanNum: DWORD, + pub struIpaddr: NET_DVR_IPADDR, + pub wPort: WORD, + pub byRes2: [BYTE; 14usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUDIO_SURCHAN_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 176usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUDIO_SURCHAN_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AUDIO_SURCHAN_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_SURCHAN_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_SURCHAN_CFG), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_SURCHAN_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSubWinNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_SURCHAN_CFG), + "::", + stringify!(dwSubWinNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSurChanNum) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_SURCHAN_CFG), + "::", + stringify!(dwSurChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIpaddr) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_SURCHAN_CFG), + "::", + stringify!(struIpaddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_SURCHAN_CFG), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 162usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_SURCHAN_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_AUDIO_SURCHAN_CFG = tagNET_DVR_AUDIO_SURCHAN_CFG; +pub type LPNET_DVR_AUDIO_SURCHAN_CFG = *mut tagNET_DVR_AUDIO_SURCHAN_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ETHERNET_CHANNEL_INFO { + pub dwSize: DWORD, + pub byConverge: [BYTE; 8usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ETHERNET_CHANNEL_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_ETHERNET_CHANNEL_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ETHERNET_CHANNEL_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ETHERNET_CHANNEL_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byConverge) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ETHERNET_CHANNEL_INFO), + "::", + stringify!(byConverge) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ETHERNET_CHANNEL_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ETHERNET_CHANNEL_INFO = tagNET_DVR_ETHERNET_CHANNEL_INFO; +pub type LPNET_DVR_ETHERNET_CHANNEL_INFO = *mut tagNET_DVR_ETHERNET_CHANNEL_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SPARTAN_INFO { + pub dwSize: DWORD, + pub bySpartanStatus: BYTE, + pub byRes: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SPARTAN_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_SPARTAN_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SPARTAN_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPARTAN_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpartanStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPARTAN_INFO), + "::", + stringify!(bySpartanStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPARTAN_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SPARTAN_INFO = tagNET_DVR_SPARTAN_INFO; +pub type LPNET_DVR_SPARTAN_INFO = *mut tagNET_DVR_SPARTAN_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IPADDR_FILTERCFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byFilterType: BYTE, + pub byRes: [BYTE; 18usize], + pub byIPAddr: [BYTE; 1024usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPADDR_FILTERCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1048usize, + concat!("Size of: ", stringify!(tagNET_DVR_IPADDR_FILTERCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IPADDR_FILTERCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPADDR_FILTERCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPADDR_FILTERCFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFilterType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPADDR_FILTERCFG), + "::", + stringify!(byFilterType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPADDR_FILTERCFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIPAddr) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPADDR_FILTERCFG), + "::", + stringify!(byIPAddr) + ) + ); +} +pub type NET_DVR_IPADDR_FILTERCFG = tagNET_DVR_IPADDR_FILTERCFG; +pub type LPNET_DVR_IPADDR_FILTERCFG = *mut tagNET_DVR_IPADDR_FILTERCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOGO_OVERLAYCFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwCoordinateX: DWORD, + pub dwCoordinateY: DWORD, + pub wPicWidth: WORD, + pub wPicHeight: WORD, + pub byLogoName: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOGO_OVERLAYCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOGO_OVERLAYCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOGO_OVERLAYCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOGO_OVERLAYCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOGO_OVERLAYCFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOGO_OVERLAYCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCoordinateX) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOGO_OVERLAYCFG), + "::", + stringify!(dwCoordinateX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCoordinateY) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOGO_OVERLAYCFG), + "::", + stringify!(dwCoordinateY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPicWidth) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOGO_OVERLAYCFG), + "::", + stringify!(wPicWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPicHeight) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOGO_OVERLAYCFG), + "::", + stringify!(wPicHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLogoName) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOGO_OVERLAYCFG), + "::", + stringify!(byLogoName) + ) + ); +} +pub type NET_DVR_LOGO_OVERLAYCFG = tagNET_DVR_LOGO_OVERLAYCFG; +pub type LPNET_DVR_LOGO_OVERLAYCFG = *mut tagNET_DVR_LOGO_OVERLAYCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INVALID_DISK_PARAM { + pub struStructHead: NET_DVR_STRUCTHEAD, + pub dwDiskNo: DWORD, + pub byDelAll: BYTE, + pub byres: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INVALID_DISK_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_INVALID_DISK_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INVALID_DISK_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStructHead) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INVALID_DISK_PARAM), + "::", + stringify!(struStructHead) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDiskNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INVALID_DISK_PARAM), + "::", + stringify!(dwDiskNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDelAll) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INVALID_DISK_PARAM), + "::", + stringify!(byDelAll) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byres) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INVALID_DISK_PARAM), + "::", + stringify!(byres) + ) + ); +} +pub type NET_DVR_INVALID_DISK_PARAM = tagNET_DVR_INVALID_DISK_PARAM; +pub type LPNET_DVR_INVALID_DISK_PARAM = *mut tagNET_DVR_INVALID_DISK_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INVALID_MOUNT_DISK_PARAM { + pub struStructHead: NET_DVR_STRUCTHEAD, + pub dwDiskNo: DWORD, + pub byres: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INVALID_MOUNT_DISK_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_INVALID_MOUNT_DISK_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_INVALID_MOUNT_DISK_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStructHead) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INVALID_MOUNT_DISK_PARAM), + "::", + stringify!(struStructHead) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDiskNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INVALID_MOUNT_DISK_PARAM), + "::", + stringify!(dwDiskNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byres) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INVALID_MOUNT_DISK_PARAM), + "::", + stringify!(byres) + ) + ); +} +pub type NET_DVR_MOUNT_DISK_PARAM = tagNET_DVR_INVALID_MOUNT_DISK_PARAM; +pub type LPNET_DVR_MOUNT_DISK_PARAM = *mut tagNET_DVR_INVALID_MOUNT_DISK_PARAM; +pub const NET_SDK_CALLBACK_TYPE_NET_SDK_CALLBACK_TYPE_STATUS: NET_SDK_CALLBACK_TYPE = 0; +pub const NET_SDK_CALLBACK_TYPE_NET_SDK_CALLBACK_TYPE_PROGRESS: NET_SDK_CALLBACK_TYPE = 1; +pub const NET_SDK_CALLBACK_TYPE_NET_SDK_CALLBACK_TYPE_DATA: NET_SDK_CALLBACK_TYPE = 2; +pub type NET_SDK_CALLBACK_TYPE = ::std::os::raw::c_uint; +pub const NET_SDK_CALLBACK_STATUS_NORMAL_NET_SDK_CALLBACK_STATUS_SUCCESS: + NET_SDK_CALLBACK_STATUS_NORMAL = 1000; +pub const NET_SDK_CALLBACK_STATUS_NORMAL_NET_SDK_CALLBACK_STATUS_PROCESSING: + NET_SDK_CALLBACK_STATUS_NORMAL = 1001; +pub const NET_SDK_CALLBACK_STATUS_NORMAL_NET_SDK_CALLBACK_STATUS_FAILED: + NET_SDK_CALLBACK_STATUS_NORMAL = 1002; +pub const NET_SDK_CALLBACK_STATUS_NORMAL_NET_SDK_CALLBACK_STATUS_EXCEPTION: + NET_SDK_CALLBACK_STATUS_NORMAL = 1003; +pub const NET_SDK_CALLBACK_STATUS_NORMAL_NET_SDK_CALLBACK_STATUS_LANGUAGE_MISMATCH: + NET_SDK_CALLBACK_STATUS_NORMAL = 1004; +pub const NET_SDK_CALLBACK_STATUS_NORMAL_NET_SDK_CALLBACK_STATUS_DEV_TYPE_MISMATCH: + NET_SDK_CALLBACK_STATUS_NORMAL = 1005; +pub const NET_SDK_CALLBACK_STATUS_NORMAL_NET_DVR_CALLBACK_STATUS_SEND_WAIT: + NET_SDK_CALLBACK_STATUS_NORMAL = 1006; +pub type NET_SDK_CALLBACK_STATUS_NORMAL = ::std::os::raw::c_uint; +pub const NET_SDK_GET_NEXT_STATUS_NET_SDK_GET_NEXT_STATUS_SUCCESS: NET_SDK_GET_NEXT_STATUS = 1000; +pub const NET_SDK_GET_NEXT_STATUS_NET_SDK_GET_NETX_STATUS_NEED_WAIT: NET_SDK_GET_NEXT_STATUS = 1001; +pub const NET_SDK_GET_NEXT_STATUS_NET_SDK_GET_NEXT_STATUS_FINISH: NET_SDK_GET_NEXT_STATUS = 1002; +pub const NET_SDK_GET_NEXT_STATUS_NET_SDK_GET_NEXT_STATUS_FAILED: NET_SDK_GET_NEXT_STATUS = 1003; +pub type NET_SDK_GET_NEXT_STATUS = ::std::os::raw::c_uint; +pub const NET_SDK_SENDWITHRECV_STATUS_NET_SDK_CONFIG_STATUS_SUCCESS: NET_SDK_SENDWITHRECV_STATUS = + 1000; +pub const NET_SDK_SENDWITHRECV_STATUS_NET_SDK_CONFIG_STATUS_NEEDWAIT: NET_SDK_SENDWITHRECV_STATUS = + 1001; +pub const NET_SDK_SENDWITHRECV_STATUS_NET_SDK_CONFIG_STATUS_FINISH: NET_SDK_SENDWITHRECV_STATUS = + 1002; +pub const NET_SDK_SENDWITHRECV_STATUS_NET_SDK_CONFIG_STATUS_FAILED: NET_SDK_SENDWITHRECV_STATUS = + 1003; +pub const NET_SDK_SENDWITHRECV_STATUS_NET_SDK_CONFIG_STATUS_EXCEPTION: NET_SDK_SENDWITHRECV_STATUS = + 1004; +pub type NET_SDK_SENDWITHRECV_STATUS = ::std::os::raw::c_uint; +pub const tagNET_SDK_IPC_CFG_FILE_ERR_CODE_NET_SDK_IPC_CFG_FILE_NO_ERR: + tagNET_SDK_IPC_CFG_FILE_ERR_CODE = 0; +pub const tagNET_SDK_IPC_CFG_FILE_ERR_CODE_NET_SDK_IPC_CFG_FILE_ERR_CODE_CHANNEL_INVALID: + tagNET_SDK_IPC_CFG_FILE_ERR_CODE = 1; +pub const tagNET_SDK_IPC_CFG_FILE_ERR_CODE_NET_SDK_IPC_CFG_FILE_ERR_CODE_CHANNEL_DUPLICATE: + tagNET_SDK_IPC_CFG_FILE_ERR_CODE = 2; +pub const tagNET_SDK_IPC_CFG_FILE_ERR_CODE_NET_SDK_IPC_CFG_FILE_ERR_CODE_IP_INVALID: + tagNET_SDK_IPC_CFG_FILE_ERR_CODE = 3; +pub const tagNET_SDK_IPC_CFG_FILE_ERR_CODE_NET_SDK_IPC_CFG_FILE_ERR_CODE_IP_DUPLICATE: + tagNET_SDK_IPC_CFG_FILE_ERR_CODE = 4; +pub const tagNET_SDK_IPC_CFG_FILE_ERR_CODE_NET_SDK_IPC_CFG_FILE_ERR_CODE_IP_CONFLICT_WITH_LOCAL: + tagNET_SDK_IPC_CFG_FILE_ERR_CODE = 5; +pub const tagNET_SDK_IPC_CFG_FILE_ERR_CODE_NET_SDK_IPC_CFG_FILE_ERR_CODE_PROTOCOL_INVALID: + tagNET_SDK_IPC_CFG_FILE_ERR_CODE = 6; +pub const tagNET_SDK_IPC_CFG_FILE_ERR_CODE_NET_SDK_IPC_CFG_FILE_ERR_CODE_PORT_INVALID: + tagNET_SDK_IPC_CFG_FILE_ERR_CODE = 7; +pub const tagNET_SDK_IPC_CFG_FILE_ERR_CODE_NET_SDK_IPC_CFG_FILE_ERR_CODE_DEVICE_CHANNEL_ERR: + tagNET_SDK_IPC_CFG_FILE_ERR_CODE = 8; +pub const tagNET_SDK_IPC_CFG_FILE_ERR_CODE_NET_SDK_IPC_CFG_FILE_ERR_CODE_USER_NAME_ERR: + tagNET_SDK_IPC_CFG_FILE_ERR_CODE = 9; +pub const tagNET_SDK_IPC_CFG_FILE_ERR_CODE_NET_SDK_IPC_CFG_FILE_ERR_CODE_PASSWD_ERR: + tagNET_SDK_IPC_CFG_FILE_ERR_CODE = 10; +pub const tagNET_SDK_IPC_CFG_FILE_ERR_CODE_NET_SDK_IPC_CFG_FILE_ERR_CODE_TRANSPORT_PROTOCOL_INVALID : tagNET_SDK_IPC_CFG_FILE_ERR_CODE = 11 ; +pub type tagNET_SDK_IPC_CFG_FILE_ERR_CODE = ::std::os::raw::c_uint; +pub use self::tagNET_SDK_IPC_CFG_FILE_ERR_CODE as NET_SDK_IPC_CFG_FILE_ERR_CODE; +pub const NET_SDK_UPGRADE_IPC_ERR_CODE_NET_SDK_UPGRADE_IPC_INVALID: NET_SDK_UPGRADE_IPC_ERR_CODE = + 0; +pub const NET_SDK_UPGRADE_IPC_ERR_CODE_NET_SDK_UPGRADE_IPC_SUCCESS: NET_SDK_UPGRADE_IPC_ERR_CODE = + 1; +pub const NET_SDK_UPGRADE_IPC_ERR_CODE_NET_SDK_UPGRADE_IPC_OFFLINE: NET_SDK_UPGRADE_IPC_ERR_CODE = + 2; +pub const NET_SDK_UPGRADE_IPC_ERR_CODE_NET_SDK_UPGRADE_IPC_NOT_SUPPORT: + NET_SDK_UPGRADE_IPC_ERR_CODE = 3; +pub const NET_SDK_UPGRADE_IPC_ERR_CODE_NET_SDK_UPGRADE_IPC_LANGUAGE_MISMATCH: + NET_SDK_UPGRADE_IPC_ERR_CODE = 4; +pub const NET_SDK_UPGRADE_IPC_ERR_CODE_NET_SDK_UPGRADE_IPC_WRITE_FLASH_FAILED: + NET_SDK_UPGRADE_IPC_ERR_CODE = 5; +pub const NET_SDK_UPGRADE_IPC_ERR_CODE_NET_SDK_UPGRADE_IPC_OTHER_ERROR: + NET_SDK_UPGRADE_IPC_ERR_CODE = 6; +pub type NET_SDK_UPGRADE_IPC_ERR_CODE = ::std::os::raw::c_uint; +pub const NET_SDK_REMOTE_CONFIG_STATUS_NET_SDK_REMOTE_CONFIG_STATUS_SUCCESS: + NET_SDK_REMOTE_CONFIG_STATUS = 1001; +pub const NET_SDK_REMOTE_CONFIG_STATUS_NET_SDK_REMOTE_CONFIG_STATUS_FAILED: + NET_SDK_REMOTE_CONFIG_STATUS = 1002; +pub const NET_SDK_REMOTE_CONFIG_STATUS_NET_SDK_REMOTE_CONFIG_STATUS_PROCESSING: + NET_SDK_REMOTE_CONFIG_STATUS = 1003; +pub type NET_SDK_REMOTE_CONFIG_STATUS = ::std::os::raw::c_uint; +pub const _BOARD_TYPE_DS4004HC_BOARD: _BOARD_TYPE = 2; +pub const _BOARD_TYPE_DS4008HC_BOARD: _BOARD_TYPE = 3; +pub const _BOARD_TYPE_DS4016HC_BOARD: _BOARD_TYPE = 4; +pub const _BOARD_TYPE_DS4001HF_BOARD: _BOARD_TYPE = 5; +pub const _BOARD_TYPE_DS4004HF_BOARD: _BOARD_TYPE = 6; +pub const _BOARD_TYPE_DS4002MD_BOARD: _BOARD_TYPE = 7; +pub const _BOARD_TYPE_DS4004MD_BOARD: _BOARD_TYPE = 8; +pub const _BOARD_TYPE_DS4016HCS_BOARD: _BOARD_TYPE = 9; +pub const _BOARD_TYPE_DS4004HC_PLUS_BOARD: _BOARD_TYPE = 13; +pub const _BOARD_TYPE_DS4008HC_PLUS_BOARD: _BOARD_TYPE = 14; +pub const _BOARD_TYPE_DS4016HC_PLUS_BOARD: _BOARD_TYPE = 15; +pub const _BOARD_TYPE_DS4008HF_BOARD: _BOARD_TYPE = 16; +pub const _BOARD_TYPE_DS4008MD_BOARD: _BOARD_TYPE = 17; +pub const _BOARD_TYPE_DS4008HS_BOARD: _BOARD_TYPE = 18; +pub const _BOARD_TYPE_DS4016HS_BOARD: _BOARD_TYPE = 19; +pub const _BOARD_TYPE_DS4108HCV_BOARD: _BOARD_TYPE = 20; +pub const _BOARD_TYPE_DS4116HCV_BOARD: _BOARD_TYPE = 21; +pub const _BOARD_TYPE_DS5016HC_BOARD: _BOARD_TYPE = 22; +pub const _BOARD_TYPE_DS4208HFV_BOARD: _BOARD_TYPE = 23; +pub const _BOARD_TYPE_DS4216HC_BOARD: _BOARD_TYPE = 24; +pub const _BOARD_TYPE_DS4216HFV_BOARD: _BOARD_TYPE = 25; +pub const _BOARD_TYPE_DS5008HF_BOARD: _BOARD_TYPE = 26; +pub const _BOARD_TYPE_DS5116HF_BOARD: _BOARD_TYPE = 27; +pub const _BOARD_TYPE_DS5216HC_BOARD: _BOARD_TYPE = 28; +pub const _BOARD_TYPE_DS5208HF_BOARD: _BOARD_TYPE = 29; +pub const _BOARD_TYPE_DS5216HF_BOARD: _BOARD_TYPE = 30; +pub const _BOARD_TYPE_DS4101HD_BOARD: _BOARD_TYPE = 31; +pub const _BOARD_TYPE_DS4102HD_BOARD: _BOARD_TYPE = 32; +pub const _BOARD_TYPE_DS4104HD_BOARD: _BOARD_TYPE = 33; +pub const _BOARD_TYPE_DS4002MD_PLUS_BOARD: _BOARD_TYPE = 34; +pub const _BOARD_TYPE_DS4004MD_PLUS_BOARD: _BOARD_TYPE = 35; +pub const _BOARD_TYPE_DS4204HFV_BOARD: _BOARD_TYPE = 36; +pub const _BOARD_TYPE_DS4308HCV_BOARD: _BOARD_TYPE = 37; +pub const _BOARD_TYPE_DS4308HFV_BOARD: _BOARD_TYPE = 38; +pub const _BOARD_TYPE_DS4316HCV_BOARD: _BOARD_TYPE = 39; +pub const _BOARD_TYPE_DS4316HFV_BOARD: _BOARD_TYPE = 40; +pub const _BOARD_TYPE_DS4304HD_BOARD: _BOARD_TYPE = 41; +pub const _BOARD_TYPE_DS4304HFH_BOARD: _BOARD_TYPE = 42; +pub const _BOARD_TYPE_DS4304HFV_BOARD: _BOARD_TYPE = 43; +pub const _BOARD_TYPE_DS4302HFH_BOARD: _BOARD_TYPE = 44; +pub const _BOARD_TYPE_DS5316HF_BOARD: _BOARD_TYPE = 45; +pub const _BOARD_TYPE_DS4308HW_BOARD: _BOARD_TYPE = 46; +pub const _BOARD_TYPE_DS4316HW_BOARD: _BOARD_TYPE = 47; +pub const _BOARD_TYPE_DS4308MD_BOARD: _BOARD_TYPE = 48; +pub const _BOARD_TYPE_UNKNOWN_BOARD_TYPE: _BOARD_TYPE = 4294967295; +pub type _BOARD_TYPE = ::std::os::raw::c_uint; +pub use self::_BOARD_TYPE as BOARD_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CODECARD_ABILITY { + pub byCardType: BYTE, + pub byCodeNums: BYTE, + pub byDispNums: BYTE, + pub byCodeStartIdx: BYTE, + pub byDispStartIdx: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwVgaSupportResolution: [DWORD; 32usize], + pub dwHdmiSupportResolution: [DWORD; 32usize], + pub dwDviSupportResolution: [DWORD; 32usize], + pub dwYpbprSupportResolution: [DWORD; 32usize], + pub byDispFormat: [BYTE; 8usize], + pub byWindowMode: [[BYTE; 12usize]; 8usize], + pub byRes2: [BYTE; 36usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CODECARD_ABILITY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 660usize, + concat!("Size of: ", stringify!(tagNET_DVR_CODECARD_ABILITY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CODECARD_ABILITY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODECARD_ABILITY), + "::", + stringify!(byCardType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCodeNums) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODECARD_ABILITY), + "::", + stringify!(byCodeNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispNums) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODECARD_ABILITY), + "::", + stringify!(byDispNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCodeStartIdx) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODECARD_ABILITY), + "::", + stringify!(byCodeStartIdx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispStartIdx) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODECARD_ABILITY), + "::", + stringify!(byDispStartIdx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODECARD_ABILITY), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVgaSupportResolution) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODECARD_ABILITY), + "::", + stringify!(dwVgaSupportResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHdmiSupportResolution) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODECARD_ABILITY), + "::", + stringify!(dwHdmiSupportResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDviSupportResolution) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODECARD_ABILITY), + "::", + stringify!(dwDviSupportResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwYpbprSupportResolution) as usize - ptr as usize }, + 392usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODECARD_ABILITY), + "::", + stringify!(dwYpbprSupportResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispFormat) as usize - ptr as usize }, + 520usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODECARD_ABILITY), + "::", + stringify!(byDispFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWindowMode) as usize - ptr as usize }, + 528usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODECARD_ABILITY), + "::", + stringify!(byWindowMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 624usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODECARD_ABILITY), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CODECARD_ABILITY = tagNET_DVR_CODECARD_ABILITY; +pub type LPNET_DVR_CODECARD_ABILITY = *mut tagNET_DVR_CODECARD_ABILITY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CODESVR_ABILITY { + pub dwSize: DWORD, + pub byCardNums: BYTE, + pub byStartChan: BYTE, + pub byRes1: [BYTE; 2usize], + pub struCodeCardAbility: [NET_DVR_CODECARD_ABILITY; 8usize], + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CODESVR_ABILITY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 5352usize, + concat!("Size of: ", stringify!(tagNET_DVR_CODESVR_ABILITY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CODESVR_ABILITY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESVR_ABILITY), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNums) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESVR_ABILITY), + "::", + stringify!(byCardNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartChan) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESVR_ABILITY), + "::", + stringify!(byStartChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESVR_ABILITY), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCodeCardAbility) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESVR_ABILITY), + "::", + stringify!(struCodeCardAbility) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 5288usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODESVR_ABILITY), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CODESVR_ABILITY = tagNET_DVR_CODESVR_ABILITY; +pub type LPNET_DVR_CODESVR_ABILITY = *mut tagNET_DVR_CODESVR_ABILITY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CODER_SERVER_OUTPUT_CFG { + pub dwSize: DWORD, + pub byDispChanType: BYTE, + pub byVedioFormat: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwResolution: DWORD, + pub dwWindowMode: DWORD, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CODER_SERVER_OUTPUT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_CODER_SERVER_OUTPUT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_CODER_SERVER_OUTPUT_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODER_SERVER_OUTPUT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispChanType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODER_SERVER_OUTPUT_CFG), + "::", + stringify!(byDispChanType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVedioFormat) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODER_SERVER_OUTPUT_CFG), + "::", + stringify!(byVedioFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODER_SERVER_OUTPUT_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwResolution) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODER_SERVER_OUTPUT_CFG), + "::", + stringify!(dwResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWindowMode) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODER_SERVER_OUTPUT_CFG), + "::", + stringify!(dwWindowMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODER_SERVER_OUTPUT_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CODER_SERVER_OUTPUT_CFG = tagNET_DVR_CODER_SERVER_OUTPUT_CFG; +pub type LPNET_DVR_CODER_SERVER_OUTPUT_CFG = *mut tagNET_DVR_CODER_SERVER_OUTPUT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DISPLAY_START_INFO { + pub dwSize: DWORD, + pub dwDisplayChan: DWORD, + pub dwCodeChan: DWORD, + pub dwWinNum: DWORD, + pub byEnableAudio: BYTE, + pub byRes: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DISPLAY_START_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_DVR_DISPLAY_START_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DISPLAY_START_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPLAY_START_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDisplayChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPLAY_START_INFO), + "::", + stringify!(dwDisplayChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCodeChan) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPLAY_START_INFO), + "::", + stringify!(dwCodeChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWinNum) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPLAY_START_INFO), + "::", + stringify!(dwWinNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableAudio) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPLAY_START_INFO), + "::", + stringify!(byEnableAudio) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPLAY_START_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DISPLAY_START_INFO = tagNET_DVR_DISPLAY_START_INFO; +pub type LPNET_DVR_DISPLAY_START_INFO = *mut tagNET_DVR_DISPLAY_START_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CODER_WINDOW_INFO { + pub dwSize: DWORD, + pub dwDisplayChan: DWORD, + pub dwWinNum: DWORD, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CODER_WINDOW_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28usize, + concat!("Size of: ", stringify!(tagNET_DVR_CODER_WINDOW_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CODER_WINDOW_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODER_WINDOW_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDisplayChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODER_WINDOW_INFO), + "::", + stringify!(dwDisplayChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWinNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODER_WINDOW_INFO), + "::", + stringify!(dwWinNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CODER_WINDOW_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CODER_WINDOW_INFO = tagNET_DVR_CODER_WINDOW_INFO; +pub type LPNET_DVR_CODER_WINDOW_INFO = *mut tagNET_DVR_CODER_WINDOW_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WINDOW_STATUS { + pub dwSize: DWORD, + pub dwCodeChan: DWORD, + pub byDisplay: BYTE, + pub byAudio: BYTE, + pub byRes: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WINDOW_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_WINDOW_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WINDOW_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WINDOW_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCodeChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WINDOW_STATUS), + "::", + stringify!(dwCodeChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDisplay) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WINDOW_STATUS), + "::", + stringify!(byDisplay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudio) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WINDOW_STATUS), + "::", + stringify!(byAudio) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WINDOW_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WINDOW_STATUS = tagNET_DVR_WINDOW_STATUS; +pub type LPNET_DVR_WINDOW_STATUS = *mut tagNET_DVR_WINDOW_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECORD_LOCK_PERCENTAGE { + pub dwSize: DWORD, + pub byPercentage: BYTE, + pub byRes: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECORD_LOCK_PERCENTAGE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_RECORD_LOCK_PERCENTAGE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_RECORD_LOCK_PERCENTAGE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_LOCK_PERCENTAGE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPercentage) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_LOCK_PERCENTAGE), + "::", + stringify!(byPercentage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_LOCK_PERCENTAGE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RECORD_LOCK_PERCENTAGE = tagNET_DVR_RECORD_LOCK_PERCENTAGE; +pub type LPNET_DVR_RECORD_LOCK_PERCENTAGE = *mut tagNET_DVR_RECORD_LOCK_PERCENTAGE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_UPDATE_RECORD_INFO { + pub dwSize: DWORD, + pub struStreasmInfo: NET_DVR_STREAM_INFO, + pub dwBeginTime: DWORD, + pub dwEndTime: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_UPDATE_RECORD_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 116usize, + concat!("Size of: ", stringify!(tagNET_DVR_UPDATE_RECORD_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_UPDATE_RECORD_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPDATE_RECORD_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreasmInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPDATE_RECORD_INFO), + "::", + stringify!(struStreasmInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBeginTime) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPDATE_RECORD_INFO), + "::", + stringify!(dwBeginTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEndTime) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPDATE_RECORD_INFO), + "::", + stringify!(dwEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPDATE_RECORD_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_UPDATE_RECORD_INFO = tagNET_DVR_UPDATE_RECORD_INFO; +pub type LPNET_DVR_UPDATE_RECORD_INFO = *mut tagNET_DVR_UPDATE_RECORD_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CMD_TRIGGER_PERIOD_RECORD_PARA { + pub struStreamInfo: NET_DVR_STREAM_INFO, + pub dwCmdType: DWORD, + pub dwRecordTimeLen: DWORD, + pub byEventID: [BYTE; 64usize], + pub dwLockDuration: DWORD, + pub byBackUp: BYTE, + pub byPreRecord: BYTE, + pub byRes: [BYTE; 122usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CMD_TRIGGER_PERIOD_RECORD_PARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 272usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_CMD_TRIGGER_PERIOD_RECORD_PARA) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_CMD_TRIGGER_PERIOD_RECORD_PARA) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMD_TRIGGER_PERIOD_RECORD_PARA), + "::", + stringify!(struStreamInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCmdType) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMD_TRIGGER_PERIOD_RECORD_PARA), + "::", + stringify!(dwCmdType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordTimeLen) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMD_TRIGGER_PERIOD_RECORD_PARA), + "::", + stringify!(dwRecordTimeLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEventID) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMD_TRIGGER_PERIOD_RECORD_PARA), + "::", + stringify!(byEventID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLockDuration) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMD_TRIGGER_PERIOD_RECORD_PARA), + "::", + stringify!(dwLockDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBackUp) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMD_TRIGGER_PERIOD_RECORD_PARA), + "::", + stringify!(byBackUp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPreRecord) as usize - ptr as usize }, + 149usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMD_TRIGGER_PERIOD_RECORD_PARA), + "::", + stringify!(byPreRecord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMD_TRIGGER_PERIOD_RECORD_PARA), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CMD_TRIGGER_PERIOD_RECORD_PARA = tagNET_DVR_CMD_TRIGGER_PERIOD_RECORD_PARA; +pub type LPNET_DVR_CMD_TRIGGER_PERIOD_RECORD_PARA = *mut tagNET_DVR_CMD_TRIGGER_PERIOD_RECORD_PARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCK_FILE_BY_NAME_PARA { + pub byFileName: [BYTE; 32usize], + pub dwLockDuration: DWORD, + pub byRes: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCK_FILE_BY_NAME_PARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 548usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOCK_FILE_BY_NAME_PARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_LOCK_FILE_BY_NAME_PARA) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCK_FILE_BY_NAME_PARA), + "::", + stringify!(byFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLockDuration) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCK_FILE_BY_NAME_PARA), + "::", + stringify!(dwLockDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCK_FILE_BY_NAME_PARA), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOCK_FILE_BY_NAME_PARA = tagNET_DVR_LOCK_FILE_BY_NAME_PARA; +pub type LPNET_DVR_LOCK_FILE_BY_NAME_PARA = *mut tagNET_DVR_LOCK_FILE_BY_NAME_PARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MULTI_STREAM_COMPRESSIONCFG_COND { + pub dwSize: DWORD, + pub struStreamInfo: NET_DVR_STREAM_INFO, + pub dwStreamType: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MULTI_STREAM_COMPRESSIONCFG_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 112usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_MULTI_STREAM_COMPRESSIONCFG_COND) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MULTI_STREAM_COMPRESSIONCFG_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_STREAM_COMPRESSIONCFG_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_STREAM_COMPRESSIONCFG_COND), + "::", + stringify!(struStreamInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStreamType) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_STREAM_COMPRESSIONCFG_COND), + "::", + stringify!(dwStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_STREAM_COMPRESSIONCFG_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MULTI_STREAM_COMPRESSIONCFG_COND = tagNET_DVR_MULTI_STREAM_COMPRESSIONCFG_COND; +pub type LPNET_DVR_MULTI_STREAM_COMPRESSIONCFG_COND = + *mut tagNET_DVR_MULTI_STREAM_COMPRESSIONCFG_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MULTI_STREAM_COMPRESSIONCFG { + pub dwSize: DWORD, + pub dwStreamType: DWORD, + pub struStreamPara: NET_DVR_COMPRESSION_INFO_V30, + pub dwResolution: DWORD, + pub byRes: [BYTE; 76usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MULTI_STREAM_COMPRESSIONCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 116usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_MULTI_STREAM_COMPRESSIONCFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MULTI_STREAM_COMPRESSIONCFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_STREAM_COMPRESSIONCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStreamType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_STREAM_COMPRESSIONCFG), + "::", + stringify!(dwStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamPara) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_STREAM_COMPRESSIONCFG), + "::", + stringify!(struStreamPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwResolution) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_STREAM_COMPRESSIONCFG), + "::", + stringify!(dwResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_STREAM_COMPRESSIONCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MULTI_STREAM_COMPRESSIONCFG = tagNET_DVR_MULTI_STREAM_COMPRESSIONCFG; +pub type LPNET_DVR_MULTI_STREAM_COMPRESSIONCFG = *mut tagNET_DVR_MULTI_STREAM_COMPRESSIONCFG; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_PUSHALARMINFO_V40 { + pub dwAlarmType: DWORD, + pub uAlarmInfo: tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1 { + pub byRes: [BYTE; 300usize], + pub struIOAlarm: tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_1, + pub struStreamIDorChannel: tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_2, + pub struDiskAlarm: tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_3, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_1 { + pub dwAlarmInputNumber: DWORD, + pub byAlarmOutputNumber: [BYTE; 96usize], + pub byAlarmRelateChannel: [BYTE; 64usize], + pub byRes1: [BYTE; 97usize], + pub byDeviceID: [BYTE; 32usize], + pub byRes2: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 300usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmInputNumber) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(dwAlarmInputNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutputNumber) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byAlarmOutputNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmRelateChannel) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byAlarmRelateChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 261usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 293usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes2) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_2 { + pub byStreamID: [BYTE; 32usize], + pub byRes1: [BYTE; 132usize], + pub byChannel: [BYTE; 64usize], + pub byRes2: [BYTE; 33usize], + pub byDeviceID: [BYTE; 32usize], + pub byRes3: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_2, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 300usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byStreamID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 228usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 261usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 293usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byRes3) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_3 { + pub byRes1: [BYTE; 228usize], + pub byDiskNumber: [BYTE; 33usize], + pub byDeviceID: [BYTE; 32usize], + pub byRes2: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_3() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_3, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 300usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDiskNumber) as usize - ptr as usize }, + 228usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byDiskNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 261usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 293usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byRes2) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 300usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIOAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1), + "::", + stringify!(struIOAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamIDorChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1), + "::", + stringify!(struStreamIDorChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDiskAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40__bindgen_ty_1), + "::", + stringify!(struDiskAlarm) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PUSHALARMINFO_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 304usize, + concat!("Size of: ", stringify!(tagNET_DVR_PUSHALARMINFO_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PUSHALARMINFO_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40), + "::", + stringify!(dwAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uAlarmInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUSHALARMINFO_V40), + "::", + stringify!(uAlarmInfo) + ) + ); +} +pub type NET_DVR_PUSHALARMINFO_V40 = tagNET_DVR_PUSHALARMINFO_V40; +pub type LPNET_DVR_PUSHALARMINFO_V40 = *mut tagNET_DVR_PUSHALARMINFO_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECORD_PACK { + pub struStruceHead: NET_DVR_STRUCTHEAD, + pub dwPackageInterval: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECORD_PACK() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_RECORD_PACK)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RECORD_PACK)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStruceHead) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PACK), + "::", + stringify!(struStruceHead) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPackageInterval) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PACK), + "::", + stringify!(dwPackageInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PACK), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RECORD_PACK = tagNET_DVR_RECORD_PACK; +pub type LPNET_DVR_RECORD_PACK = *mut tagNET_DVR_RECORD_PACK; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_NET_DISK_SERACH_PARAM { + pub struIP: NET_DVR_IPADDR, + pub wPort: WORD, + pub byRes: [BYTE; 10usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NET_DISK_SERACH_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 156usize, + concat!("Size of: ", stringify!(tagNET_DVR_NET_DISK_SERACH_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_NET_DISK_SERACH_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NET_DISK_SERACH_PARAM), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NET_DISK_SERACH_PARAM), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 146usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NET_DISK_SERACH_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_NET_DISK_SERACH_PARAM = tagNET_DVR_NET_DISK_SERACH_PARAM; +pub type LPNET_DVR_NET_DISK_SERACH_PARAM = *mut tagNET_DVR_NET_DISK_SERACH_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_NET_DISK_SERACH_RET { + pub byDirectory: [BYTE; 128usize], + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NET_DISK_SERACH_RET() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!("Size of: ", stringify!(tagNET_DVR_NET_DISK_SERACH_RET)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NET_DISK_SERACH_RET)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDirectory) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NET_DISK_SERACH_RET), + "::", + stringify!(byDirectory) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NET_DISK_SERACH_RET), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_NET_DISK_SERACH_RET = tagNET_DVR_NET_DISK_SERACH_RET; +pub type LPNET_DVR_NET_DISK_SERACH_RET = *mut tagNET_DVR_NET_DISK_SERACH_RET; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WD1_CFG { + pub struStruceHead: NET_DVR_STRUCTHEAD, + pub byWD1Enable: BYTE, + pub byRes: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WD1_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_WD1_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WD1_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStruceHead) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WD1_CFG), + "::", + stringify!(struStruceHead) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWD1Enable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WD1_CFG), + "::", + stringify!(byWD1Enable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WD1_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WD1_CFG = tagNET_DVR_WD1_CFG; +pub type LPNET_DVR_WD1_CFG = *mut tagNET_DVR_WD1_CFG; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_FTPCFG_V40 { + pub struStruceHead: NET_DVR_STRUCTHEAD, + pub byEnableFTP: BYTE, + pub byProtocolType: BYTE, + pub wFTPPort: WORD, + pub unionServer: tagNET_DVR_FTPCFG_V40__bindgen_ty_1, + pub szUserName: [BYTE; 32usize], + pub szPassWORD: [BYTE; 16usize], + pub szTopCustomDir: [BYTE; 64usize], + pub szSubCustomDir: [BYTE; 64usize], + pub byDirLevel: BYTE, + pub byTopDirMode: BYTE, + pub bySubDirMode: BYTE, + pub byType: BYTE, + pub byEnableAnony: BYTE, + pub byAddresType: BYTE, + pub byFTPPicType: BYTE, + pub byPicArchivingInterval: BYTE, + pub struPicNameRule: NET_DVR_PICTURE_NAME_EX, + pub byPicNameRuleType: BYTE, + pub byRes: [BYTE; 203usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_FTPCFG_V40__bindgen_ty_1 { + pub struDomain: tagNET_DVR_FTPCFG_V40__bindgen_ty_1__bindgen_ty_1, + pub struAddrIP: tagNET_DVR_FTPCFG_V40__bindgen_ty_1__bindgen_ty_2, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FTPCFG_V40__bindgen_ty_1__bindgen_ty_1 { + pub szDomain: [BYTE; 64usize], + pub byRes1: [BYTE; 80usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FTPCFG_V40__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_FTPCFG_V40__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FTPCFG_V40__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDomain) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPCFG_V40__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(szDomain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPCFG_V40__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes1) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FTPCFG_V40__bindgen_ty_1__bindgen_ty_2 { + pub struIp: NET_DVR_IPADDR, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FTPCFG_V40__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_FTPCFG_V40__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FTPCFG_V40__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIp) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPCFG_V40__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(struIp) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FTPCFG_V40__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!("Size of: ", stringify!(tagNET_DVR_FTPCFG_V40__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FTPCFG_V40__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDomain) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPCFG_V40__bindgen_ty_1), + "::", + stringify!(struDomain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAddrIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPCFG_V40__bindgen_ty_1), + "::", + stringify!(struAddrIP) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FTPCFG_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 588usize, + concat!("Size of: ", stringify!(tagNET_DVR_FTPCFG_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FTPCFG_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStruceHead) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPCFG_V40), + "::", + stringify!(struStruceHead) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableFTP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPCFG_V40), + "::", + stringify!(byEnableFTP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProtocolType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPCFG_V40), + "::", + stringify!(byProtocolType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFTPPort) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPCFG_V40), + "::", + stringify!(wFTPPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).unionServer) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPCFG_V40), + "::", + stringify!(unionServer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szUserName) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPCFG_V40), + "::", + stringify!(szUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szPassWORD) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPCFG_V40), + "::", + stringify!(szPassWORD) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szTopCustomDir) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPCFG_V40), + "::", + stringify!(szTopCustomDir) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szSubCustomDir) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPCFG_V40), + "::", + stringify!(szSubCustomDir) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDirLevel) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPCFG_V40), + "::", + stringify!(byDirLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTopDirMode) as usize - ptr as usize }, + 329usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPCFG_V40), + "::", + stringify!(byTopDirMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubDirMode) as usize - ptr as usize }, + 330usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPCFG_V40), + "::", + stringify!(bySubDirMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 331usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPCFG_V40), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableAnony) as usize - ptr as usize }, + 332usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPCFG_V40), + "::", + stringify!(byEnableAnony) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddresType) as usize - ptr as usize }, + 333usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPCFG_V40), + "::", + stringify!(byAddresType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFTPPicType) as usize - ptr as usize }, + 334usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPCFG_V40), + "::", + stringify!(byFTPPicType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicArchivingInterval) as usize - ptr as usize }, + 335usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPCFG_V40), + "::", + stringify!(byPicArchivingInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPicNameRule) as usize - ptr as usize }, + 336usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPCFG_V40), + "::", + stringify!(struPicNameRule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicNameRuleType) as usize - ptr as usize }, + 384usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPCFG_V40), + "::", + stringify!(byPicNameRuleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 385usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPCFG_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FTPCFG_V40 = tagNET_DVR_FTPCFG_V40; +pub type LPNET_DVR_FTPCFG_V40 = *mut tagNET_DVR_FTPCFG_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FTP_TYPE { + pub byType: BYTE, + pub byRes: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FTP_TYPE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(tagNET_DVR_FTP_TYPE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FTP_TYPE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTP_TYPE), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTP_TYPE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FTP_TYPE = tagNET_DVR_FTP_TYPE; +pub type LPNET_DVR_FTP_TYPE = *mut tagNET_DVR_FTP_TYPE; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct NET_DVR_FTP_SERVER_TEST_PARA { + pub dwSize: DWORD, + pub byEnableFTP: BYTE, + pub byProtocolType: BYTE, + pub wFTPPort: WORD, + pub unionServer: NET_DVR_FTP_SERVER_TEST_PARA__bindgen_ty_1, + pub szUserName: [BYTE; 32usize], + pub szPassWORD: [BYTE; 16usize], + pub szTopCustomDir: [BYTE; 64usize], + pub szSubCustomDir: [BYTE; 64usize], + pub byDirLevel: BYTE, + pub byTopDirMode: BYTE, + pub bySubDirMode: BYTE, + pub byType: BYTE, + pub byEnableAnony: BYTE, + pub byAddresType: BYTE, + pub byRes2: [BYTE; 198usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union NET_DVR_FTP_SERVER_TEST_PARA__bindgen_ty_1 { + pub byRes: [BYTE; 144usize], + pub struDomain: NET_DVR_FTP_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_1, + pub struAddrIP: NET_DVR_FTP_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_2, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_FTP_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_1 { + pub szDomain: [BYTE; 64usize], + pub byRes1: [BYTE; 80usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_FTP_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + NET_DVR_FTP_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!( + "Size of: ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDomain) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(szDomain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes1) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_FTP_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_2 { + pub struIp: NET_DVR_IPADDR, +} +#[test] +fn bindgen_test_layout_NET_DVR_FTP_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit< + NET_DVR_FTP_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_2, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!( + "Size of: ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIp) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(struIp) + ) + ); +} +#[test] +fn bindgen_test_layout_NET_DVR_FTP_SERVER_TEST_PARA__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!( + "Size of: ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA__bindgen_ty_1), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDomain) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA__bindgen_ty_1), + "::", + stringify!(struDomain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAddrIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA__bindgen_ty_1), + "::", + stringify!(struAddrIP) + ) + ); +} +#[test] +fn bindgen_test_layout_NET_DVR_FTP_SERVER_TEST_PARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 532usize, + concat!("Size of: ", stringify!(NET_DVR_FTP_SERVER_TEST_PARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_FTP_SERVER_TEST_PARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableFTP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA), + "::", + stringify!(byEnableFTP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProtocolType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA), + "::", + stringify!(byProtocolType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFTPPort) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA), + "::", + stringify!(wFTPPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).unionServer) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA), + "::", + stringify!(unionServer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szUserName) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA), + "::", + stringify!(szUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szPassWORD) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA), + "::", + stringify!(szPassWORD) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szTopCustomDir) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA), + "::", + stringify!(szTopCustomDir) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szSubCustomDir) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA), + "::", + stringify!(szSubCustomDir) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDirLevel) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA), + "::", + stringify!(byDirLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTopDirMode) as usize - ptr as usize }, + 329usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA), + "::", + stringify!(byTopDirMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubDirMode) as usize - ptr as usize }, + 330usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA), + "::", + stringify!(bySubDirMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 331usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableAnony) as usize - ptr as usize }, + 332usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA), + "::", + stringify!(byEnableAnony) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddresType) as usize - ptr as usize }, + 333usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA), + "::", + stringify!(byAddresType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 334usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FTP_SERVER_TEST_PARA), + "::", + stringify!(byRes2) + ) + ); +} +pub type LPNET_DVR_FTP_SERVER_TEST_PARA = *mut NET_DVR_FTP_SERVER_TEST_PARA; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SERVER_TEST_PARA { + pub dwSize: DWORD, + pub unionServerPara: tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1, + pub byRes2: [BYTE; 800usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1 { + pub byRes: [BYTE; 740usize], + pub struNtpPara: tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_1, + pub struNasPara: tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_2, + pub struFtpPara: tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_3, + pub struEmailPara: tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_4, + pub struIpPara: tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_5, + pub struCloudStoragePara: tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_6, + pub struPhoneNumPara: tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_7, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_1 { + pub struNtpPara: NET_DVR_NTPPARA, + pub byRes1: [BYTE; 660usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 740usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNtpPara) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(struNtpPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes1) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_2 { + pub struNasPara: NET_DVR_SINGLE_NET_DISK_INFO_V40, + pub byRes1: [BYTE; 260usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 596usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNasPara) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(struNasPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 336usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byRes1) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_3 { + pub struFtpPara: NET_DVR_FTP_SERVER_TEST_PARA, + pub byRes1: [BYTE; 212usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_3() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 744usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFtpPara) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(struFtpPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 532usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byRes1) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_4 { + pub struEmailPara: NET_DVR_EMAILCFG_V30, + pub byRes1: [BYTE; 80usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_4() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 644usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_4) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEmailPara) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(struEmailPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 564usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(byRes1) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_5 { + pub struIp: NET_DVR_IPADDR, + pub byRes1: [BYTE; 716usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_5() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 860usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_5) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_5) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIp) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(struIp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(byRes1) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_6 { + pub struIPAdder: NET_DVR_IPADDR, + pub wPort: WORD, + pub byRes2: [BYTE; 2usize], + pub szUser: [::std::os::raw::c_char; 48usize], + pub szPassword: [::std::os::raw::c_char; 48usize], + pub struPoolInfo: [NET_DVR_POOLPARAM; 16usize], + pub byProtocolType: BYTE, + pub byRes3: [BYTE; 3usize], + pub szAccessKey: [::std::os::raw::c_char; 64usize], + pub szSecretKey: [::std::os::raw::c_char; 64usize], + pub byRes1: [BYTE; 354usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_6() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 860usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_6) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_6) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPAdder) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(struIPAdder) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 146usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szUser) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(szUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szPassword) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(szPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPoolInfo) as usize - ptr as usize }, + 244usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(struPoolInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProtocolType) as usize - ptr as usize }, + 372usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byProtocolType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 373usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szAccessKey) as usize - ptr as usize }, + 376usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(szAccessKey) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szSecretKey) as usize - ptr as usize }, + 440usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(szSecretKey) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 504usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(byRes1) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_7 { + pub byPhoneNum: [BYTE; 32usize], + pub byRes1: [BYTE; 708usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_7() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 740usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_7) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_7) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPhoneNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byPhoneNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(byRes1) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 860usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNtpPara) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1), + "::", + stringify!(struNtpPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNasPara) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1), + "::", + stringify!(struNasPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFtpPara) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1), + "::", + stringify!(struFtpPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEmailPara) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1), + "::", + stringify!(struEmailPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIpPara) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1), + "::", + stringify!(struIpPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCloudStoragePara) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1), + "::", + stringify!(struCloudStoragePara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPhoneNumPara) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA__bindgen_ty_1), + "::", + stringify!(struPhoneNumPara) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SERVER_TEST_PARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1664usize, + concat!("Size of: ", stringify!(tagNET_DVR_SERVER_TEST_PARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SERVER_TEST_PARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).unionServerPara) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA), + "::", + stringify!(unionServerPara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 864usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_TEST_PARA), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SERVER_TEST_PARA = tagNET_DVR_SERVER_TEST_PARA; +pub type LPNET_DVR_SERVER_TEST_PARA = *mut tagNET_DVR_SERVER_TEST_PARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GOP_INFO { + pub dwSize: DWORD, + pub lChannel: LONG, + pub struStartTime: NET_DVR_TIME_EX, + pub struEndTime: NET_DVR_TIME_EX, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GOP_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 280usize, + concat!("Size of: ", stringify!(tagNET_DVR_GOP_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GOP_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GOP_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GOP_INFO), + "::", + stringify!(lChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GOP_INFO), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GOP_INFO), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GOP_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GOP_INFO = tagNET_DVR_GOP_INFO; +pub type LPNET_DVR_GOP_INFO = *mut tagNET_DVR_GOP_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GOP_INFO_RET { + pub struGopTime: NET_DVR_TIME_V30, + pub dwDuration: DWORD, + pub dwDataSize: DWORD, + pub byRes: [BYTE; 128usize], + pub pBuf: *mut ::std::os::raw::c_char, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GOP_INFO_RET() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 160usize, + concat!("Size of: ", stringify!(tagNET_DVR_GOP_INFO_RET)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GOP_INFO_RET)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGopTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GOP_INFO_RET), + "::", + stringify!(struGopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDuration) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GOP_INFO_RET), + "::", + stringify!(dwDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataSize) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GOP_INFO_RET), + "::", + stringify!(dwDataSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GOP_INFO_RET), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuf) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GOP_INFO_RET), + "::", + stringify!(pBuf) + ) + ); +} +pub type NET_DVR_GOP_INFO_RET = tagNET_DVR_GOP_INFO_RET; +pub type LPNET_DVR_GOP_INFO_RET = *mut tagNET_DVR_GOP_INFO_RET; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GOP_INFO_PASSBACK { + pub dwSize: DWORD, + pub struTime: NET_DVR_TIME_V30, + pub dwDuration: DWORD, + pub dwMetaDataSize: DWORD, + pub dwPicDataSize: DWORD, + pub pMetaDataBuffer: *mut ::std::os::raw::c_char, + pub pPicDataBuf: *mut ::std::os::raw::c_char, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GOP_INFO_PASSBACK() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_GOP_INFO_PASSBACK)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GOP_INFO_PASSBACK)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GOP_INFO_PASSBACK), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GOP_INFO_PASSBACK), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDuration) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GOP_INFO_PASSBACK), + "::", + stringify!(dwDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMetaDataSize) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GOP_INFO_PASSBACK), + "::", + stringify!(dwMetaDataSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicDataSize) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GOP_INFO_PASSBACK), + "::", + stringify!(dwPicDataSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pMetaDataBuffer) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GOP_INFO_PASSBACK), + "::", + stringify!(pMetaDataBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPicDataBuf) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GOP_INFO_PASSBACK), + "::", + stringify!(pPicDataBuf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GOP_INFO_PASSBACK), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GOP_INFO_PASSBACK = tagNET_DVR_GOP_INFO_PASSBACK; +pub type LPNET_DVR_GOP_INFO_PASSBACK = *mut tagNET_DVR_GOP_INFO_PASSBACK; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SINGLEWALLPARAM { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwWallNum: DWORD, + pub struRectCfg: NET_DVR_RECTCFG, + pub byRes2: [BYTE; 36usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SINGLEWALLPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_SINGLEWALLPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SINGLEWALLPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLEWALLPARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLEWALLPARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLEWALLPARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWallNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLEWALLPARAM), + "::", + stringify!(dwWallNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRectCfg) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLEWALLPARAM), + "::", + stringify!(struRectCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLEWALLPARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SINGLEWALLPARAM = tagNET_DVR_SINGLEWALLPARAM; +pub type LPNET_DVR_SINGLEWALLPARAM = *mut tagNET_DVR_SINGLEWALLPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WALLWINCFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 7usize], + pub dwWinNum: DWORD, + pub dwLayerIndex: DWORD, + pub struWinPosition: NET_DVR_RECTCFG, + pub dwDeviceIndex: DWORD, + pub wInputIndex: WORD, + pub byRes2: [BYTE; 14usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WALLWINCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_DVR_WALLWINCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WALLWINCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWINCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWINCFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWINCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWinNum) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWINCFG), + "::", + stringify!(dwWinNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLayerIndex) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWINCFG), + "::", + stringify!(dwLayerIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWinPosition) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWINCFG), + "::", + stringify!(struWinPosition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeviceIndex) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWINCFG), + "::", + stringify!(dwDeviceIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInputIndex) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWINCFG), + "::", + stringify!(wInputIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 34usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWINCFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_WALLWINCFG = tagNET_DVR_WALLWINCFG; +pub type LPNET_DVR_WALLWINCFG = *mut tagNET_DVR_WALLWINCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WALL_INDEX { + pub dwSize: DWORD, + pub byWallNo: BYTE, + pub bySceneNo: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwDeviceID: DWORD, + pub dwWindowNo: DWORD, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WALL_INDEX() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_DVR_WALL_INDEX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WALL_INDEX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_INDEX), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWallNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_INDEX), + "::", + stringify!(byWallNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySceneNo) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_INDEX), + "::", + stringify!(bySceneNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_INDEX), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeviceID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_INDEX), + "::", + stringify!(dwDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWindowNo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_INDEX), + "::", + stringify!(dwWindowNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_INDEX), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_WALL_INDEX = tagNET_DVR_WALL_INDEX; +pub type LPNET_DVR_WALL_INDEX = *mut tagNET_DVR_WALL_INDEX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WALLWINPARAM { + pub dwSize: DWORD, + pub byTransparency: BYTE, + pub byWinMode: BYTE, + pub byEnableSpartan: BYTE, + pub byDecResource: BYTE, + pub byWndShowMode: BYTE, + pub byEnabledFeature: BYTE, + pub byFeatureMode: BYTE, + pub byRes1: BYTE, + pub dwAmplifyingSubWndNo: DWORD, + pub byWndTopKeep: BYTE, + pub byWndOpenKeep: BYTE, + pub byRes: [BYTE; 22usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WALLWINPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_WALLWINPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WALLWINPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWINPARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransparency) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWINPARAM), + "::", + stringify!(byTransparency) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWinMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWINPARAM), + "::", + stringify!(byWinMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableSpartan) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWINPARAM), + "::", + stringify!(byEnableSpartan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecResource) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWINPARAM), + "::", + stringify!(byDecResource) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWndShowMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWINPARAM), + "::", + stringify!(byWndShowMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabledFeature) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWINPARAM), + "::", + stringify!(byEnabledFeature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFeatureMode) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWINPARAM), + "::", + stringify!(byFeatureMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWINPARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAmplifyingSubWndNo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWINPARAM), + "::", + stringify!(dwAmplifyingSubWndNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWndTopKeep) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWINPARAM), + "::", + stringify!(byWndTopKeep) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWndOpenKeep) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWINPARAM), + "::", + stringify!(byWndOpenKeep) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWINPARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WALLWINPARAM = tagNET_DVR_WALLWINPARAM; +pub type LPNET_DVR_WALLWINPARAM = *mut tagNET_DVR_WALLWINPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WALLSCENECFG { + pub dwSize: DWORD, + pub sSceneName: [BYTE; 32usize], + pub byEnable: BYTE, + pub bySceneIndex: BYTE, + pub byRes: [BYTE; 78usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WALLSCENECFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 116usize, + concat!("Size of: ", stringify!(tagNET_DVR_WALLSCENECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WALLSCENECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLSCENECFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSceneName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLSCENECFG), + "::", + stringify!(sSceneName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLSCENECFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySceneIndex) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLSCENECFG), + "::", + stringify!(bySceneIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLSCENECFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WALLSCENECFG = tagNET_DVR_WALLSCENECFG; +pub type LPNET_DVR_WALLSCENECFG = *mut tagNET_DVR_WALLSCENECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WALLWIN_INFO { + pub dwSize: DWORD, + pub dwWinNum: DWORD, + pub dwSubWinNum: DWORD, + pub dwWallNo: DWORD, + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WALLWIN_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28usize, + concat!("Size of: ", stringify!(tagNET_DVR_WALLWIN_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WALLWIN_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWIN_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWinNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWIN_INFO), + "::", + stringify!(dwWinNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSubWinNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWIN_INFO), + "::", + stringify!(dwSubWinNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWallNo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWIN_INFO), + "::", + stringify!(dwWallNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLWIN_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WALLWIN_INFO = tagNET_DVR_WALLWIN_INFO; +pub type LPNET_DVR_WALLWIN_INFO = *mut tagNET_DVR_WALLWIN_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WALL_WIN_STATUS { + pub dwSize: DWORD, + pub byDecodeStatus: BYTE, + pub byStreamType: BYTE, + pub byPacketType: BYTE, + pub byFpsDecV: BYTE, + pub byFpsDecA: BYTE, + pub byRes1: [BYTE; 7usize], + pub dwDecodedV: DWORD, + pub dwDecodedA: DWORD, + pub wImgW: WORD, + pub wImgH: WORD, + pub byStreamMode: BYTE, + pub byRes2: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WALL_WIN_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 60usize, + concat!("Size of: ", stringify!(tagNET_DVR_WALL_WIN_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WALL_WIN_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_WIN_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecodeStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_WIN_STATUS), + "::", + stringify!(byDecodeStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_WIN_STATUS), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPacketType) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_WIN_STATUS), + "::", + stringify!(byPacketType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFpsDecV) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_WIN_STATUS), + "::", + stringify!(byFpsDecV) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFpsDecA) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_WIN_STATUS), + "::", + stringify!(byFpsDecA) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_WIN_STATUS), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDecodedV) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_WIN_STATUS), + "::", + stringify!(dwDecodedV) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDecodedA) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_WIN_STATUS), + "::", + stringify!(dwDecodedA) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wImgW) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_WIN_STATUS), + "::", + stringify!(wImgW) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wImgH) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_WIN_STATUS), + "::", + stringify!(wImgH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamMode) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_WIN_STATUS), + "::", + stringify!(byStreamMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 29usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_WIN_STATUS), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_WALL_WIN_STATUS = tagNET_DVR_WALL_WIN_STATUS; +pub type LPNET_DVR_WALL_WIN_STATUS = *mut tagNET_DVR_WALL_WIN_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WININDEX_INFO { + pub dwWinIndex: DWORD, + pub dwSubWinIndex: DWORD, + pub byType: BYTE, + pub byWallNo: BYTE, + pub byRes: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WININDEX_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_WININDEX_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WININDEX_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWinIndex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WININDEX_INFO), + "::", + stringify!(dwWinIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSubWinIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WININDEX_INFO), + "::", + stringify!(dwSubWinIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WININDEX_INFO), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWallNo) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WININDEX_INFO), + "::", + stringify!(byWallNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WININDEX_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WININDEX_INFO = tagNET_DVR_WININDEX_INFO; +pub type LPNET_DVR_WININDEX_INFO = *mut tagNET_DVR_WININDEX_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ASSOCIATEDDEV_CHAN_INFO { + pub dwSize: DWORD, + pub sAddress: [BYTE; 64usize], + pub wDVRPort: WORD, + pub wChannel: WORD, + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub byRes: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ASSOCIATEDDEV_CHAN_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!("Size of: ", stringify!(tagNET_DVR_ASSOCIATEDDEV_CHAN_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ASSOCIATEDDEV_CHAN_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ASSOCIATEDDEV_CHAN_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sAddress) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ASSOCIATEDDEV_CHAN_INFO), + "::", + stringify!(sAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDVRPort) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ASSOCIATEDDEV_CHAN_INFO), + "::", + stringify!(wDVRPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wChannel) as usize - ptr as usize }, + 70usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ASSOCIATEDDEV_CHAN_INFO), + "::", + stringify!(wChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ASSOCIATEDDEV_CHAN_INFO), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ASSOCIATEDDEV_CHAN_INFO), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ASSOCIATEDDEV_CHAN_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ASSOCIATEDDEV_CHAN_INFO = tagNET_DVR_ASSOCIATEDDEV_CHAN_INFO; +pub type LPNET_DVR_ASSOCIATEDDEV_CHAN_INFO = *mut tagNET_DVR_ASSOCIATEDDEV_CHAN_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WALLOUTPUTPARAM { + pub dwSize: DWORD, + pub dwResolution: DWORD, + pub struRes: NET_DVR_VIDEOEFFECT, + pub byVideoFormat: BYTE, + pub byDisplayMode: BYTE, + pub byBackgroundColor: BYTE, + pub byUseEDIDResolution: BYTE, + pub wLEDWidth: WORD, + pub wLEDHeight: WORD, + pub struBackColor: NET_DVR_RGB_COLOR, + pub byLinkStatus: BYTE, + pub byRes2: [BYTE; 51usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WALLOUTPUTPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_WALLOUTPUTPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WALLOUTPUTPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLOUTPUTPARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwResolution) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLOUTPUTPARAM), + "::", + stringify!(dwResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLOUTPUTPARAM), + "::", + stringify!(struRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoFormat) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLOUTPUTPARAM), + "::", + stringify!(byVideoFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDisplayMode) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLOUTPUTPARAM), + "::", + stringify!(byDisplayMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBackgroundColor) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLOUTPUTPARAM), + "::", + stringify!(byBackgroundColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseEDIDResolution) as usize - ptr as usize }, + 19usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLOUTPUTPARAM), + "::", + stringify!(byUseEDIDResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLEDWidth) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLOUTPUTPARAM), + "::", + stringify!(wLEDWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLEDHeight) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLOUTPUTPARAM), + "::", + stringify!(wLEDHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBackColor) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLOUTPUTPARAM), + "::", + stringify!(struBackColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLinkStatus) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLOUTPUTPARAM), + "::", + stringify!(byLinkStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 29usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALLOUTPUTPARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_WALLOUTPUTPARAM = tagNET_DVR_WALLOUTPUTPARAM; +pub type LPNET_DVR_WALLOUTPUTPARAM = *mut tagNET_DVR_WALLOUTPUTPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_SUBMATRIXSYSTEMINFO { + pub dwSequence: DWORD, + pub sAddress: [BYTE; 64usize], + pub wSubMatrixPort: WORD, + pub byRes1: [BYTE; 6usize], + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub byRes2: [BYTE; 36usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_SUBMATRIXSYSTEMINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 160usize, + concat!("Size of: ", stringify!(NET_DVR_SUBMATRIXSYSTEMINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_SUBMATRIXSYSTEMINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSequence) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SUBMATRIXSYSTEMINFO), + "::", + stringify!(dwSequence) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sAddress) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SUBMATRIXSYSTEMINFO), + "::", + stringify!(sAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSubMatrixPort) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SUBMATRIXSYSTEMINFO), + "::", + stringify!(wSubMatrixPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 70usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SUBMATRIXSYSTEMINFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SUBMATRIXSYSTEMINFO), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SUBMATRIXSYSTEMINFO), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SUBMATRIXSYSTEMINFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type LPNET_DVR_SUBMATRIXSYSTEMINFO = *mut NET_DVR_SUBMATRIXSYSTEMINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_UNITEDMATRIXSYSTEMINFO { + pub dwSize: DWORD, + pub struMatrixInfo: [NET_DVR_SUBMATRIXSYSTEMINFO; 8usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_UNITEDMATRIXSYSTEMINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1316usize, + concat!("Size of: ", stringify!(tagNET_DVR_UNITEDMATRIXSYSTEMINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_UNITEDMATRIXSYSTEMINFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNITEDMATRIXSYSTEMINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMatrixInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNITEDMATRIXSYSTEMINFO), + "::", + stringify!(struMatrixInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1284usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNITEDMATRIXSYSTEMINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_UNITEDMATRIXSYSTEMINFO = tagNET_DVR_UNITEDMATRIXSYSTEMINFO; +pub type LPNET_DVR_UNITEDMATRIXSYSTEMINFO = *mut tagNET_DVR_UNITEDMATRIXSYSTEMINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SUBSTREAM_SWITCH_CFG { + pub byAutoSwitchEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub wSubWndWidth: WORD, + pub wSubWndHeight: WORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUBSTREAM_SWITCH_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_SUBSTREAM_SWITCH_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SUBSTREAM_SWITCH_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAutoSwitchEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSTREAM_SWITCH_CFG), + "::", + stringify!(byAutoSwitchEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSTREAM_SWITCH_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSubWndWidth) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSTREAM_SWITCH_CFG), + "::", + stringify!(wSubWndWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSubWndHeight) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSTREAM_SWITCH_CFG), + "::", + stringify!(wSubWndHeight) + ) + ); +} +pub type NET_DVR_SUBSTREAM_SWITCH_CFG = tagNET_DVR_SUBSTREAM_SWITCH_CFG; +pub type LPNET_DVR_SUBSTREAM_SWITCH_CFG = *mut tagNET_DVR_SUBSTREAM_SWITCH_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WALL_CFG { + pub dwSize: DWORD, + pub byTransparency: BYTE, + pub byWinStaticMode: BYTE, + pub byStreamFailedMode: BYTE, + pub byEnabledOverlayLogo: BYTE, + pub struSubStreamSwitch: NET_DVR_SUBSTREAM_SWITCH_CFG, + pub byLEDShowMode: BYTE, + pub byLowLatencyMode: BYTE, + pub byRes: [BYTE; 50usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WALL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_WALL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WALL_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransparency) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_CFG), + "::", + stringify!(byTransparency) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWinStaticMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_CFG), + "::", + stringify!(byWinStaticMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamFailedMode) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_CFG), + "::", + stringify!(byStreamFailedMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabledOverlayLogo) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_CFG), + "::", + stringify!(byEnabledOverlayLogo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSubStreamSwitch) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_CFG), + "::", + stringify!(struSubStreamSwitch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLEDShowMode) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_CFG), + "::", + stringify!(byLEDShowMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLowLatencyMode) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_CFG), + "::", + stringify!(byLowLatencyMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WALL_CFG = tagNET_DVR_WALL_CFG; +pub type LPNET_DVR_WALL_CFG = *mut tagNET_DVR_WALL_CFG; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_LEDDISPLAYINFO { + pub dwSize: DWORD, + pub byAddressType: BYTE, + pub byRes1: [BYTE; 3usize], + pub unionServer: tagNET_DVR_LEDDISPLAYINFO__bindgen_ty_1, + pub szDisplayInfo: [::std::os::raw::c_char; 1024usize], + pub byRes: [BYTE; 128usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_LEDDISPLAYINFO__bindgen_ty_1 { + pub struDomain: tagNET_DVR_LEDDISPLAYINFO__bindgen_ty_1__bindgen_ty_1, + pub struAddrIP: tagNET_DVR_LEDDISPLAYINFO__bindgen_ty_1__bindgen_ty_2, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LEDDISPLAYINFO__bindgen_ty_1__bindgen_ty_1 { + pub szDomain: [BYTE; 64usize], + pub byRes1: [BYTE; 80usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LEDDISPLAYINFO__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_LEDDISPLAYINFO__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_LEDDISPLAYINFO__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDomain) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LEDDISPLAYINFO__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(szDomain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LEDDISPLAYINFO__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes1) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LEDDISPLAYINFO__bindgen_ty_1__bindgen_ty_2 { + pub struIp: NET_DVR_IPADDR, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LEDDISPLAYINFO__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_LEDDISPLAYINFO__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_LEDDISPLAYINFO__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIp) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LEDDISPLAYINFO__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(struIp) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LEDDISPLAYINFO__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_LEDDISPLAYINFO__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_LEDDISPLAYINFO__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDomain) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LEDDISPLAYINFO__bindgen_ty_1), + "::", + stringify!(struDomain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAddrIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LEDDISPLAYINFO__bindgen_ty_1), + "::", + stringify!(struAddrIP) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LEDDISPLAYINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1304usize, + concat!("Size of: ", stringify!(tagNET_DVR_LEDDISPLAYINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LEDDISPLAYINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LEDDISPLAYINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddressType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LEDDISPLAYINFO), + "::", + stringify!(byAddressType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LEDDISPLAYINFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).unionServer) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LEDDISPLAYINFO), + "::", + stringify!(unionServer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDisplayInfo) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LEDDISPLAYINFO), + "::", + stringify!(szDisplayInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LEDDISPLAYINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LEDDISPLAYINFO = tagNET_DVR_LEDDISPLAYINFO; +pub type LPNET_DVR_LEDDISPLAYINFO = *mut tagNET_DVR_LEDDISPLAYINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOW_LIGHT_CFG { + pub dwSize: DWORD, + pub byLowLightLimt: BYTE, + pub byLowLightLimtLevel: BYTE, + pub byRes: [BYTE; 66usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOW_LIGHT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOW_LIGHT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOW_LIGHT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOW_LIGHT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLowLightLimt) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOW_LIGHT_CFG), + "::", + stringify!(byLowLightLimt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLowLightLimtLevel) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOW_LIGHT_CFG), + "::", + stringify!(byLowLightLimtLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOW_LIGHT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOW_LIGHT_CFG = tagNET_DVR_LOW_LIGHT_CFG; +pub type LPNET_DVR_LOW_LIGHT_CFG = *mut tagNET_DVR_LOW_LIGHT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FOCUSMODE_CFG { + pub dwSize: DWORD, + pub byFocusMode: BYTE, + pub byAutoFocusMode: BYTE, + pub wMinFocusDistance: WORD, + pub byZoomSpeedLevel: BYTE, + pub byFocusSpeedLevel: BYTE, + pub byOpticalZoom: BYTE, + pub byDigtitalZoom: BYTE, + pub fOpticalZoomLevel: f32, + pub dwFocusPos: DWORD, + pub byFocusDefinitionDisplay: BYTE, + pub byFocusSensitivity: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwRelativeFocusPos: DWORD, + pub byRes: [BYTE; 48usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FOCUSMODE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_FOCUSMODE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FOCUSMODE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FOCUSMODE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFocusMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FOCUSMODE_CFG), + "::", + stringify!(byFocusMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAutoFocusMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FOCUSMODE_CFG), + "::", + stringify!(byAutoFocusMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMinFocusDistance) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FOCUSMODE_CFG), + "::", + stringify!(wMinFocusDistance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZoomSpeedLevel) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FOCUSMODE_CFG), + "::", + stringify!(byZoomSpeedLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFocusSpeedLevel) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FOCUSMODE_CFG), + "::", + stringify!(byFocusSpeedLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOpticalZoom) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FOCUSMODE_CFG), + "::", + stringify!(byOpticalZoom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDigtitalZoom) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FOCUSMODE_CFG), + "::", + stringify!(byDigtitalZoom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fOpticalZoomLevel) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FOCUSMODE_CFG), + "::", + stringify!(fOpticalZoomLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFocusPos) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FOCUSMODE_CFG), + "::", + stringify!(dwFocusPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFocusDefinitionDisplay) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FOCUSMODE_CFG), + "::", + stringify!(byFocusDefinitionDisplay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFocusSensitivity) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FOCUSMODE_CFG), + "::", + stringify!(byFocusSensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FOCUSMODE_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeFocusPos) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FOCUSMODE_CFG), + "::", + stringify!(dwRelativeFocusPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FOCUSMODE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FOCUSMODE_CFG = tagNET_DVR_FOCUSMODE_CFG; +pub type LPNET_DVR_FOCUSMODE_CFG = *mut tagNET_DVR_FOCUSMODE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INFRARE_CFG { + pub dwSize: DWORD, + pub byIrControlMode: BYTE, + pub byIrBrightness: BYTE, + pub byIrSensitivity: BYTE, + pub byIrTrigMode: BYTE, + pub byIrBrightnessLimit: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INFRARE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_INFRARE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INFRARE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INFRARE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIrControlMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INFRARE_CFG), + "::", + stringify!(byIrControlMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIrBrightness) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INFRARE_CFG), + "::", + stringify!(byIrBrightness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIrSensitivity) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INFRARE_CFG), + "::", + stringify!(byIrSensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIrTrigMode) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INFRARE_CFG), + "::", + stringify!(byIrTrigMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIrBrightnessLimit) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INFRARE_CFG), + "::", + stringify!(byIrBrightnessLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INFRARE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INFRARE_CFG = tagNET_DVR_INFRARE_CFG; +pub type LPNET_DVR_INFRARE_CFG = *mut tagNET_DVR_INFRARE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AEMODECFG { + pub dwSize: DWORD, + pub iIrisSet: ::std::os::raw::c_int, + pub iGainSet: ::std::os::raw::c_int, + pub iGainLimit: ::std::os::raw::c_int, + pub iExposureCompensate: ::std::os::raw::c_int, + pub byExposureModeSet: BYTE, + pub byShutterSet: BYTE, + pub byImageStabilizeLevel: BYTE, + pub byCameraIrCorrect: BYTE, + pub byHighSensitivity: BYTE, + pub byInitializeLens: BYTE, + pub byChromaSuppress: BYTE, + pub byMaxShutterSet: BYTE, + pub byMinShutterSet: BYTE, + pub byMaxIrisSet: BYTE, + pub byMinIrisSet: BYTE, + pub byExposureLevel: BYTE, + pub byRes: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AEMODECFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(tagNET_DVR_AEMODECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AEMODECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AEMODECFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iIrisSet) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AEMODECFG), + "::", + stringify!(iIrisSet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iGainSet) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AEMODECFG), + "::", + stringify!(iGainSet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iGainLimit) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AEMODECFG), + "::", + stringify!(iGainLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iExposureCompensate) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AEMODECFG), + "::", + stringify!(iExposureCompensate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExposureModeSet) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AEMODECFG), + "::", + stringify!(byExposureModeSet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShutterSet) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AEMODECFG), + "::", + stringify!(byShutterSet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byImageStabilizeLevel) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AEMODECFG), + "::", + stringify!(byImageStabilizeLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCameraIrCorrect) as usize - ptr as usize }, + 23usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AEMODECFG), + "::", + stringify!(byCameraIrCorrect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHighSensitivity) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AEMODECFG), + "::", + stringify!(byHighSensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInitializeLens) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AEMODECFG), + "::", + stringify!(byInitializeLens) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChromaSuppress) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AEMODECFG), + "::", + stringify!(byChromaSuppress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMaxShutterSet) as usize - ptr as usize }, + 27usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AEMODECFG), + "::", + stringify!(byMaxShutterSet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMinShutterSet) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AEMODECFG), + "::", + stringify!(byMinShutterSet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMaxIrisSet) as usize - ptr as usize }, + 29usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AEMODECFG), + "::", + stringify!(byMaxIrisSet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMinIrisSet) as usize - ptr as usize }, + 30usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AEMODECFG), + "::", + stringify!(byMinIrisSet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExposureLevel) as usize - ptr as usize }, + 31usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AEMODECFG), + "::", + stringify!(byExposureLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AEMODECFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AEMODECFG = tagNET_DVR_AEMODECFG; +pub type LPNET_DVR_AEMODECFG = *mut tagNET_DVR_AEMODECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FLASH_CFG { + pub dwSize: DWORD, + pub dwChan: DWORD, + pub dwInNumbers: DWORD, + pub dwOutNumbers: DWORD, + pub dwStartTime: DWORD, + pub dwEndTime: DWORD, + pub dwEhomeFlag: DWORD, + pub dwAlarmFlag: DWORD, + pub byRes: [BYTE; 1024usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FLASH_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1056usize, + concat!("Size of: ", stringify!(tagNET_DVR_FLASH_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FLASH_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLASH_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLASH_CFG), + "::", + stringify!(dwChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInNumbers) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLASH_CFG), + "::", + stringify!(dwInNumbers) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOutNumbers) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLASH_CFG), + "::", + stringify!(dwOutNumbers) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStartTime) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLASH_CFG), + "::", + stringify!(dwStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEndTime) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLASH_CFG), + "::", + stringify!(dwEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEhomeFlag) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLASH_CFG), + "::", + stringify!(dwEhomeFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmFlag) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLASH_CFG), + "::", + stringify!(dwAlarmFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLASH_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FLASH_CFG = tagNET_DVR_FLASH_CFG; +pub type LPNET_DVR_FLASH_CFG = *mut tagNET_DVR_FLASH_CFG; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_EXTERNAL_MATRIX_CFG { + pub dwSize: DWORD, + pub byValid: BYTE, + pub byRes1: [BYTE; 3usize], + pub sMatrixName: [BYTE; 32usize], + pub dwMatrixID: DWORD, + pub wMatrixInputChanNum: WORD, + pub wMatrixOutputChanNum: WORD, + pub wMatrixOutputChanRef: [WORD; 224usize], + #[doc = " �豸����;�������İ\u{f6a39}�ϵ�������±��ʾ�������豸����\u{368}���ţ�Ԫ�ص�\u{5b5}��ʾ��������\u{368}���ţ�"] + pub byMatrixChanType: BYTE, + pub byMatrixProtocol: BYTE, + pub byMatrixType: BYTE, + pub byRes2: BYTE, + pub struMatrixUnion: NET_MATRIX_UNION, + pub byRes3: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXTERNAL_MATRIX_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 844usize, + concat!("Size of: ", stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sMatrixName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG), + "::", + stringify!(sMatrixName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMatrixID) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG), + "::", + stringify!(dwMatrixID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMatrixInputChanNum) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG), + "::", + stringify!(wMatrixInputChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMatrixOutputChanNum) as usize - ptr as usize }, + 46usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG), + "::", + stringify!(wMatrixOutputChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMatrixOutputChanRef) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG), + "::", + stringify!(wMatrixOutputChanRef) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMatrixChanType) as usize - ptr as usize }, + 496usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG), + "::", + stringify!(byMatrixChanType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMatrixProtocol) as usize - ptr as usize }, + 497usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG), + "::", + stringify!(byMatrixProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMatrixType) as usize - ptr as usize }, + 498usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG), + "::", + stringify!(byMatrixType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 499usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMatrixUnion) as usize - ptr as usize }, + 500usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG), + "::", + stringify!(struMatrixUnion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 716usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_EXTERNAL_MATRIX_CFG = tagNET_DVR_EXTERNAL_MATRIX_CFG; +pub type LPNET_DVR_EXTERNAL_MATRIX_CFG = *mut tagNET_DVR_EXTERNAL_MATRIX_CFG; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_EXTERNAL_MATRIX_CFG_V50 { + pub dwSize: DWORD, + pub byValid: BYTE, + pub byRes1: [BYTE; 3usize], + pub sMatrixName: [BYTE; 32usize], + pub dwMatrixID: DWORD, + pub wMatrixInputChanNum: WORD, + pub wMatrixOutputChanNum: WORD, + pub wMatrixOutputChanRef: [WORD; 512usize], + #[doc = " �豸����;�������İ\u{f6a39}�ϵ�������±��ʾ�������豸����\u{368}���ţ�Ԫ�ص�\u{5b5}��ʾ��������\u{368}���ţ�"] + pub byMatrixChanType: BYTE, + pub byMatrixProtocol: BYTE, + pub byMatrixType: BYTE, + pub byRes2: BYTE, + pub struMatrixUnion: NET_MATRIX_UNION, + pub byRes3: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXTERNAL_MATRIX_CFG_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1420usize, + concat!("Size of: ", stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG_V50), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sMatrixName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG_V50), + "::", + stringify!(sMatrixName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMatrixID) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG_V50), + "::", + stringify!(dwMatrixID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMatrixInputChanNum) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG_V50), + "::", + stringify!(wMatrixInputChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMatrixOutputChanNum) as usize - ptr as usize }, + 46usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG_V50), + "::", + stringify!(wMatrixOutputChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMatrixOutputChanRef) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG_V50), + "::", + stringify!(wMatrixOutputChanRef) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMatrixChanType) as usize - ptr as usize }, + 1072usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG_V50), + "::", + stringify!(byMatrixChanType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMatrixProtocol) as usize - ptr as usize }, + 1073usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG_V50), + "::", + stringify!(byMatrixProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMatrixType) as usize - ptr as usize }, + 1074usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG_V50), + "::", + stringify!(byMatrixType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1075usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG_V50), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMatrixUnion) as usize - ptr as usize }, + 1076usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG_V50), + "::", + stringify!(struMatrixUnion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 1292usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_MATRIX_CFG_V50), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_EXTERNAL_MATRIX_CFG_V50 = tagNET_DVR_EXTERNAL_MATRIX_CFG_V50; +pub type LPNET_DVR_EXTERNAL_MATRIX_CFG_V50 = *mut tagNET_DVR_EXTERNAL_MATRIX_CFG_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ASSOCIATE_INPUT_PARAM { + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwDeviceIndex: DWORD, + pub wInputIndex: WORD, + pub byRes2: [BYTE; 18usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ASSOCIATE_INPUT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28usize, + concat!("Size of: ", stringify!(tagNET_DVR_ASSOCIATE_INPUT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ASSOCIATE_INPUT_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ASSOCIATE_INPUT_PARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ASSOCIATE_INPUT_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeviceIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ASSOCIATE_INPUT_PARAM), + "::", + stringify!(dwDeviceIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInputIndex) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ASSOCIATE_INPUT_PARAM), + "::", + stringify!(wInputIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ASSOCIATE_INPUT_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ASSOCIATE_INPUT_PARAM = tagNET_DVR_ASSOCIATE_INPUT_PARAM; +pub type LPNET_DVR_ASSOCIATE_INPUT_PARAM = *mut tagNET_DVR_ASSOCIATE_INPUT_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ASSOCIATE_OUTPUT_PARAM { + pub byEnable: BYTE, + pub byWallNo: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwOutputIndex: DWORD, + pub byRes2: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ASSOCIATE_OUTPUT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28usize, + concat!("Size of: ", stringify!(tagNET_DVR_ASSOCIATE_OUTPUT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ASSOCIATE_OUTPUT_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ASSOCIATE_OUTPUT_PARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWallNo) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ASSOCIATE_OUTPUT_PARAM), + "::", + stringify!(byWallNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ASSOCIATE_OUTPUT_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOutputIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ASSOCIATE_OUTPUT_PARAM), + "::", + stringify!(dwOutputIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ASSOCIATE_OUTPUT_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ASSOCIATE_OUTPUT_PARAM = tagNET_DVR_ASSOCIATE_OUTPUT_PARAM; +pub type LPNET_DVR_ASSOCIATE_OUTPUT_PARAM = *mut tagNET_DVR_ASSOCIATE_OUTPUT_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VCS_USER_INFO { + pub dwSize: DWORD, + pub sUserName: [BYTE; 32usize], + pub sPassWord: [BYTE; 16usize], + pub struUserIP: NET_DVR_IPADDR, + pub byMacAddr: [BYTE; 6usize], + pub byPriority: BYTE, + pub byRes1: BYTE, + pub dwRight: DWORD, + pub struInputParam: [NET_DVR_ASSOCIATE_INPUT_PARAM; 1024usize], + pub struOutputParam: [NET_DVR_ASSOCIATE_OUTPUT_PARAM; 256usize], + pub struManageRegion: NET_DVR_RECTCFG_EX, + pub byWallNo: BYTE, + pub byRes2: [BYTE; 3usize], + pub sLoginPassword: [BYTE; 16usize], + pub byRes: [BYTE; 88usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VCS_USER_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36176usize, + concat!("Size of: ", stringify!(tagNET_DVR_VCS_USER_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VCS_USER_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCS_USER_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCS_USER_INFO), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassWord) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCS_USER_INFO), + "::", + stringify!(sPassWord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struUserIP) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCS_USER_INFO), + "::", + stringify!(struUserIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMacAddr) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCS_USER_INFO), + "::", + stringify!(byMacAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPriority) as usize - ptr as usize }, + 202usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCS_USER_INFO), + "::", + stringify!(byPriority) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 203usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCS_USER_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRight) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCS_USER_INFO), + "::", + stringify!(dwRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInputParam) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCS_USER_INFO), + "::", + stringify!(struInputParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOutputParam) as usize - ptr as usize }, + 28880usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCS_USER_INFO), + "::", + stringify!(struOutputParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struManageRegion) as usize - ptr as usize }, + 36048usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCS_USER_INFO), + "::", + stringify!(struManageRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWallNo) as usize - ptr as usize }, + 36068usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCS_USER_INFO), + "::", + stringify!(byWallNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 36069usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCS_USER_INFO), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLoginPassword) as usize - ptr as usize }, + 36072usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCS_USER_INFO), + "::", + stringify!(sLoginPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 36088usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCS_USER_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VCS_USER_INFO = tagNET_DVR_VCS_USER_INFO; +pub type LPNET_DVR_VCS_USER_INFO = *mut tagNET_DVR_VCS_USER_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_STREAM_MEDIA_SERVER_CFG_V41 { + pub byValid: BYTE, + pub byRes1: [BYTE; 3usize], + pub byAddress: [BYTE; 64usize], + pub wDevPort: WORD, + pub byTransmitType: BYTE, + pub byRes2: [BYTE; 69usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STREAM_MEDIA_SERVER_CFG_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 140usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_STREAM_MEDIA_SERVER_CFG_V41) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_STREAM_MEDIA_SERVER_CFG_V41) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MEDIA_SERVER_CFG_V41), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MEDIA_SERVER_CFG_V41), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddress) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MEDIA_SERVER_CFG_V41), + "::", + stringify!(byAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevPort) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MEDIA_SERVER_CFG_V41), + "::", + stringify!(wDevPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransmitType) as usize - ptr as usize }, + 70usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MEDIA_SERVER_CFG_V41), + "::", + stringify!(byTransmitType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 71usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MEDIA_SERVER_CFG_V41), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_STREAM_MEDIA_SERVER_CFG_V41 = tagNET_DVR_STREAM_MEDIA_SERVER_CFG_V41; +pub type LPNET_DVR_STREAM_MEDIA_SERVER_CFG_V41 = *mut tagNET_DVR_STREAM_MEDIA_SERVER_CFG_V41; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEV_CHAN_INFO_V41 { + pub byAddress: [BYTE; 64usize], + pub wDVRPort: WORD, + pub byChannel: BYTE, + pub byTransProtocol: BYTE, + pub byTransMode: BYTE, + pub byFactoryType: BYTE, + pub byDeviceType: BYTE, + pub byDispChan: BYTE, + pub bySubDispChan: BYTE, + pub byResolution: BYTE, + pub byUseZeroChan: BYTE, + pub byRes: BYTE, + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEV_CHAN_INFO_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 124usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEV_CHAN_INFO_V41)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEV_CHAN_INFO_V41)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddress) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_V41), + "::", + stringify!(byAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDVRPort) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_V41), + "::", + stringify!(wDVRPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 66usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_V41), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransProtocol) as usize - ptr as usize }, + 67usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_V41), + "::", + stringify!(byTransProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransMode) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_V41), + "::", + stringify!(byTransMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFactoryType) as usize - ptr as usize }, + 69usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_V41), + "::", + stringify!(byFactoryType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceType) as usize - ptr as usize }, + 70usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_V41), + "::", + stringify!(byDeviceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispChan) as usize - ptr as usize }, + 71usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_V41), + "::", + stringify!(byDispChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubDispChan) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_V41), + "::", + stringify!(bySubDispChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byResolution) as usize - ptr as usize }, + 73usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_V41), + "::", + stringify!(byResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseZeroChan) as usize - ptr as usize }, + 74usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_V41), + "::", + stringify!(byUseZeroChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 75usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_V41), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_V41), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_V41), + "::", + stringify!(sPassword) + ) + ); +} +pub type NET_DVR_DEV_CHAN_INFO_V41 = tagNET_DVR_DEV_CHAN_INFO_V41; +pub type LPNET_DVR_DEV_CHAN_INFO_V41 = *mut tagNET_DVR_DEV_CHAN_INFO_V41; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEV_CHAN_INFO_EX { + pub byChanType: BYTE, + pub byStreamId: [BYTE; 32usize], + pub byRes1: [BYTE; 3usize], + pub dwChannel: DWORD, + pub byRes2: [BYTE; 24usize], + pub byAddress: [BYTE; 64usize], + pub wDVRPort: WORD, + pub byChannel: BYTE, + pub byTransProtocol: BYTE, + pub byTransMode: BYTE, + pub byFactoryType: BYTE, + pub byDeviceType: BYTE, + pub byDispChan: BYTE, + pub bySubDispChan: BYTE, + pub byResolution: BYTE, + pub byRes: [BYTE; 2usize], + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEV_CHAN_INFO_EX() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 188usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEV_CHAN_INFO_EX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEV_CHAN_INFO_EX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_EX), + "::", + stringify!(byChanType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamId) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_EX), + "::", + stringify!(byStreamId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_EX), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_EX), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_EX), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddress) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_EX), + "::", + stringify!(byAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDVRPort) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_EX), + "::", + stringify!(wDVRPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 130usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_EX), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransProtocol) as usize - ptr as usize }, + 131usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_EX), + "::", + stringify!(byTransProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransMode) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_EX), + "::", + stringify!(byTransMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFactoryType) as usize - ptr as usize }, + 133usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_EX), + "::", + stringify!(byFactoryType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceType) as usize - ptr as usize }, + 134usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_EX), + "::", + stringify!(byDeviceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispChan) as usize - ptr as usize }, + 135usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_EX), + "::", + stringify!(byDispChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubDispChan) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_EX), + "::", + stringify!(bySubDispChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byResolution) as usize - ptr as usize }, + 137usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_EX), + "::", + stringify!(byResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 138usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_EX), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_EX), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_CHAN_INFO_EX), + "::", + stringify!(sPassword) + ) + ); +} +pub type NET_DVR_DEV_CHAN_INFO_EX = tagNET_DVR_DEV_CHAN_INFO_EX; +pub type LPNET_DVR_DEV_CHAN_INFO_EX = *mut tagNET_DVR_DEV_CHAN_INFO_EX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_STREAM_MEDIA_SERVER { + pub byValid: BYTE, + pub byRes1: [BYTE; 3usize], + pub byAddress: [BYTE; 64usize], + pub wDevPort: WORD, + pub byTransmitType: BYTE, + pub byRes2: [BYTE; 5usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STREAM_MEDIA_SERVER() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_STREAM_MEDIA_SERVER)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_STREAM_MEDIA_SERVER)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MEDIA_SERVER), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MEDIA_SERVER), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddress) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MEDIA_SERVER), + "::", + stringify!(byAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevPort) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MEDIA_SERVER), + "::", + stringify!(wDevPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransmitType) as usize - ptr as usize }, + 70usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MEDIA_SERVER), + "::", + stringify!(byTransmitType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 71usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MEDIA_SERVER), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_STREAM_MEDIA_SERVER = tagNET_DVR_STREAM_MEDIA_SERVER; +pub type LPNET_DVR_STREAM_MEDIA_SERVER = *mut tagNET_DVR_STREAM_MEDIA_SERVER; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEV_DDNS_INFO { + pub byDevAddress: [BYTE; 64usize], + pub byTransProtocol: BYTE, + pub byTransMode: BYTE, + pub byDdnsType: BYTE, + pub byRes1: BYTE, + pub byDdnsAddress: [BYTE; 64usize], + pub wDdnsPort: WORD, + pub byChanType: BYTE, + pub byFactoryType: BYTE, + pub dwChannel: DWORD, + pub byStreamId: [BYTE; 32usize], + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub wDevPort: WORD, + pub byRes2: [BYTE; 2usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEV_DDNS_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 224usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEV_DDNS_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEV_DDNS_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevAddress) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_DDNS_INFO), + "::", + stringify!(byDevAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransProtocol) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_DDNS_INFO), + "::", + stringify!(byTransProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransMode) as usize - ptr as usize }, + 65usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_DDNS_INFO), + "::", + stringify!(byTransMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDdnsType) as usize - ptr as usize }, + 66usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_DDNS_INFO), + "::", + stringify!(byDdnsType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 67usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_DDNS_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDdnsAddress) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_DDNS_INFO), + "::", + stringify!(byDdnsAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDdnsPort) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_DDNS_INFO), + "::", + stringify!(wDdnsPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanType) as usize - ptr as usize }, + 134usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_DDNS_INFO), + "::", + stringify!(byChanType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFactoryType) as usize - ptr as usize }, + 135usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_DDNS_INFO), + "::", + stringify!(byFactoryType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_DDNS_INFO), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamId) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_DDNS_INFO), + "::", + stringify!(byStreamId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_DDNS_INFO), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_DDNS_INFO), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevPort) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_DDNS_INFO), + "::", + stringify!(wDevPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 222usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_DDNS_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DEV_DDNS_INFO = tagNET_DVR_DEV_DDNS_INFO; +pub type LPNET_DVR_DEV_DDNS_INFO = *mut tagNET_DVR_DEV_DDNS_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEC_STREAM_DEV_EX { + pub struStreamMediaSvrCfg: NET_DVR_STREAM_MEDIA_SERVER, + pub struDevChanInfo: NET_DVR_DEV_CHAN_INFO_EX, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEC_STREAM_DEV_EX() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEC_STREAM_DEV_EX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEC_STREAM_DEV_EX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamMediaSvrCfg) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_STREAM_DEV_EX), + "::", + stringify!(struStreamMediaSvrCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevChanInfo) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_STREAM_DEV_EX), + "::", + stringify!(struDevChanInfo) + ) + ); +} +pub type NET_DVR_DEC_STREAM_DEV_EX = tagNET_DVR_DEC_STREAM_DEV_EX; +pub type LPNET_DVR_DEC_STREAM_DEV_EX = *mut tagNET_DVR_DEC_STREAM_DEV_EX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEC_DDNS_DEV { + pub struDdnsInfo: NET_DVR_DEV_DDNS_INFO, + pub struMediaServer: NET_DVR_STREAM_MEDIA_SERVER, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEC_DDNS_DEV() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 300usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEC_DDNS_DEV)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEC_DDNS_DEV)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDdnsInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_DDNS_DEV), + "::", + stringify!(struDdnsInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMediaServer) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_DDNS_DEV), + "::", + stringify!(struMediaServer) + ) + ); +} +pub type NET_DVR_DEC_DDNS_DEV = tagNET_DVR_DEC_DDNS_DEV; +pub type LPNET_DVR_DEC_DDNS_DEV = *mut tagNET_DVR_DEC_DDNS_DEV; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_DEC_STREAM_MODE { + pub struDecStreamDev: NET_DVR_DEC_STREAM_DEV_EX, + pub struUrlInfo: NET_DVR_PU_STREAM_URL, + pub struDdnsDecInfo: NET_DVR_DEC_DDNS_DEV, + pub byRes: [BYTE; 300usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEC_STREAM_MODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 300usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEC_STREAM_MODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEC_STREAM_MODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDecStreamDev) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_STREAM_MODE), + "::", + stringify!(struDecStreamDev) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struUrlInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_STREAM_MODE), + "::", + stringify!(struUrlInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDdnsDecInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_STREAM_MODE), + "::", + stringify!(struDdnsDecInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_STREAM_MODE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DEC_STREAM_MODE = tagNET_DVR_DEC_STREAM_MODE; +pub type LPNET_DVR_DEC_STREAM_MODE = *mut tagNET_DVR_DEC_STREAM_MODE; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_PU_STREAM_CFG_V41 { + pub dwSize: DWORD, + pub byStreamMode: BYTE, + pub byStreamEncrypt: BYTE, + pub byRes1: [BYTE; 2usize], + pub uDecStreamMode: NET_DVR_DEC_STREAM_MODE, + pub dwDecDelayTime: DWORD, + pub sStreamPassword: [BYTE; 12usize], + pub byRes2: [BYTE; 48usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PU_STREAM_CFG_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 372usize, + concat!("Size of: ", stringify!(tagNET_DVR_PU_STREAM_CFG_V41)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PU_STREAM_CFG_V41)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_CFG_V41), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_CFG_V41), + "::", + stringify!(byStreamMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamEncrypt) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_CFG_V41), + "::", + stringify!(byStreamEncrypt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_CFG_V41), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uDecStreamMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_CFG_V41), + "::", + stringify!(uDecStreamMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDecDelayTime) as usize - ptr as usize }, + 308usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_CFG_V41), + "::", + stringify!(dwDecDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sStreamPassword) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_CFG_V41), + "::", + stringify!(sStreamPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 324usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PU_STREAM_CFG_V41), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PU_STREAM_CFG_V41 = tagNET_DVR_PU_STREAM_CFG_V41; +pub type LPNET_DVR_PU_STREAM_CFG_V41 = *mut tagNET_DVR_PU_STREAM_CFG_V41; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_MATRIX_CHAN_INFO_V41 { + pub byEnable: BYTE, + pub byStreamMode: BYTE, + pub byRes: [BYTE; 2usize], + pub uDecStreamMode: NET_DVR_DEC_STREAM_MODE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_CHAN_INFO_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 304usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIX_CHAN_INFO_V41)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIX_CHAN_INFO_V41)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_CHAN_INFO_V41), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamMode) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_CHAN_INFO_V41), + "::", + stringify!(byStreamMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_CHAN_INFO_V41), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uDecStreamMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_CHAN_INFO_V41), + "::", + stringify!(uDecStreamMode) + ) + ); +} +pub type NET_DVR_MATRIX_CHAN_INFO_V41 = tagNET_DVR_MATRIX_CHAN_INFO_V41; +pub type LPNET_DVR_MATRIX_CHAN_INFO_V41 = *mut tagNET_DVR_MATRIX_CHAN_INFO_V41; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_MATRIX_LOOP_DECINFO_V41 { + pub dwSize: DWORD, + pub dwPoolTime: DWORD, + pub struchanConInfo: [NET_DVR_MATRIX_CHAN_INFO_V41; 64usize], + pub byStreamEncrypt: BYTE, + pub byRes: [BYTE; 3usize], + pub sStreamPassword: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_LOOP_DECINFO_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 19480usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIX_LOOP_DECINFO_V41)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MATRIX_LOOP_DECINFO_V41) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_LOOP_DECINFO_V41), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPoolTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_LOOP_DECINFO_V41), + "::", + stringify!(dwPoolTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struchanConInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_LOOP_DECINFO_V41), + "::", + stringify!(struchanConInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamEncrypt) as usize - ptr as usize }, + 19464usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_LOOP_DECINFO_V41), + "::", + stringify!(byStreamEncrypt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 19465usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_LOOP_DECINFO_V41), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sStreamPassword) as usize - ptr as usize }, + 19468usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_LOOP_DECINFO_V41), + "::", + stringify!(sStreamPassword) + ) + ); +} +pub type NET_DVR_MATRIX_LOOP_DECINFO_V41 = tagNET_DVR_MATRIX_LOOP_DECINFO_V41; +pub type LPNET_DVR_MATRIX_LOOP_DECINFO_V41 = *mut tagNET_DVR_MATRIX_LOOP_DECINFO_V41; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_MATRIX_DEC_CHAN_INFO_V41 { + pub dwSize: DWORD, + pub byStreamMode: BYTE, + pub byRes1: [BYTE; 3usize], + pub uDecStreamMode: NET_DVR_DEC_STREAM_MODE, + pub dwPlayMode: DWORD, + pub StartTime: NET_DVR_TIME, + pub StopTime: NET_DVR_TIME, + pub sFileName: [BYTE; 128usize], + pub dwGetStreamMode: DWORD, + pub struPassiveMode: NET_DVR_MATRIX_PASSIVEMODE, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_DEC_CHAN_INFO_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 680usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIX_DEC_CHAN_INFO_V41)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MATRIX_DEC_CHAN_INFO_V41) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_CHAN_INFO_V41), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_CHAN_INFO_V41), + "::", + stringify!(byStreamMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_CHAN_INFO_V41), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uDecStreamMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_CHAN_INFO_V41), + "::", + stringify!(uDecStreamMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlayMode) as usize - ptr as usize }, + 308usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_CHAN_INFO_V41), + "::", + stringify!(dwPlayMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).StartTime) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_CHAN_INFO_V41), + "::", + stringify!(StartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).StopTime) as usize - ptr as usize }, + 336usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_CHAN_INFO_V41), + "::", + stringify!(StopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 360usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_CHAN_INFO_V41), + "::", + stringify!(sFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGetStreamMode) as usize - ptr as usize }, + 488usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_CHAN_INFO_V41), + "::", + stringify!(dwGetStreamMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPassiveMode) as usize - ptr as usize }, + 492usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_CHAN_INFO_V41), + "::", + stringify!(struPassiveMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 648usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_CHAN_INFO_V41), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_MATRIX_DEC_CHAN_INFO_V41 = tagNET_DVR_MATRIX_DEC_CHAN_INFO_V41; +pub type LPNET_DVR_MATRIX_DEC_CHAN_INFO_V41 = *mut tagNET_DVR_MATRIX_DEC_CHAN_INFO_V41; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNet_DVR_IP_ADDRESS { + pub byDevAddress: [BYTE; 64usize], + pub wDevPort: WORD, + pub byres: [BYTE; 134usize], +} +#[test] +fn bindgen_test_layout_tagNet_DVR_IP_ADDRESS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 200usize, + concat!("Size of: ", stringify!(tagNet_DVR_IP_ADDRESS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNet_DVR_IP_ADDRESS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevAddress) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_IP_ADDRESS), + "::", + stringify!(byDevAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevPort) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_IP_ADDRESS), + "::", + stringify!(wDevPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byres) as usize - ptr as usize }, + 66usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_IP_ADDRESS), + "::", + stringify!(byres) + ) + ); +} +pub type NET_DVR_IP_ADDRESS = tagNet_DVR_IP_ADDRESS; +pub type LPNET_DVR_IP_ADDRESS = *mut tagNet_DVR_IP_ADDRESS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNet_DVR_DDNS_ADDRESS { + pub byDevAddress: [BYTE; 64usize], + pub byDevDdns: [BYTE; 64usize], + pub byDdnsType: BYTE, + pub byRes1: [BYTE; 3usize], + pub wDevPort: WORD, + pub wDdnsPort: WORD, + pub byres: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNet_DVR_DDNS_ADDRESS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 200usize, + concat!("Size of: ", stringify!(tagNet_DVR_DDNS_ADDRESS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNet_DVR_DDNS_ADDRESS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevAddress) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_DDNS_ADDRESS), + "::", + stringify!(byDevAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevDdns) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_DDNS_ADDRESS), + "::", + stringify!(byDevDdns) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDdnsType) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_DDNS_ADDRESS), + "::", + stringify!(byDdnsType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 129usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_DDNS_ADDRESS), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevPort) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_DDNS_ADDRESS), + "::", + stringify!(wDevPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDdnsPort) as usize - ptr as usize }, + 134usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_DDNS_ADDRESS), + "::", + stringify!(wDdnsPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byres) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_DDNS_ADDRESS), + "::", + stringify!(byres) + ) + ); +} +pub type NET_DVR_DDNS_ADDRESS = tagNet_DVR_DDNS_ADDRESS; +pub type LPNET_DVR_DDNS_ADDRESS = *mut tagNet_DVR_DDNS_ADDRESS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNet_DVR_PLAY_BACK_BY_TIME { + pub StartTime: NET_DVR_TIME, + pub StopTime: NET_DVR_TIME, +} +#[test] +fn bindgen_test_layout_tagNet_DVR_PLAY_BACK_BY_TIME() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNet_DVR_PLAY_BACK_BY_TIME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNet_DVR_PLAY_BACK_BY_TIME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).StartTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_PLAY_BACK_BY_TIME), + "::", + stringify!(StartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).StopTime) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_PLAY_BACK_BY_TIME), + "::", + stringify!(StopTime) + ) + ); +} +pub type NET_DVR_PLAY_BACK_BY_TIME = tagNet_DVR_PLAY_BACK_BY_TIME; +pub type LPNET_DVR_PLAY_BACK_BY_TIME = *mut tagNet_DVR_PLAY_BACK_BY_TIME; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX { + pub dwSize: DWORD, + pub dwDecChannel: DWORD, + pub byAddressType: BYTE, + pub byChannelType: BYTE, + pub byres: [BYTE; 2usize], + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub dwChannel: DWORD, + pub byStreamId: [BYTE; 32usize], + pub dwPlayMode: DWORD, + pub unionAddr: tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX__bindgen_ty_1, + pub unionPlayBackInfo: tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX__bindgen_ty_2, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX__bindgen_ty_1 { + pub byRes: [BYTE; 200usize], + pub struIpAddr: NET_DVR_IP_ADDRESS, + pub struDdnsAddr: NET_DVR_DDNS_ADDRESS, +} +#[test] +fn bindgen_test_layout_tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 200usize, + concat!( + "Size of: ", + stringify!(tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX__bindgen_ty_1), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIpAddr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX__bindgen_ty_1), + "::", + stringify!(struIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDdnsAddr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX__bindgen_ty_1), + "::", + stringify!(struDdnsAddr) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX__bindgen_ty_2 { + pub byRes: [BYTE; 128usize], + pub struPlayBackByTime: NET_DVR_PLAY_BACK_BY_TIME, + pub sFileName: [::std::os::raw::c_char; 128usize], +} +#[test] +fn bindgen_test_layout_tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!( + "Size of: ", + stringify!(tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX__bindgen_ty_2), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlayBackByTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX__bindgen_ty_2), + "::", + stringify!(struPlayBackByTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX__bindgen_ty_2), + "::", + stringify!(sFileName) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 428usize, + concat!( + "Size of: ", + stringify!(tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDecChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX), + "::", + stringify!(dwDecChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddressType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX), + "::", + stringify!(byAddressType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannelType) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX), + "::", + stringify!(byChannelType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byres) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX), + "::", + stringify!(byres) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamId) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX), + "::", + stringify!(byStreamId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlayMode) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX), + "::", + stringify!(dwPlayMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).unionAddr) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX), + "::", + stringify!(unionAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).unionPlayBackInfo) as usize - ptr as usize }, + 300usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX), + "::", + stringify!(unionPlayBackInfo) + ) + ); +} +pub type NET_DVR_MATRIX_DEC_REMOTE_PLAY_EX = tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX; +pub type LPNET_DVR_MATRIX_DEC_REMOTE_PLAY_EX = *mut tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50 { + pub dwSize: DWORD, + pub dwDecChannel: DWORD, + pub byAddressType: BYTE, + pub byChannelType: BYTE, + pub byStreamEncrypt: BYTE, + pub byRes1: [BYTE; 1usize], + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub dwChannel: DWORD, + pub byStreamId: [BYTE; 32usize], + pub dwPlayMode: DWORD, + pub unionAddr: tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50__bindgen_ty_1, + pub unionPlayBackInfo: tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50__bindgen_ty_2, + pub struURL: NET_DVR_PU_STREAM_URL, + pub sStreamPassword: [BYTE; 12usize], + pub byRes2: [BYTE; 116usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50__bindgen_ty_1 { + pub byRes: [BYTE; 200usize], + pub struIpAddr: NET_DVR_IP_ADDRESS, + pub struDdnsAddr: NET_DVR_DDNS_ADDRESS, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 200usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50__bindgen_ty_1), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIpAddr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50__bindgen_ty_1), + "::", + stringify!(struIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDdnsAddr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50__bindgen_ty_1), + "::", + stringify!(struDdnsAddr) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50__bindgen_ty_2 { + pub byRes: [BYTE; 128usize], + pub struPlayBackByTime: NET_DVR_PLAY_BACK_BY_TIME, + pub sFileName: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50__bindgen_ty_2), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlayBackByTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50__bindgen_ty_2), + "::", + stringify!(struPlayBackByTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50__bindgen_ty_2), + "::", + stringify!(sFileName) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 808usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDecChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50), + "::", + stringify!(dwDecChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddressType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50), + "::", + stringify!(byAddressType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannelType) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50), + "::", + stringify!(byChannelType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamEncrypt) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50), + "::", + stringify!(byStreamEncrypt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamId) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50), + "::", + stringify!(byStreamId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlayMode) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50), + "::", + stringify!(dwPlayMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).unionAddr) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50), + "::", + stringify!(unionAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).unionPlayBackInfo) as usize - ptr as usize }, + 300usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50), + "::", + stringify!(unionPlayBackInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struURL) as usize - ptr as usize }, + 428usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50), + "::", + stringify!(struURL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sStreamPassword) as usize - ptr as usize }, + 680usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50), + "::", + stringify!(sStreamPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 692usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_MATRIX_DEC_REMOTE_PLAY_V50 = tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50; +pub type LPNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50 = *mut tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DISPLAY_EFFECT_CFG { + pub dwSize: DWORD, + pub struColor: NET_DVR_COLOR, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DISPLAY_EFFECT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_DISPLAY_EFFECT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DISPLAY_EFFECT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPLAY_EFFECT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struColor) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPLAY_EFFECT_CFG), + "::", + stringify!(struColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPLAY_EFFECT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DISPLAY_EFFECT_CFG = tagNET_DVR_DISPLAY_EFFECT_CFG; +pub type LPNET_DVR_DISPLAY_EFFECT_CFG = *mut tagNET_DVR_DISPLAY_EFFECT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRUNK_USE_STATE { + pub dwSize: DWORD, + pub dwTrunkID: DWORD, + pub wReserveUserID: WORD, + pub byStatus: BYTE, + pub byRes1: BYTE, + pub byUserId: [BYTE; 256usize], + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRUNK_USE_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 332usize, + concat!("Size of: ", stringify!(tagNET_DVR_TRUNK_USE_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TRUNK_USE_STATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRUNK_USE_STATE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTrunkID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRUNK_USE_STATE), + "::", + stringify!(dwTrunkID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wReserveUserID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRUNK_USE_STATE), + "::", + stringify!(wReserveUserID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRUNK_USE_STATE), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRUNK_USE_STATE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUserId) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRUNK_USE_STATE), + "::", + stringify!(byUserId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 268usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRUNK_USE_STATE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_TRUNK_USE_STATE = tagNET_DVR_TRUNK_USE_STATE; +pub type LPNET_DVR_TRUNK_USE_STATE = *mut tagNET_DVR_TRUNK_USE_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZ_CTRL_INFO { + pub dwSize: DWORD, + pub dwCtrlDelayTime: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZ_CTRL_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZ_CTRL_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZ_CTRL_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_CTRL_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCtrlDelayTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_CTRL_INFO), + "::", + stringify!(dwCtrlDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_CTRL_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PTZ_CTRL_INFO = tagNET_DVR_PTZ_CTRL_INFO; +pub type LPNET_DVR_PTZ_CTRL_INFO = *mut tagNET_DVR_PTZ_CTRL_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIX_ROUTE_INFO { + pub dwSize: DWORD, + pub dwCamNo: DWORD, + pub dwMonNo: DWORD, + pub dwSubWin: DWORD, + pub dwUserId: DWORD, + pub dwTrunkId: [DWORD; 32usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_ROUTE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 212usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIX_ROUTE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIX_ROUTE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ROUTE_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCamNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ROUTE_INFO), + "::", + stringify!(dwCamNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMonNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ROUTE_INFO), + "::", + stringify!(dwMonNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSubWin) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ROUTE_INFO), + "::", + stringify!(dwSubWin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwUserId) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ROUTE_INFO), + "::", + stringify!(dwUserId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTrunkId) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ROUTE_INFO), + "::", + stringify!(dwTrunkId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_ROUTE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MATRIX_ROUTE_INFO = tagNET_DVR_MATRIX_ROUTE_INFO; +pub type LPNET_DVR_MATRIX_ROUTE_INFO = *mut tagNET_DVR_MATRIX_ROUTE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZ_STATUS { + pub dwSize: DWORD, + pub dwUserID: DWORD, + pub dwStatus: DWORD, + pub dwRestTime: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZ_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZ_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZ_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwUserID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_STATUS), + "::", + stringify!(dwUserID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStatus) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_STATUS), + "::", + stringify!(dwStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRestTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_STATUS), + "::", + stringify!(dwRestTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PTZ_STATUS = tagNET_DVR_PTZ_STATUS; +pub type LPNET_DVR_PTZ_STATUS = *mut tagNET_DVR_PTZ_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SAFETYCABIN_WORK_MODE { + pub dwSize: DWORD, + pub byWorkMode: BYTE, + pub byFaintToUnlock: BYTE, + pub byOvertimeToUnlock: BYTE, + pub byRes: [BYTE; 13usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SAFETYCABIN_WORK_MODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_SAFETYCABIN_WORK_MODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SAFETYCABIN_WORK_MODE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SAFETYCABIN_WORK_MODE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SAFETYCABIN_WORK_MODE), + "::", + stringify!(byWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaintToUnlock) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SAFETYCABIN_WORK_MODE), + "::", + stringify!(byFaintToUnlock) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOvertimeToUnlock) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SAFETYCABIN_WORK_MODE), + "::", + stringify!(byOvertimeToUnlock) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SAFETYCABIN_WORK_MODE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SAFETYCABIN_WORK_MODE = tagNET_DVR_SAFETYCABIN_WORK_MODE; +pub type LPNET_DVR_SAFETYCABIN_WORK_MODE = *mut tagNET_DVR_SAFETYCABIN_WORK_MODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SAFETYCABIN_PERSON_SIGNAL_CFG { + pub dwSize: DWORD, + pub bySensorType: BYTE, + pub bySensitivity: BYTE, + pub byDevUseTimeout: BYTE, + pub byRes1: BYTE, + pub wCurtainDelayTime: WORD, + pub wCurtainResponseTime: WORD, + pub wFaintToEmergencyTime: WORD, + pub byFollowDetectorSensitivity: BYTE, + pub byManyPersonSensitivity: BYTE, + pub byRes2: [BYTE; 28usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SAFETYCABIN_PERSON_SIGNAL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SAFETYCABIN_PERSON_SIGNAL_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SAFETYCABIN_PERSON_SIGNAL_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SAFETYCABIN_PERSON_SIGNAL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensorType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SAFETYCABIN_PERSON_SIGNAL_CFG), + "::", + stringify!(bySensorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SAFETYCABIN_PERSON_SIGNAL_CFG), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevUseTimeout) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SAFETYCABIN_PERSON_SIGNAL_CFG), + "::", + stringify!(byDevUseTimeout) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SAFETYCABIN_PERSON_SIGNAL_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCurtainDelayTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SAFETYCABIN_PERSON_SIGNAL_CFG), + "::", + stringify!(wCurtainDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCurtainResponseTime) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SAFETYCABIN_PERSON_SIGNAL_CFG), + "::", + stringify!(wCurtainResponseTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFaintToEmergencyTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SAFETYCABIN_PERSON_SIGNAL_CFG), + "::", + stringify!(wFaintToEmergencyTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFollowDetectorSensitivity) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SAFETYCABIN_PERSON_SIGNAL_CFG), + "::", + stringify!(byFollowDetectorSensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byManyPersonSensitivity) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SAFETYCABIN_PERSON_SIGNAL_CFG), + "::", + stringify!(byManyPersonSensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SAFETYCABIN_PERSON_SIGNAL_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SAFETYCABIN_PERSON_SIGNAL_CFG = tagNET_DVR_SAFETYCABIN_PERSON_SIGNAL_CFG; +pub type LPNET_DVR_SAFETYCABIN_PERSON_SIGNAL_CFG = *mut tagNET_DVR_SAFETYCABIN_PERSON_SIGNAL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ETHERNET_IPV6_COND { + pub dwSize: DWORD, + pub byMACAddr: [BYTE; 6usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ETHERNET_IPV6_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_ETHERNET_IPV6_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ETHERNET_IPV6_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ETHERNET_IPV6_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMACAddr) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ETHERNET_IPV6_COND), + "::", + stringify!(byMACAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ETHERNET_IPV6_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ETHERNET_IPV6_COND = tagNET_DVR_ETHERNET_IPV6_COND; +pub type LPNET_DVR_ETHERNET_IPV6_COND = *mut tagNET_DVR_ETHERNET_IPV6_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ETHERNET_IPV6_CFG { + pub dwSize: DWORD, + pub byState: BYTE, + pub byRes1: [BYTE; 3usize], + pub byIPv6: [BYTE; 64usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ETHERNET_IPV6_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_ETHERNET_IPV6_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ETHERNET_IPV6_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ETHERNET_IPV6_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byState) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ETHERNET_IPV6_CFG), + "::", + stringify!(byState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ETHERNET_IPV6_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIPv6) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ETHERNET_IPV6_CFG), + "::", + stringify!(byIPv6) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ETHERNET_IPV6_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ETHERNET_IPV6_CFG = tagNET_DVR_ETHERNET_IPV6_CFG; +pub type LPNET_DVR_ETHERNET_IPV6_CFG = *mut tagNET_DVR_ETHERNET_IPV6_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DAYTIME { + pub byHour: BYTE, + pub byMinute: BYTE, + pub bySecond: BYTE, + pub byRes: BYTE, + pub wMilliSecond: WORD, + pub byRes1: [BYTE; 2usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_DAYTIME() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(NET_DVR_DAYTIME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_DAYTIME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHour) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DAYTIME), + "::", + stringify!(byHour) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMinute) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DAYTIME), + "::", + stringify!(byMinute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySecond) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DAYTIME), + "::", + stringify!(bySecond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DAYTIME), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMilliSecond) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DAYTIME), + "::", + stringify!(wMilliSecond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DAYTIME), + "::", + stringify!(byRes1) + ) + ); +} +pub type LPNET_DVR_DAYTIME = *mut NET_DVR_DAYTIME; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_SCHEDULE_DAYTIME { + pub struStartTime: NET_DVR_DAYTIME, + pub struStopTime: NET_DVR_DAYTIME, +} +#[test] +fn bindgen_test_layout_NET_DVR_SCHEDULE_DAYTIME() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(NET_DVR_SCHEDULE_DAYTIME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_SCHEDULE_DAYTIME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SCHEDULE_DAYTIME), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SCHEDULE_DAYTIME), + "::", + stringify!(struStopTime) + ) + ); +} +pub type LPNET_DVR_SCHEDULE_DAYTIME = *mut NET_DVR_SCHEDULE_DAYTIME; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DNMODE { + pub byObjectSize: BYTE, + pub byMotionSensitive: BYTE, + pub byRes: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_DNMODE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(NET_DVR_DNMODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_DNMODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byObjectSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DNMODE), + "::", + stringify!(byObjectSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMotionSensitive) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DNMODE), + "::", + stringify!(byMotionSensitive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DNMODE), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_DNMODE = *mut NET_DVR_DNMODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_MOTION_MULTI_AREAPARAM { + pub byAreaNo: BYTE, + pub byRes: [BYTE; 3usize], + pub struRect: NET_VCA_RECT, + pub struDayNightDisable: NET_DVR_DNMODE, + pub struDayModeParam: NET_DVR_DNMODE, + pub struNightModeParam: NET_DVR_DNMODE, + pub byRes1: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_MOTION_MULTI_AREAPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 52usize, + concat!("Size of: ", stringify!(NET_DVR_MOTION_MULTI_AREAPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_MOTION_MULTI_AREAPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAreaNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_MULTI_AREAPARAM), + "::", + stringify!(byAreaNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_MULTI_AREAPARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRect) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_MULTI_AREAPARAM), + "::", + stringify!(struRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDayNightDisable) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_MULTI_AREAPARAM), + "::", + stringify!(struDayNightDisable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDayModeParam) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_MULTI_AREAPARAM), + "::", + stringify!(struDayModeParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNightModeParam) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_MULTI_AREAPARAM), + "::", + stringify!(struNightModeParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_MULTI_AREAPARAM), + "::", + stringify!(byRes1) + ) + ); +} +pub type LPNET_DVR_MOTION_MULTI_AREAPARAM = *mut NET_DVR_MOTION_MULTI_AREAPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_MOTION_MULTI_AREA { + pub byDayNightCtrl: BYTE, + pub byAllMotionSensitive: BYTE, + pub byRes: [BYTE; 2usize], + pub struScheduleTime: NET_DVR_SCHEDULE_DAYTIME, + pub struMotionMultiAreaParam: [NET_DVR_MOTION_MULTI_AREAPARAM; 24usize], + pub byRes1: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_MOTION_MULTI_AREA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1328usize, + concat!("Size of: ", stringify!(NET_DVR_MOTION_MULTI_AREA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_MOTION_MULTI_AREA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDayNightCtrl) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_MULTI_AREA), + "::", + stringify!(byDayNightCtrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAllMotionSensitive) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_MULTI_AREA), + "::", + stringify!(byAllMotionSensitive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_MULTI_AREA), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struScheduleTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_MULTI_AREA), + "::", + stringify!(struScheduleTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMotionMultiAreaParam) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_MULTI_AREA), + "::", + stringify!(struMotionMultiAreaParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1268usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_MULTI_AREA), + "::", + stringify!(byRes1) + ) + ); +} +pub type LPNET_DVR_MOTION_MULTI_AREA = *mut NET_DVR_MOTION_MULTI_AREA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_MOTION_SINGLE_AREA { + pub byMotionScope: [[BYTE; 96usize]; 64usize], + pub byMotionSensitive: BYTE, + pub byRes: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_MOTION_SINGLE_AREA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 6148usize, + concat!("Size of: ", stringify!(NET_DVR_MOTION_SINGLE_AREA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_MOTION_SINGLE_AREA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMotionScope) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_SINGLE_AREA), + "::", + stringify!(byMotionScope) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMotionSensitive) as usize - ptr as usize }, + 6144usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_SINGLE_AREA), + "::", + stringify!(byMotionSensitive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6145usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_SINGLE_AREA), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_MOTION_SINGLE_AREA = *mut NET_DVR_MOTION_SINGLE_AREA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_MOTION_MODE_PARAM { + pub struMotionSingleArea: NET_DVR_MOTION_SINGLE_AREA, + pub struMotionMultiArea: NET_DVR_MOTION_MULTI_AREA, +} +#[test] +fn bindgen_test_layout_NET_DVR_MOTION_MODE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 7476usize, + concat!("Size of: ", stringify!(NET_DVR_MOTION_MODE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_MOTION_MODE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMotionSingleArea) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_MODE_PARAM), + "::", + stringify!(struMotionSingleArea) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMotionMultiArea) as usize - ptr as usize }, + 6148usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_MODE_PARAM), + "::", + stringify!(struMotionMultiArea) + ) + ); +} +pub type LPNET_DVR_MOTION_MODE_PARAM = *mut NET_DVR_MOTION_MODE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_MOTION_V40 { + pub struMotionMode: NET_DVR_MOTION_MODE_PARAM, + pub byEnableHandleMotion: BYTE, + pub byEnableDisplay: BYTE, + pub byConfigurationMode: BYTE, + pub byKeyingEnable: BYTE, + pub dwHandleType: DWORD, + pub dwMaxRelAlarmOutChanNum: DWORD, + pub dwRelAlarmOut: [DWORD; 4128usize], + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub dwMaxRecordChanNum: DWORD, + pub dwRelRecordChan: [DWORD; 512usize], + pub byDiscardFalseAlarm: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_MOTION_V40() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 26404usize, + concat!("Size of: ", stringify!(NET_DVR_MOTION_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_MOTION_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMotionMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_V40), + "::", + stringify!(struMotionMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableHandleMotion) as usize - ptr as usize }, + 7476usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_V40), + "::", + stringify!(byEnableHandleMotion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableDisplay) as usize - ptr as usize }, + 7477usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_V40), + "::", + stringify!(byEnableDisplay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byConfigurationMode) as usize - ptr as usize }, + 7478usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_V40), + "::", + stringify!(byConfigurationMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byKeyingEnable) as usize - ptr as usize }, + 7479usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_V40), + "::", + stringify!(byKeyingEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHandleType) as usize - ptr as usize }, + 7480usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_V40), + "::", + stringify!(dwHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxRelAlarmOutChanNum) as usize - ptr as usize }, + 7484usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_V40), + "::", + stringify!(dwMaxRelAlarmOutChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelAlarmOut) as usize - ptr as usize }, + 7488usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_V40), + "::", + stringify!(dwRelAlarmOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 24000usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_V40), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxRecordChanNum) as usize - ptr as usize }, + 24224usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_V40), + "::", + stringify!(dwMaxRecordChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelRecordChan) as usize - ptr as usize }, + 24228usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_V40), + "::", + stringify!(dwRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDiscardFalseAlarm) as usize - ptr as usize }, + 26276usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_V40), + "::", + stringify!(byDiscardFalseAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 26277usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_MOTION_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_MOTION_V40 = *mut NET_DVR_MOTION_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_HIDEALARM_V40 { + pub dwEnableHideAlarm: DWORD, + pub wHideAlarmAreaTopLeftX: WORD, + pub wHideAlarmAreaTopLeftY: WORD, + pub wHideAlarmAreaWidth: WORD, + pub wHideAlarmAreaHeight: WORD, + pub dwHandleType: DWORD, + pub dwMaxRelAlarmOutChanNum: DWORD, + pub dwRelAlarmOut: [DWORD; 4128usize], + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_HIDEALARM_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16820usize, + concat!("Size of: ", stringify!(NET_DVR_HIDEALARM_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_HIDEALARM_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnableHideAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HIDEALARM_V40), + "::", + stringify!(dwEnableHideAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHideAlarmAreaTopLeftX) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HIDEALARM_V40), + "::", + stringify!(wHideAlarmAreaTopLeftX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHideAlarmAreaTopLeftY) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HIDEALARM_V40), + "::", + stringify!(wHideAlarmAreaTopLeftY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHideAlarmAreaWidth) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HIDEALARM_V40), + "::", + stringify!(wHideAlarmAreaWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHideAlarmAreaHeight) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HIDEALARM_V40), + "::", + stringify!(wHideAlarmAreaHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHandleType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HIDEALARM_V40), + "::", + stringify!(dwHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxRelAlarmOutChanNum) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HIDEALARM_V40), + "::", + stringify!(dwMaxRelAlarmOutChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelAlarmOut) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HIDEALARM_V40), + "::", + stringify!(dwRelAlarmOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 16532usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HIDEALARM_V40), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16756usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_HIDEALARM_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_HIDEALARM_V40 = *mut NET_DVR_HIDEALARM_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_VILOST_V40 { + pub dwEnableVILostAlarm: DWORD, + pub dwHandleType: DWORD, + pub dwMaxRelAlarmOutChanNum: DWORD, + pub dwRelAlarmOut: [DWORD; 4128usize], + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub byVILostAlarmThreshold: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_VILOST_V40() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16812usize, + concat!("Size of: ", stringify!(NET_DVR_VILOST_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_VILOST_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnableVILostAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VILOST_V40), + "::", + stringify!(dwEnableVILostAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHandleType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VILOST_V40), + "::", + stringify!(dwHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxRelAlarmOutChanNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VILOST_V40), + "::", + stringify!(dwMaxRelAlarmOutChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelAlarmOut) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VILOST_V40), + "::", + stringify!(dwRelAlarmOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 16524usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VILOST_V40), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVILostAlarmThreshold) as usize - ptr as usize }, + 16748usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VILOST_V40), + "::", + stringify!(byVILostAlarmThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16749usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VILOST_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_VILOST_V40 = *mut NET_DVR_VILOST_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_VICOLOR { + pub struColor: [NET_DVR_COLOR; 8usize], + pub struHandleTime: [NET_DVR_SCHEDTIME; 8usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_VICOLOR() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(NET_DVR_VICOLOR)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_VICOLOR)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struColor) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VICOLOR), + "::", + stringify!(struColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHandleTime) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VICOLOR), + "::", + stringify!(struHandleTime) + ) + ); +} +pub type LPNET_DVR_VICOLOR = *mut NET_DVR_VICOLOR; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PICCFG_V40 { + pub dwSize: DWORD, + pub sChanName: [BYTE; 32usize], + pub dwVideoFormat: DWORD, + pub struViColor: NET_DVR_VICOLOR, + pub dwShowChanName: DWORD, + pub wShowNameTopLeftX: WORD, + pub wShowNameTopLeftY: WORD, + pub dwEnableHide: DWORD, + pub struShelter: [NET_DVR_SHELTER; 4usize], + pub dwShowOsd: DWORD, + pub wOSDTopLeftX: WORD, + pub wOSDTopLeftY: WORD, + pub byOSDType: BYTE, + pub byDispWeek: BYTE, + pub byOSDAttrib: BYTE, + pub byHourOSDType: BYTE, + pub byFontSize: BYTE, + pub byOSDColorType: BYTE, + pub byAlignment: BYTE, + pub byOSDMilliSecondEnable: BYTE, + pub struVILost: NET_DVR_VILOST_V40, + pub struAULost: NET_DVR_VILOST_V40, + pub struMotion: NET_DVR_MOTION_V40, + pub struHideAlarm: NET_DVR_HIDEALARM_V40, + pub struOsdColor: NET_DVR_RGB_COLOR, + pub dwBoundary: DWORD, + pub struOsdBkColor: NET_DVR_RGB_COLOR, + pub byOSDBkColorMode: BYTE, + pub byUpDownBoundary: BYTE, + pub byLeftRightBoundary: BYTE, + pub byAngleEnabled: BYTE, + pub wTiltAngleTopLeftX: WORD, + pub wTiltAngleTopLeftY: WORD, + pub byRes: [BYTE; 108usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_PICCFG_V40() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 77140usize, + concat!("Size of: ", stringify!(NET_DVR_PICCFG_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_PICCFG_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sChanName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(sChanName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoFormat) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(dwVideoFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struViColor) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(struViColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwShowChanName) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(dwShowChanName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wShowNameTopLeftX) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(wShowNameTopLeftX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wShowNameTopLeftY) as usize - ptr as usize }, + 110usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(wShowNameTopLeftY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnableHide) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(dwEnableHide) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struShelter) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(struShelter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwShowOsd) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(dwShowOsd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wOSDTopLeftX) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(wOSDTopLeftX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wOSDTopLeftY) as usize - ptr as usize }, + 154usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(wOSDTopLeftY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOSDType) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(byOSDType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispWeek) as usize - ptr as usize }, + 157usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(byDispWeek) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOSDAttrib) as usize - ptr as usize }, + 158usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(byOSDAttrib) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHourOSDType) as usize - ptr as usize }, + 159usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(byHourOSDType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFontSize) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(byFontSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOSDColorType) as usize - ptr as usize }, + 161usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(byOSDColorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlignment) as usize - ptr as usize }, + 162usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(byAlignment) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOSDMilliSecondEnable) as usize - ptr as usize }, + 163usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(byOSDMilliSecondEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVILost) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(struVILost) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAULost) as usize - ptr as usize }, + 16976usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(struAULost) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMotion) as usize - ptr as usize }, + 33788usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(struMotion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHideAlarm) as usize - ptr as usize }, + 60192usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(struHideAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOsdColor) as usize - ptr as usize }, + 77012usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(struOsdColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBoundary) as usize - ptr as usize }, + 77016usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(dwBoundary) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOsdBkColor) as usize - ptr as usize }, + 77020usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(struOsdBkColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOSDBkColorMode) as usize - ptr as usize }, + 77024usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(byOSDBkColorMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUpDownBoundary) as usize - ptr as usize }, + 77025usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(byUpDownBoundary) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLeftRightBoundary) as usize - ptr as usize }, + 77026usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(byLeftRightBoundary) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAngleEnabled) as usize - ptr as usize }, + 77027usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(byAngleEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTiltAngleTopLeftX) as usize - ptr as usize }, + 77028usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(wTiltAngleTopLeftX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTiltAngleTopLeftY) as usize - ptr as usize }, + 77030usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(wTiltAngleTopLeftY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 77032usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICCFG_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_PICCFG_V40 = *mut NET_DVR_PICCFG_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_ISP_CAMERAPARAMCFG { + pub dwSize: DWORD, + pub byWorkType: BYTE, + pub byRes: [BYTE; 3usize], + pub struDayNightScheduleTime: NET_DVR_SCHEDULE_DAYTIME, + pub struSelfAdaptiveParam: NET_DVR_CAMERAPARAMCFG_EX, + pub struDayIspAdvanceParam: NET_DVR_CAMERAPARAMCFG_EX, + pub struNightIspAdvanceParam: NET_DVR_CAMERAPARAMCFG_EX, + pub byRes1: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_ISP_CAMERAPARAMCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2012usize, + concat!("Size of: ", stringify!(NET_DVR_ISP_CAMERAPARAMCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_ISP_CAMERAPARAMCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ISP_CAMERAPARAMCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ISP_CAMERAPARAMCFG), + "::", + stringify!(byWorkType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ISP_CAMERAPARAMCFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDayNightScheduleTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ISP_CAMERAPARAMCFG), + "::", + stringify!(struDayNightScheduleTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSelfAdaptiveParam) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ISP_CAMERAPARAMCFG), + "::", + stringify!(struSelfAdaptiveParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDayIspAdvanceParam) as usize - ptr as usize }, + 516usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ISP_CAMERAPARAMCFG), + "::", + stringify!(struDayIspAdvanceParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNightIspAdvanceParam) as usize - ptr as usize }, + 1008usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ISP_CAMERAPARAMCFG), + "::", + stringify!(struNightIspAdvanceParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1500usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_ISP_CAMERAPARAMCFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type LPNET_DVR_ISP_CAMERAPARAMCFG = *mut NET_DVR_ISP_CAMERAPARAMCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_DEVSERVER_CFG { + pub dwSize: DWORD, + pub byIrLampServer: BYTE, + pub bytelnetServer: BYTE, + pub byABFServer: BYTE, + pub byEnableLEDStatus: BYTE, + pub byEnableAutoDefog: BYTE, + pub byEnableSupplementLight: BYTE, + pub byEnableDeicing: BYTE, + pub byEnableVisibleMovementPower: BYTE, + pub byEnableThermalMovementPower: BYTE, + pub byEnablePtzPower: BYTE, + pub byPowerSavingControl: BYTE, + pub byCaptureWithSupplimentLightEnabled: BYTE, + pub byRes: [BYTE; 244usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_DEVSERVER_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(NET_DVR_DEVSERVER_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_DEVSERVER_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVSERVER_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIrLampServer) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVSERVER_CFG), + "::", + stringify!(byIrLampServer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bytelnetServer) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVSERVER_CFG), + "::", + stringify!(bytelnetServer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byABFServer) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVSERVER_CFG), + "::", + stringify!(byABFServer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableLEDStatus) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVSERVER_CFG), + "::", + stringify!(byEnableLEDStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableAutoDefog) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVSERVER_CFG), + "::", + stringify!(byEnableAutoDefog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableSupplementLight) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVSERVER_CFG), + "::", + stringify!(byEnableSupplementLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableDeicing) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVSERVER_CFG), + "::", + stringify!(byEnableDeicing) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byEnableVisibleMovementPower) as usize - ptr as usize + }, + 11usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVSERVER_CFG), + "::", + stringify!(byEnableVisibleMovementPower) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byEnableThermalMovementPower) as usize - ptr as usize + }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVSERVER_CFG), + "::", + stringify!(byEnableThermalMovementPower) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnablePtzPower) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVSERVER_CFG), + "::", + stringify!(byEnablePtzPower) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPowerSavingControl) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVSERVER_CFG), + "::", + stringify!(byPowerSavingControl) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byCaptureWithSupplimentLightEnabled) as usize - ptr as usize + }, + 15usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVSERVER_CFG), + "::", + stringify!(byCaptureWithSupplimentLightEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_DEVSERVER_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_DEVSERVER_CFG = *mut NET_DVR_DEVSERVER_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GBT28181_ACCESS_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byTransProtocol: BYTE, + pub wLocalSipPort: WORD, + pub szServerID: [::std::os::raw::c_char; 64usize], + pub szServerDomain: [::std::os::raw::c_char; 128usize], + pub szSipServerAddress: [::std::os::raw::c_char; 128usize], + pub wServerSipPort: WORD, + pub byProtocolVersion: BYTE, + pub byTCPConnectMod: BYTE, + pub szSipUserName: [::std::os::raw::c_char; 64usize], + pub szSipAuthenticateID: [::std::os::raw::c_char; 64usize], + pub szSipAuthenticatePasswd: [::std::os::raw::c_char; 32usize], + pub dwRegisterValid: DWORD, + pub byHeartbeatInterval: BYTE, + pub byMaxHeartbeatTimeOut: BYTE, + pub byStreamType: BYTE, + pub byDeviceStatus: BYTE, + pub dwRegisterInterval: DWORD, + pub dwAutoAllocChannelID: DWORD, + pub szDeviceDomain: [::std::os::raw::c_char; 128usize], + pub byRes4: [BYTE; 116usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GBT28181_ACCESS_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 752usize, + concat!("Size of: ", stringify!(tagNET_DVR_GBT28181_ACCESS_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GBT28181_ACCESS_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_ACCESS_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_ACCESS_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransProtocol) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_ACCESS_CFG), + "::", + stringify!(byTransProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalSipPort) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_ACCESS_CFG), + "::", + stringify!(wLocalSipPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szServerID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_ACCESS_CFG), + "::", + stringify!(szServerID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szServerDomain) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_ACCESS_CFG), + "::", + stringify!(szServerDomain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szSipServerAddress) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_ACCESS_CFG), + "::", + stringify!(szSipServerAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wServerSipPort) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_ACCESS_CFG), + "::", + stringify!(wServerSipPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProtocolVersion) as usize - ptr as usize }, + 330usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_ACCESS_CFG), + "::", + stringify!(byProtocolVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTCPConnectMod) as usize - ptr as usize }, + 331usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_ACCESS_CFG), + "::", + stringify!(byTCPConnectMod) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szSipUserName) as usize - ptr as usize }, + 332usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_ACCESS_CFG), + "::", + stringify!(szSipUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szSipAuthenticateID) as usize - ptr as usize }, + 396usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_ACCESS_CFG), + "::", + stringify!(szSipAuthenticateID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szSipAuthenticatePasswd) as usize - ptr as usize }, + 460usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_ACCESS_CFG), + "::", + stringify!(szSipAuthenticatePasswd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRegisterValid) as usize - ptr as usize }, + 492usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_ACCESS_CFG), + "::", + stringify!(dwRegisterValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHeartbeatInterval) as usize - ptr as usize }, + 496usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_ACCESS_CFG), + "::", + stringify!(byHeartbeatInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMaxHeartbeatTimeOut) as usize - ptr as usize }, + 497usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_ACCESS_CFG), + "::", + stringify!(byMaxHeartbeatTimeOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 498usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_ACCESS_CFG), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceStatus) as usize - ptr as usize }, + 499usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_ACCESS_CFG), + "::", + stringify!(byDeviceStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRegisterInterval) as usize - ptr as usize }, + 500usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_ACCESS_CFG), + "::", + stringify!(dwRegisterInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAutoAllocChannelID) as usize - ptr as usize }, + 504usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_ACCESS_CFG), + "::", + stringify!(dwAutoAllocChannelID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDeviceDomain) as usize - ptr as usize }, + 508usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_ACCESS_CFG), + "::", + stringify!(szDeviceDomain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes4) as usize - ptr as usize }, + 636usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_ACCESS_CFG), + "::", + stringify!(byRes4) + ) + ); +} +pub type NET_DVR_GBT28181_ACCESS_CFG = tagNET_DVR_GBT28181_ACCESS_CFG; +pub type LPNET_DVR_GBT28181_ACCESS_CFG = *mut tagNET_DVR_GBT28181_ACCESS_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GBT28181_CHANINFO_CFG { + pub dwSize: DWORD, + pub szVideoChannelNumID: [::std::os::raw::c_char; 64usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GBT28181_CHANINFO_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 324usize, + concat!("Size of: ", stringify!(tagNET_DVR_GBT28181_CHANINFO_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_GBT28181_CHANINFO_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_CHANINFO_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szVideoChannelNumID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_CHANINFO_CFG), + "::", + stringify!(szVideoChannelNumID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_CHANINFO_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GBT28181_CHANINFO_CFG = tagNET_DVR_GBT28181_CHANINFO_CFG; +pub type LPNET_DVR_GBT28181_CHANINFO_CFG = *mut tagNET_DVR_GBT28181_CHANINFO_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMIN_INFO { + pub struStreamInfo: NET_DVR_STREAM_INFO, + pub dwAlarmInChannel: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMIN_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 108usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMIN_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMIN_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_INFO), + "::", + stringify!(struStreamInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmInChannel) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_INFO), + "::", + stringify!(dwAlarmInChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMIN_INFO = tagNET_DVR_ALARMIN_INFO; +pub type LPNET_DVR_ALARMIN_INFO = *mut tagNET_DVR_ALARMIN_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GBT28181_ALARMINCFG { + pub dwSize: DWORD, + pub szAlarmInNumID: [::std::os::raw::c_char; 64usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GBT28181_ALARMINCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 324usize, + concat!("Size of: ", stringify!(tagNET_DVR_GBT28181_ALARMINCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GBT28181_ALARMINCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_ALARMINCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szAlarmInNumID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_ALARMINCFG), + "::", + stringify!(szAlarmInNumID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_ALARMINCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GBT28181_ALARMINCFG = tagNET_DVR_GBT28181_ALARMINCFG; +pub type LPNET_DVR_GBT28181_ALARMINCFG = *mut tagNET_DVR_GBT28181_ALARMINCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CAMERA_SETUPCFG { + pub dwSize: DWORD, + pub wSetupHeight: WORD, + pub byLensType: BYTE, + pub bySetupHeightUnit: BYTE, + pub dwSceneDis: DWORD, + pub fPitchAngle: f32, + pub fInclineAngle: f32, + pub fRotateAngle: f32, + pub wVideoDetCoefficient: WORD, + pub byErectMethod: BYTE, + pub byCameraViewAngle: BYTE, + pub dwHorizontalDistance: DWORD, + pub byDetailLensType: BYTE, + pub byRes: [BYTE; 3usize], + pub fHorFieldAngle: f32, + pub fVerFieldAngle: f32, + pub fLableSetupHeight: f32, + pub fMaxViewRadius: f32, + pub byRes1: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CAMERA_SETUPCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_CAMERA_SETUPCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CAMERA_SETUPCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_SETUPCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSetupHeight) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_SETUPCFG), + "::", + stringify!(wSetupHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLensType) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_SETUPCFG), + "::", + stringify!(byLensType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySetupHeightUnit) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_SETUPCFG), + "::", + stringify!(bySetupHeightUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSceneDis) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_SETUPCFG), + "::", + stringify!(dwSceneDis) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fPitchAngle) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_SETUPCFG), + "::", + stringify!(fPitchAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fInclineAngle) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_SETUPCFG), + "::", + stringify!(fInclineAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fRotateAngle) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_SETUPCFG), + "::", + stringify!(fRotateAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wVideoDetCoefficient) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_SETUPCFG), + "::", + stringify!(wVideoDetCoefficient) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byErectMethod) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_SETUPCFG), + "::", + stringify!(byErectMethod) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCameraViewAngle) as usize - ptr as usize }, + 27usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_SETUPCFG), + "::", + stringify!(byCameraViewAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHorizontalDistance) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_SETUPCFG), + "::", + stringify!(dwHorizontalDistance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetailLensType) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_SETUPCFG), + "::", + stringify!(byDetailLensType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_SETUPCFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fHorFieldAngle) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_SETUPCFG), + "::", + stringify!(fHorFieldAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fVerFieldAngle) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_SETUPCFG), + "::", + stringify!(fVerFieldAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fLableSetupHeight) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_SETUPCFG), + "::", + stringify!(fLableSetupHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fMaxViewRadius) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_SETUPCFG), + "::", + stringify!(fMaxViewRadius) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_SETUPCFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_CAMERA_SETUPCFG = tagNET_DVR_CAMERA_SETUPCFG; +pub type LPNET_DVR_CAMERA_SETUPCFG = *mut tagNET_DVR_CAMERA_SETUPCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCHEDDATE { + pub byStartMonth: BYTE, + pub byStartDay: BYTE, + pub byStopMonth: BYTE, + pub byStopDay: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCHEDDATE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCHEDDATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCHEDDATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartMonth) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDDATE), + "::", + stringify!(byStartMonth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartDay) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDDATE), + "::", + stringify!(byStartDay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStopMonth) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDDATE), + "::", + stringify!(byStopMonth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStopDay) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDDATE), + "::", + stringify!(byStopDay) + ) + ); +} +pub type NET_DVR_SCHEDDATE = tagNET_DVR_SCHEDDATE; +pub type LPNET_DVR_SCHEDDATE = *mut tagNET_DVR_SCHEDDATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OUTPUT_SCHEDULE { + pub struTime: NET_DVR_SCHEDTIME, + pub byState: BYTE, + pub byRes: [BYTE; 11usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OUTPUT_SCHEDULE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_OUTPUT_SCHEDULE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OUTPUT_SCHEDULE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_SCHEDULE), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byState) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_SCHEDULE), + "::", + stringify!(byState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_SCHEDULE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_OUTPUT_SCHEDULE = tagNET_DVR_OUTPUT_SCHEDULE; +pub type LPNET_DVR_OUTPUT_SCHEDULE = *mut tagNET_DVR_OUTPUT_SCHEDULE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE { + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub struDate: NET_DVR_SCHEDDATE, + pub struOutputSchedule: [NET_DVR_OUTPUT_SCHEDULE; 8usize], + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 152usize, + concat!("Size of: ", stringify!(tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDate) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE), + "::", + stringify!(struDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOutputSchedule) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE), + "::", + stringify!(struOutputSchedule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ONE_OUTPUT_SCHEDULE_RULE = tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE; +pub type LPNET_DVR_ONE_OUTPUT_SCHEDULE_RULE = *mut tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OUTPUT_SCHEDULE_RULECFG { + pub dwSize: DWORD, + pub struOutputRule: [NET_DVR_ONE_OUTPUT_SCHEDULE_RULE; 8usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OUTPUT_SCHEDULE_RULECFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1284usize, + concat!("Size of: ", stringify!(tagNET_DVR_OUTPUT_SCHEDULE_RULECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_OUTPUT_SCHEDULE_RULECFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_SCHEDULE_RULECFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOutputRule) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_SCHEDULE_RULECFG), + "::", + stringify!(struOutputRule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_SCHEDULE_RULECFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_OUTPUT_SCHEDULE_RULECFG = tagNET_DVR_OUTPUT_SCHEDULE_RULECFG; +pub type LPNET_DVR_OUTPUT_SCHEDULE_RULECFG = *mut tagNET_DVR_OUTPUT_SCHEDULE_RULECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TPS_ALARMCFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwInterval: DWORD, + pub byRes: [BYTE; 248usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TPS_ALARMCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(tagNET_DVR_TPS_ALARMCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TPS_ALARMCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ALARMCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ALARMCFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ALARMCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInterval) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ALARMCFG), + "::", + stringify!(dwInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ALARMCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TPS_ALARMCFG = tagNET_DVR_TPS_ALARMCFG; +pub type LPNET_DVR_TPS_ALARMCFG = *mut tagNET_DVR_TPS_ALARMCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DOWNLOAD_ALARM_RECORD_COND { + pub dwSize: DWORD, + pub wAlarmRecordID: WORD, + pub byRes: [BYTE; 130usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DOWNLOAD_ALARM_RECORD_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_DOWNLOAD_ALARM_RECORD_COND) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_DOWNLOAD_ALARM_RECORD_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOWNLOAD_ALARM_RECORD_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAlarmRecordID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOWNLOAD_ALARM_RECORD_COND), + "::", + stringify!(wAlarmRecordID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOWNLOAD_ALARM_RECORD_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DOWNLOAD_ALARM_RECORD_COND = tagNET_DVR_DOWNLOAD_ALARM_RECORD_COND; +pub type LPNET_DVR_DOWNLOAD_ALARM_RECORD_COND = *mut tagNET_DVR_DOWNLOAD_ALARM_RECORD_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CABINET_AlARM_PARAMCFG { + pub sCabinetName: [::std::os::raw::c_char; 32usize], + pub byAssociateIO: BYTE, + pub byCabinetState: BYTE, + pub byAlarmIntervalTime: BYTE, + pub byRes1: [BYTE; 25usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CABINET_AlARM_PARAMCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 60usize, + concat!("Size of: ", stringify!(tagNET_DVR_CABINET_AlARM_PARAMCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_CABINET_AlARM_PARAMCFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCabinetName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CABINET_AlARM_PARAMCFG), + "::", + stringify!(sCabinetName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAssociateIO) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CABINET_AlARM_PARAMCFG), + "::", + stringify!(byAssociateIO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCabinetState) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CABINET_AlARM_PARAMCFG), + "::", + stringify!(byCabinetState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmIntervalTime) as usize - ptr as usize }, + 34usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CABINET_AlARM_PARAMCFG), + "::", + stringify!(byAlarmIntervalTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 35usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CABINET_AlARM_PARAMCFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_CABINET_AlARM_PARAMCFG = tagNET_DVR_CABINET_AlARM_PARAMCFG; +pub type LPNET_DVR_CABINET_AlARM_PARAMCFG = *mut tagNET_DVR_CABINET_AlARM_PARAMCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CABINET_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes: [BYTE; 3usize], + pub struCabinetCfg: [NET_DVR_CABINET_AlARM_PARAMCFG; 8usize], + pub byRes1: [BYTE; 84usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CABINET_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 572usize, + concat!("Size of: ", stringify!(tagNET_DVR_CABINET_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CABINET_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CABINET_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CABINET_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CABINET_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCabinetCfg) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CABINET_CFG), + "::", + stringify!(struCabinetCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 488usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CABINET_CFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_CABINET_CFG = tagNET_DVR_CABINET_CFG; +pub type LPNET_DVR_CABINET_CFG = *mut tagNET_DVR_CABINET_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_GATE_LANE_CFG { + pub byGateSiteID: [BYTE; 48usize], + pub byGateInfo: [BYTE; 48usize], + pub byLaneName: [BYTE; 32usize], + pub byValid: BYTE, + pub byCamLaneId: BYTE, + pub wLaneid: WORD, + pub byRelativeIoNum: BYTE, + pub byDirection: BYTE, + pub byLprMode: BYTE, + pub byCardMode: BYTE, + pub byGateLaneMode: BYTE, + pub byCharge: BYTE, + pub byChargeMode: BYTE, + pub byRes1: BYTE, + pub byLedRelativeIndex: [BYTE; 8usize], + pub byGateRelativeIndex: BYTE, + pub byFarRrRelativeIndex: BYTE, + pub byRes: [BYTE; 82usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_GATE_LANE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 232usize, + concat!("Size of: ", stringify!(tagNET_ITS_GATE_LANE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_ITS_GATE_LANE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGateSiteID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_LANE_CFG), + "::", + stringify!(byGateSiteID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGateInfo) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_LANE_CFG), + "::", + stringify!(byGateInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneName) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_LANE_CFG), + "::", + stringify!(byLaneName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_LANE_CFG), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCamLaneId) as usize - ptr as usize }, + 129usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_LANE_CFG), + "::", + stringify!(byCamLaneId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLaneid) as usize - ptr as usize }, + 130usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_LANE_CFG), + "::", + stringify!(wLaneid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelativeIoNum) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_LANE_CFG), + "::", + stringify!(byRelativeIoNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDirection) as usize - ptr as usize }, + 133usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_LANE_CFG), + "::", + stringify!(byDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLprMode) as usize - ptr as usize }, + 134usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_LANE_CFG), + "::", + stringify!(byLprMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardMode) as usize - ptr as usize }, + 135usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_LANE_CFG), + "::", + stringify!(byCardMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGateLaneMode) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_LANE_CFG), + "::", + stringify!(byGateLaneMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCharge) as usize - ptr as usize }, + 137usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_LANE_CFG), + "::", + stringify!(byCharge) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChargeMode) as usize - ptr as usize }, + 138usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_LANE_CFG), + "::", + stringify!(byChargeMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 139usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_LANE_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLedRelativeIndex) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_LANE_CFG), + "::", + stringify!(byLedRelativeIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGateRelativeIndex) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_LANE_CFG), + "::", + stringify!(byGateRelativeIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFarRrRelativeIndex) as usize - ptr as usize }, + 149usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_LANE_CFG), + "::", + stringify!(byFarRrRelativeIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_GATE_LANE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITS_GATE_LANE_CFG = tagNET_ITS_GATE_LANE_CFG; +pub type LPNET_ITS_GATE_LANE_CFG = *mut tagNET_ITS_GATE_LANE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_IPC_CHAN_LANE_CFG { + pub dwSize: DWORD, + pub byIpcType: BYTE, + pub byRes: [BYTE; 135usize], + pub struGateLane: [NET_ITS_GATE_LANE_CFG; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_IPC_CHAN_LANE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1068usize, + concat!("Size of: ", stringify!(tagNET_ITS_IPC_CHAN_LANE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITS_IPC_CHAN_LANE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_IPC_CHAN_LANE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIpcType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_IPC_CHAN_LANE_CFG), + "::", + stringify!(byIpcType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_IPC_CHAN_LANE_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGateLane) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_IPC_CHAN_LANE_CFG), + "::", + stringify!(struGateLane) + ) + ); +} +pub type NET_ITS_IPC_CHAN_LANE_CFG = tagNET_ITS_IPC_CHAN_LANE_CFG; +pub type LPNET_ITS_IPC_CHAN_LANE_CFG = *mut tagNET_ITS_IPC_CHAN_LANE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_REMOTE_COMMAND { + pub wLaneid: WORD, + pub byCamLaneId: BYTE, + pub byRes: BYTE, + pub dwCode: DWORD, + pub byRes1: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_REMOTE_COMMAND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_ITS_REMOTE_COMMAND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITS_REMOTE_COMMAND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLaneid) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_REMOTE_COMMAND), + "::", + stringify!(wLaneid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCamLaneId) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_REMOTE_COMMAND), + "::", + stringify!(byCamLaneId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_REMOTE_COMMAND), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_REMOTE_COMMAND), + "::", + stringify!(dwCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_REMOTE_COMMAND), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_ITS_REMOTE_COMMAND = tagNET_ITS_REMOTE_COMMAND; +pub type LPNET_ITS_REMOTE_COMMAND = *mut tagNET_ITS_REMOTE_COMMAND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_REMOTE_CONTROL_ { + pub dwSize: DWORD, + pub struRemoteCommand: NET_ITS_REMOTE_COMMAND, +} +#[test] +fn bindgen_test_layout_tagNET_ITS_REMOTE_CONTROL_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 140usize, + concat!("Size of: ", stringify!(tagNET_ITS_REMOTE_CONTROL_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITS_REMOTE_CONTROL_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_REMOTE_CONTROL_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRemoteCommand) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_REMOTE_CONTROL_), + "::", + stringify!(struRemoteCommand) + ) + ); +} +pub type NET_ITS_REMOTE_CONTROL = tagNET_ITS_REMOTE_CONTROL_; +pub type LPNET_ITS_REMOTE_CONTROL = *mut tagNET_ITS_REMOTE_CONTROL_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ITS_ECT_CHANNELSTATE { + pub dwSize: DWORD, + pub byRecordStatic: BYTE, + pub bySignalStatic: BYTE, + pub byHardwareStatic: BYTE, + pub byChannelArmState: BYTE, + pub dwChannel: DWORD, + pub dwBitRate: DWORD, + pub dwLinkNum: DWORD, + pub struClientIP: [NET_DVR_IPADDR; 6usize], + pub dwIPLinkNum: DWORD, + pub byExceedMaxLink: BYTE, + pub byRes: [BYTE; 139usize], +} +#[test] +fn bindgen_test_layout_tagNET_ITS_ECT_CHANNELSTATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1028usize, + concat!("Size of: ", stringify!(tagNET_ITS_ECT_CHANNELSTATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ITS_ECT_CHANNELSTATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECT_CHANNELSTATE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordStatic) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECT_CHANNELSTATE), + "::", + stringify!(byRecordStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySignalStatic) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECT_CHANNELSTATE), + "::", + stringify!(bySignalStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHardwareStatic) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECT_CHANNELSTATE), + "::", + stringify!(byHardwareStatic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannelArmState) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECT_CHANNELSTATE), + "::", + stringify!(byChannelArmState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECT_CHANNELSTATE), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBitRate) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECT_CHANNELSTATE), + "::", + stringify!(dwBitRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLinkNum) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECT_CHANNELSTATE), + "::", + stringify!(dwLinkNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struClientIP) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECT_CHANNELSTATE), + "::", + stringify!(struClientIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIPLinkNum) as usize - ptr as usize }, + 884usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECT_CHANNELSTATE), + "::", + stringify!(dwIPLinkNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExceedMaxLink) as usize - ptr as usize }, + 888usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECT_CHANNELSTATE), + "::", + stringify!(byExceedMaxLink) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 889usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ITS_ECT_CHANNELSTATE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITS_ECT_CHANNELSTATE = tagNET_ITS_ECT_CHANNELSTATE; +pub type LPNET_ITS_ECT_CHANNELSTATE = *mut tagNET_ITS_ECT_CHANNELSTATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PARK_EXTERNAL_SUBINFO { + pub byEnable: BYTE, + pub byFlicker: BYTE, + pub byIOState: BYTE, + pub byLampColor: BYTE, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PARK_EXTERNAL_SUBINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_PARK_EXTERNAL_SUBINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PARK_EXTERNAL_SUBINFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARK_EXTERNAL_SUBINFO), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlicker) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARK_EXTERNAL_SUBINFO), + "::", + stringify!(byFlicker) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIOState) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARK_EXTERNAL_SUBINFO), + "::", + stringify!(byIOState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLampColor) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARK_EXTERNAL_SUBINFO), + "::", + stringify!(byLampColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARK_EXTERNAL_SUBINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PARK_EXTERNAL_SUBINFO = tagNET_DVR_PARK_EXTERNAL_SUBINFO; +pub type LPNET_DVR_PARK_EXTERNAL_SUBINFO = *mut tagNET_DVR_PARK_EXTERNAL_SUBINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PARK_INLAY_SUBINFO { + pub byEnable: BYTE, + pub byFlicker: BYTE, + pub byLampColor: BYTE, + pub byRes: [BYTE; 21usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PARK_INLAY_SUBINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_DVR_PARK_INLAY_SUBINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PARK_INLAY_SUBINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARK_INLAY_SUBINFO), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlicker) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARK_INLAY_SUBINFO), + "::", + stringify!(byFlicker) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLampColor) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARK_INLAY_SUBINFO), + "::", + stringify!(byLampColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARK_INLAY_SUBINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PARK_INLAY_SUBINFO = tagNET_DVR_PARK_INLAY_SUBINFO; +pub type LPNET_DVR_PARK_INLAY_SUBINFO = *mut tagNET_DVR_PARK_INLAY_SUBINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PARKINFO { + pub struNormalParkIOState: NET_DVR_PARK_EXTERNAL_SUBINFO, + pub struNormalNoParkIOState: NET_DVR_PARK_EXTERNAL_SUBINFO, + pub struSpecialParkIOState: NET_DVR_PARK_EXTERNAL_SUBINFO, + pub struSpecialNoParkIOState: NET_DVR_PARK_EXTERNAL_SUBINFO, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PARKINFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(tagNET_DVR_PARKINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PARKINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNormalParkIOState) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKINFO), + "::", + stringify!(struNormalParkIOState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNormalNoParkIOState) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKINFO), + "::", + stringify!(struNormalNoParkIOState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSpecialParkIOState) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKINFO), + "::", + stringify!(struSpecialParkIOState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSpecialNoParkIOState) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKINFO), + "::", + stringify!(struSpecialNoParkIOState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PARKINFO = tagNET_DVR_PARKINFO; +pub type LPNET_DVR_PARKINFO = *mut tagNET_DVR_PARKINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EXTERNAL_LAMP_CTRL_MODE { + pub struParkInfo: [NET_DVR_PARKINFO; 4usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXTERNAL_LAMP_CTRL_MODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 288usize, + concat!("Size of: ", stringify!(tagNET_DVR_EXTERNAL_LAMP_CTRL_MODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_EXTERNAL_LAMP_CTRL_MODE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struParkInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_LAMP_CTRL_MODE), + "::", + stringify!(struParkInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_LAMP_CTRL_MODE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EXTERNAL_LAMP_CTRL_MODE = tagNET_DVR_EXTERNAL_LAMP_CTRL_MODE; +pub type LPNET_DVR_EXTERNAL_LAMP_CTRL_MODE = *mut tagNET_DVR_EXTERNAL_LAMP_CTRL_MODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INLAY_LAMP_CTRL_MODE { + pub struLampStateCtrl: [NET_DVR_PARK_INLAY_SUBINFO; 8usize], + pub byRes: [BYTE; 96usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INLAY_LAMP_CTRL_MODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 288usize, + concat!("Size of: ", stringify!(tagNET_DVR_INLAY_LAMP_CTRL_MODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INLAY_LAMP_CTRL_MODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLampStateCtrl) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INLAY_LAMP_CTRL_MODE), + "::", + stringify!(struLampStateCtrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INLAY_LAMP_CTRL_MODE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INLAY_LAMP_CTRL_MODE = tagNET_DVR_INLAY_LAMP_CTRL_MODE; +pub type LPNET_DVR_INLAY_LAMP_CTRL_MODE = *mut tagNET_DVR_INLAY_LAMP_CTRL_MODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LAMP_INFO { + pub byEnable: BYTE, + pub byFlicker: BYTE, + pub byLampColor: BYTE, + pub byRes: [BYTE; 5usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LAMP_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_LAMP_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LAMP_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_INFO), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlicker) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_INFO), + "::", + stringify!(byFlicker) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLampColor) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_INFO), + "::", + stringify!(byLampColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LAMP_INFO = tagNET_DVR_LAMP_INFO; +pub type LPNET_DVR_LAMP_INFO = *mut tagNET_DVR_LAMP_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PARKLAMP_CTRL_MODE { + pub struLampInfo: [NET_DVR_LAMP_INFO; 8usize], + pub byLampType: BYTE, + pub byRes: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PARKLAMP_CTRL_MODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_PARKLAMP_CTRL_MODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PARKLAMP_CTRL_MODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLampInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKLAMP_CTRL_MODE), + "::", + stringify!(struLampInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLampType) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKLAMP_CTRL_MODE), + "::", + stringify!(byLampType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 65usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKLAMP_CTRL_MODE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PARKLAMP_CTRL_MODE = tagNET_DVR_PARKLAMP_CTRL_MODE; +pub type LPNET_DVR_PARKLAMP_CTRL_MODE = *mut tagNET_DVR_PARKLAMP_CTRL_MODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LAMP_PARAM { + pub byEnable: BYTE, + pub byFlicker: BYTE, + pub byLampColor: BYTE, + pub byRes: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LAMP_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 6usize, + concat!("Size of: ", stringify!(tagNET_DVR_LAMP_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LAMP_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_PARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlicker) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_PARAM), + "::", + stringify!(byFlicker) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLampColor) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_PARAM), + "::", + stringify!(byLampColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LAMP_PARAM = tagNET_DVR_LAMP_PARAM; +pub type LPNET_DVR_LAMP_PARAM = *mut tagNET_DVR_LAMP_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EXTERNAL_PARKLAMP { + pub struLampParam: [NET_DVR_LAMP_PARAM; 8usize], + pub byLampType: BYTE, + pub byRes: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXTERNAL_PARKLAMP() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_EXTERNAL_PARKLAMP)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EXTERNAL_PARKLAMP)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLampParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_PARKLAMP), + "::", + stringify!(struLampParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLampType) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_PARKLAMP), + "::", + stringify!(byLampType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 49usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_PARKLAMP), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EXTERNAL_PARKLAMP = tagNET_DVR_EXTERNAL_PARKLAMP; +pub type LPNET_DVR_EXTERNAL_PARKLAMP = *mut tagNET_DVR_EXTERNAL_PARKLAMP; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BUILTIN_PARKLAMP { + pub byEnable: BYTE, + pub byFlicker: BYTE, + pub byLampColor: BYTE, + pub byRes: [BYTE; 5usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BUILTIN_PARKLAMP() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_BUILTIN_PARKLAMP)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BUILTIN_PARKLAMP)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BUILTIN_PARKLAMP), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlicker) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BUILTIN_PARKLAMP), + "::", + stringify!(byFlicker) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLampColor) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BUILTIN_PARKLAMP), + "::", + stringify!(byLampColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BUILTIN_PARKLAMP), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BUILTIN_PARKLAMP = tagNET_DVR_BUILTIN_PARKLAMP; +pub type LPNET_DVR_BUILTIN_PARKLAMP = *mut tagNET_DVR_BUILTIN_PARKLAMP; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MIXLAMP_CTRL_MODE { + pub struExternalParkLamp: [NET_DVR_EXTERNAL_PARKLAMP; 4usize], + pub struBuiltInParkLamp: [NET_DVR_BUILTIN_PARKLAMP; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MIXLAMP_CTRL_MODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 288usize, + concat!("Size of: ", stringify!(tagNET_DVR_MIXLAMP_CTRL_MODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MIXLAMP_CTRL_MODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struExternalParkLamp) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIXLAMP_CTRL_MODE), + "::", + stringify!(struExternalParkLamp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBuiltInParkLamp) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIXLAMP_CTRL_MODE), + "::", + stringify!(struBuiltInParkLamp) + ) + ); +} +pub type NET_DVR_MIXLAMP_CTRL_MODE = tagNET_DVR_MIXLAMP_CTRL_MODE; +pub type LPNET_DVR_MIXLAMP_CTRL_MODE = *mut tagNET_DVR_MIXLAMP_CTRL_MODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SINGLELAMP_CTRL_MODE { + pub struExternLampStateCtrl: [NET_DVR_PARK_EXTERNAL_SUBINFO; 8usize], + pub byLampType: BYTE, + pub byRes: [BYTE; 23usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SINGLELAMP_CTRL_MODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(tagNET_DVR_SINGLELAMP_CTRL_MODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SINGLELAMP_CTRL_MODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struExternLampStateCtrl) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLELAMP_CTRL_MODE), + "::", + stringify!(struExternLampStateCtrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLampType) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLELAMP_CTRL_MODE), + "::", + stringify!(byLampType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 65usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLELAMP_CTRL_MODE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SINGLELAMP_CTRL_MODE = tagNET_DVR_SINGLELAMP_CTRL_MODE; +pub type LPNET_DVR_SINGLELAMP_CTRL_MODE = *mut tagNET_DVR_SINGLELAMP_CTRL_MODE; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_LAMP_CTRL_MODE_UNION { + pub uLen: [BYTE; 288usize], + pub struInlayLampCtrlMode: NET_DVR_INLAY_LAMP_CTRL_MODE, + pub struExternalLampCtrlMode: NET_DVR_EXTERNAL_LAMP_CTRL_MODE, + pub struParkLampCtrlMode: [NET_DVR_PARKLAMP_CTRL_MODE; 4usize], + pub struMixLampCtrlMode: NET_DVR_MIXLAMP_CTRL_MODE, + pub struSingleExternalLampCtrlMode: NET_DVR_SINGLELAMP_CTRL_MODE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LAMP_CTRL_MODE_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 288usize, + concat!("Size of: ", stringify!(tagNET_DVR_LAMP_CTRL_MODE_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LAMP_CTRL_MODE_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_CTRL_MODE_UNION), + "::", + stringify!(uLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInlayLampCtrlMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_CTRL_MODE_UNION), + "::", + stringify!(struInlayLampCtrlMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struExternalLampCtrlMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_CTRL_MODE_UNION), + "::", + stringify!(struExternalLampCtrlMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struParkLampCtrlMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_CTRL_MODE_UNION), + "::", + stringify!(struParkLampCtrlMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMixLampCtrlMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_CTRL_MODE_UNION), + "::", + stringify!(struMixLampCtrlMode) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).struSingleExternalLampCtrlMode) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_CTRL_MODE_UNION), + "::", + stringify!(struSingleExternalLampCtrlMode) + ) + ); +} +pub type NET_DVR_LAMP_CTRL_MODE_UNION = tagNET_DVR_LAMP_CTRL_MODE_UNION; +pub type LPNET_DVR_LAMP_CTRL_MODE_UNION = *mut tagNET_DVR_LAMP_CTRL_MODE_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_LAMP_CTRL_INFO { + pub dwSize: DWORD, + pub byLampCtrlMode: BYTE, + pub byCtrlChannelIndex: BYTE, + pub byRes: [BYTE; 2usize], + pub uLampCtrlMode: NET_DVR_LAMP_CTRL_MODE_UNION, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LAMP_CTRL_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 328usize, + concat!("Size of: ", stringify!(tagNET_DVR_LAMP_CTRL_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LAMP_CTRL_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_CTRL_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLampCtrlMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_CTRL_INFO), + "::", + stringify!(byLampCtrlMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCtrlChannelIndex) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_CTRL_INFO), + "::", + stringify!(byCtrlChannelIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_CTRL_INFO), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLampCtrlMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_CTRL_INFO), + "::", + stringify!(uLampCtrlMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_CTRL_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_LAMP_CTRL_INFO = tagNET_DVR_LAMP_CTRL_INFO; +pub type LPNET_DVR_LAMP_CTRL_INFO = *mut tagNET_DVR_LAMP_CTRL_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PARKSPACE_INFO { + pub byParkSpaceAttribute: BYTE, + pub byRes: [BYTE; 23usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PARKSPACE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_DVR_PARKSPACE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PARKSPACE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParkSpaceAttribute) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKSPACE_INFO), + "::", + stringify!(byParkSpaceAttribute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKSPACE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PARKSPACE_INFO = tagNET_DVR_PARKSPACE_INFO; +pub type LPNET_DVR_PARKSPACE_INFO = *mut tagNET_DVR_PARKSPACE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PARKSPACE_ATTRIBUTE { + pub dwSize: DWORD, + pub struParkSpaceInfo: [NET_DVR_PARKSPACE_INFO; 4usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PARKSPACE_ATTRIBUTE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 164usize, + concat!("Size of: ", stringify!(tagNET_DVR_PARKSPACE_ATTRIBUTE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PARKSPACE_ATTRIBUTE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKSPACE_ATTRIBUTE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struParkSpaceInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKSPACE_ATTRIBUTE), + "::", + stringify!(struParkSpaceInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKSPACE_ATTRIBUTE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PARKSPACE_ATTRIBUTE = tagNET_DVR_PARKSPACE_ATTRIBUTE; +pub type LPNET_DVR_PARKSPACE_ATTRIBUTE = *mut tagNET_DVR_PARKSPACE_ATTRIBUTE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LAMP_STATE { + pub byFlicker: BYTE, + pub byParkingIndex: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwIONo: DWORD, + pub byRes2: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LAMP_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_LAMP_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LAMP_STATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlicker) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_STATE), + "::", + stringify!(byFlicker) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParkingIndex) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_STATE), + "::", + stringify!(byParkingIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_STATE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIONo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_STATE), + "::", + stringify!(dwIONo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_STATE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_LAMP_STATE = tagNET_DVR_LAMP_STATE; +pub type LPNET_DVR_LAMP_STATE = *mut tagNET_DVR_LAMP_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LAMP_EXTERNAL_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub struLampStateCtrl: NET_DVR_LAMP_STATE, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LAMP_EXTERNAL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_LAMP_EXTERNAL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LAMP_EXTERNAL_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_EXTERNAL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_EXTERNAL_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_EXTERNAL_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLampStateCtrl) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_EXTERNAL_CFG), + "::", + stringify!(struLampStateCtrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_EXTERNAL_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_LAMP_EXTERNAL_CFG = tagNET_DVR_LAMP_EXTERNAL_CFG; +pub type LPNET_DVR_LAMP_EXTERNAL_CFG = *mut tagNET_DVR_LAMP_EXTERNAL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_COMPEL_CAPTURE { + pub dwSize: DWORD, + pub byParkIndex: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_COMPEL_CAPTURE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_COMPEL_CAPTURE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_COMPEL_CAPTURE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COMPEL_CAPTURE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParkIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COMPEL_CAPTURE), + "::", + stringify!(byParkIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COMPEL_CAPTURE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_COMPEL_CAPTURE = tagNET_DVR_COMPEL_CAPTURE; +pub type LPNET_DVR_COMPEL_CAPTURE = *mut tagNET_DVR_COMPEL_CAPTURE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EXTERNAL_CONTROL_ALARM { + pub dwSize: DWORD, + pub dwChannelNo: DWORD, + pub struLampStateCtrl: NET_DVR_LAMP_STATE, + pub struExternalBeginTime: NET_DVR_TIME, + pub byRes1: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXTERNAL_CONTROL_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 112usize, + concat!("Size of: ", stringify!(tagNET_DVR_EXTERNAL_CONTROL_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_EXTERNAL_CONTROL_ALARM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_CONTROL_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannelNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_CONTROL_ALARM), + "::", + stringify!(dwChannelNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLampStateCtrl) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_CONTROL_ALARM), + "::", + stringify!(struLampStateCtrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struExternalBeginTime) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_CONTROL_ALARM), + "::", + stringify!(struExternalBeginTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_CONTROL_ALARM), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_EXTERNAL_CONTROL_ALARM = tagNET_DVR_EXTERNAL_CONTROL_ALARM; +pub type LPNET_DVR_EXTERNAL_CONTROL_ALARM = *mut tagNET_DVR_EXTERNAL_CONTROL_ALARM; +pub const tagEXTERNAL_DEVICES_TYPE_DEVICES_TYPE_RES1: tagEXTERNAL_DEVICES_TYPE = 0; +pub const tagEXTERNAL_DEVICES_TYPE_DEVICES_TYPE_FAR_SCR: tagEXTERNAL_DEVICES_TYPE = 1; +pub const tagEXTERNAL_DEVICES_TYPE_DEVICES_TYPE_ENTRANCE_CONTROL: tagEXTERNAL_DEVICES_TYPE = 2; +pub const tagEXTERNAL_DEVICES_TYPE_DEVICES_TYPE_WJ_LED_DEV: tagEXTERNAL_DEVICES_TYPE = 3; +pub const tagEXTERNAL_DEVICES_TYPE_DEVICES_TYPE_NJ_LED_DEV: tagEXTERNAL_DEVICES_TYPE = 4; +pub const tagEXTERNAL_DEVICES_TYPE_DEVICES_TYPE_VEH_DETECT_DEV: tagEXTERNAL_DEVICES_TYPE = 5; +pub const tagEXTERNAL_DEVICES_TYPE_DEVICES_TYPE_DZ_DEV: tagEXTERNAL_DEVICES_TYPE = 6; +pub const tagEXTERNAL_DEVICES_TYPE_DEVICES_TYPE_PX_SCR_DEV: tagEXTERNAL_DEVICES_TYPE = 7; +pub const tagEXTERNAL_DEVICES_TYPE_DEVICES_TYPE_KJ_SCR_DEV: tagEXTERNAL_DEVICES_TYPE = 8; +pub const tagEXTERNAL_DEVICES_TYPE_DEVICES_TYPE_FKJ_DEV: tagEXTERNAL_DEVICES_TYPE = 9; +pub const tagEXTERNAL_DEVICES_TYPE_DEVICES_TYPE_SKJ_DEV: tagEXTERNAL_DEVICES_TYPE = 10; +pub const tagEXTERNAL_DEVICES_TYPE_DEVICES_TYPE_HDD_DEV: tagEXTERNAL_DEVICES_TYPE = 11; +pub const tagEXTERNAL_DEVICES_TYPE_DEVICES_TYPE_DZ_LOCK: tagEXTERNAL_DEVICES_TYPE = 12; +pub const tagEXTERNAL_DEVICES_TYPE_DEVICES_TYPE_PAPER_PRINTER: tagEXTERNAL_DEVICES_TYPE = 13; +pub const tagEXTERNAL_DEVICES_TYPE_DEVICES_TYPE_PAPER_SCANNERS: tagEXTERNAL_DEVICES_TYPE = 14; +pub const tagEXTERNAL_DEVICES_TYPE_DEVICES_TYPE_IPC_ALARM: tagEXTERNAL_DEVICES_TYPE = 15; +pub type tagEXTERNAL_DEVICES_TYPE = ::std::os::raw::c_uint; +pub use self::tagEXTERNAL_DEVICES_TYPE as EXTERNAL_DEVICES_TYPE; +pub const tagEXTERNAL_DEVICES_STATUS_DEVICES_STATUS_NORMAL: tagEXTERNAL_DEVICES_STATUS = 0; +pub const tagEXTERNAL_DEVICES_STATUS_DEVICES_STATUS_ABNORMAL: tagEXTERNAL_DEVICES_STATUS = 1; +pub const tagEXTERNAL_DEVICES_STATUS_DEVICES_STATUS_TOO_LESS_CARD: tagEXTERNAL_DEVICES_STATUS = 20; +pub const tagEXTERNAL_DEVICES_STATUS_DEVICES_STATUS_NO_CARD: tagEXTERNAL_DEVICES_STATUS = 21; +pub const tagEXTERNAL_DEVICES_STATUS_DEVICES_STATUS_SENDCARD_ERROR: tagEXTERNAL_DEVICES_STATUS = 22; +pub const tagEXTERNAL_DEVICES_STATUS_DEVICES_STATUS_CARD_BLOCKED: tagEXTERNAL_DEVICES_STATUS = 23; +pub const tagEXTERNAL_DEVICES_STATUS_DEVICES_STATUS_CARD_FULL: tagEXTERNAL_DEVICES_STATUS = 24; +pub const tagEXTERNAL_DEVICES_STATUS_DEVICES_STATUS_OPENING: tagEXTERNAL_DEVICES_STATUS = 40; +pub const tagEXTERNAL_DEVICES_STATUS_DEVICES_STATUS_CLOSING: tagEXTERNAL_DEVICES_STATUS = 41; +pub const tagEXTERNAL_DEVICES_STATUS_DEVICES_STATUS_OPENED: tagEXTERNAL_DEVICES_STATUS = 42; +pub const tagEXTERNAL_DEVICES_STATUS_DEVICES_STATUS_CLOSED: tagEXTERNAL_DEVICES_STATUS = 43; +pub const tagEXTERNAL_DEVICES_STATUS_DEVICES_STATUS_NOSIGNAL: tagEXTERNAL_DEVICES_STATUS = 44; +pub const tagEXTERNAL_DEVICES_STATUS_DEVICES_STATUS_LOCK: tagEXTERNAL_DEVICES_STATUS = 45; +pub const tagEXTERNAL_DEVICES_STATUS_PP_STATUS_OFFLINE: tagEXTERNAL_DEVICES_STATUS = 61; +pub const tagEXTERNAL_DEVICES_STATUS_PP_STATUS_PRINT_HEADER_UP: tagEXTERNAL_DEVICES_STATUS = 62; +pub const tagEXTERNAL_DEVICES_STATUS_PP_STATUS_FEED_BUTTON_FEEDING: tagEXTERNAL_DEVICES_STATUS = 63; +pub const tagEXTERNAL_DEVICES_STATUS_PP_STATUS_ONLINE_WAITING: tagEXTERNAL_DEVICES_STATUS = 64; +pub const tagEXTERNAL_DEVICES_STATUS_PP_STATUS_FEED_BUTTON_ENABLE: tagEXTERNAL_DEVICES_STATUS = 65; +pub const tagEXTERNAL_DEVICES_STATUS_PP_STATUS_JAMR_PAPER_ERROR: tagEXTERNAL_DEVICES_STATUS = 66; +pub const tagEXTERNAL_DEVICES_STATUS_PP_STATUS_CUT_PAPER_ERROR: tagEXTERNAL_DEVICES_STATUS = 67; +pub const tagEXTERNAL_DEVICES_STATUS_PP_STATUS_AUTO_FEED_ERROR: tagEXTERNAL_DEVICES_STATUS = 68; +pub const tagEXTERNAL_DEVICES_STATUS_PP_STATUS_EXIT_RECOVERY_ERROR: tagEXTERNAL_DEVICES_STATUS = 69; +pub const tagEXTERNAL_DEVICES_STATUS_PP_STATUS_EXIT_AUTO_RECOVERY_ERROR: + tagEXTERNAL_DEVICES_STATUS = 70; +pub const tagEXTERNAL_DEVICES_STATUS_PP_STATUS_PULL_PAPER_ERROR: tagEXTERNAL_DEVICES_STATUS = 71; +pub const tagEXTERNAL_DEVICES_STATUS_PP_STATUS_LESS_PAPER: tagEXTERNAL_DEVICES_STATUS = 72; +pub const tagEXTERNAL_DEVICES_STATUS_PP_STATUS_NO_PAPER: tagEXTERNAL_DEVICES_STATUS = 73; +pub const tagEXTERNAL_DEVICES_STATUS_PP_STATUS_PRINT_FAIL: tagEXTERNAL_DEVICES_STATUS = 74; +pub const tagEXTERNAL_DEVICES_STATUS_PP_STATUS_PRINTING: tagEXTERNAL_DEVICES_STATUS = 75; +pub type tagEXTERNAL_DEVICES_STATUS = ::std::os::raw::c_uint; +pub use self::tagEXTERNAL_DEVICES_STATUS as EXTERNAL_DEVICES_STATUS; +pub const tagEXTERNAL_DEVICESCTRL_TYPE_DEVICES_CTRL_RES: tagEXTERNAL_DEVICESCTRL_TYPE = 0; +pub const tagEXTERNAL_DEVICESCTRL_TYPE_DEVICES_CTRL_REMOTE: tagEXTERNAL_DEVICESCTRL_TYPE = 1; +pub type tagEXTERNAL_DEVICESCTRL_TYPE = ::std::os::raw::c_uint; +pub use self::tagEXTERNAL_DEVICESCTRL_TYPE as EXTERNAL_DEVICESCTRL_TYPE; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_GATE_ALARMINFO { + pub dwSize: DWORD, + pub byAlarmType: BYTE, + pub byExternalDevType: BYTE, + pub byExternalDevStatus: BYTE, + pub byExternalDevCtrlType: BYTE, + pub struAlarmTime: NET_DVR_TIME_V30, + pub uAlarmInfo: tagNET_DVR_GATE_ALARMINFO__bindgen_ty_1, + pub byRes2: [BYTE; 64usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_GATE_ALARMINFO__bindgen_ty_1 { + pub uLen: [BYTE; 128usize], + pub struVehicleInfo: tagNET_DVR_GATE_ALARMINFO__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GATE_ALARMINFO__bindgen_ty_1__bindgen_ty_1 { + pub sLicense: [::std::os::raw::c_char; 16usize], + pub byVehicleType: BYTE, + pub byRes1: [BYTE; 111usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GATE_ALARMINFO__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_GATE_ALARMINFO__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_GATE_ALARMINFO__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLicense) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_ALARMINFO__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(sLicense) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleType) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_ALARMINFO__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byVehicleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_ALARMINFO__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes1) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GATE_ALARMINFO__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_GATE_ALARMINFO__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_GATE_ALARMINFO__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_ALARMINFO__bindgen_ty_1), + "::", + stringify!(uLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVehicleInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_ALARMINFO__bindgen_ty_1), + "::", + stringify!(struVehicleInfo) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GATE_ALARMINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 212usize, + concat!("Size of: ", stringify!(tagNET_DVR_GATE_ALARMINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GATE_ALARMINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_ALARMINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_ALARMINFO), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExternalDevType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_ALARMINFO), + "::", + stringify!(byExternalDevType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExternalDevStatus) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_ALARMINFO), + "::", + stringify!(byExternalDevStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExternalDevCtrlType) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_ALARMINFO), + "::", + stringify!(byExternalDevCtrlType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_ALARMINFO), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uAlarmInfo) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_ALARMINFO), + "::", + stringify!(uAlarmInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_ALARMINFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_GATE_ALARMINFO = tagNET_DVR_GATE_ALARMINFO; +pub type LPNET_DVR_GATE_ALARMINFO = *mut tagNET_DVR_GATE_ALARMINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMWIRELESSINFO { + pub byDeviceID: [BYTE; 32usize], + pub fDataTraffic: f32, + pub bySignalIntensity: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMWIRELESSINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 164usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMWIRELESSINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMWIRELESSINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMWIRELESSINFO), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fDataTraffic) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMWIRELESSINFO), + "::", + stringify!(fDataTraffic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySignalIntensity) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMWIRELESSINFO), + "::", + stringify!(bySignalIntensity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMWIRELESSINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMWIRELESSINFO = tagNET_DVR_ALARMWIRELESSINFO; +pub type LPNET_DVR_ALARMWIRELESSINFO = *mut tagNET_DVR_ALARMWIRELESSINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VOLTAGE { + pub iPhaseAVol: ::std::os::raw::c_int, + pub iPhaseBVol: ::std::os::raw::c_int, + pub iPhaseCVol: ::std::os::raw::c_int, + pub iAveragePhaseVol: ::std::os::raw::c_int, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VOLTAGE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_VOLTAGE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VOLTAGE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPhaseAVol) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOLTAGE), + "::", + stringify!(iPhaseAVol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPhaseBVol) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOLTAGE), + "::", + stringify!(iPhaseBVol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPhaseCVol) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOLTAGE), + "::", + stringify!(iPhaseCVol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iAveragePhaseVol) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOLTAGE), + "::", + stringify!(iAveragePhaseVol) + ) + ); +} +pub type NET_DVR_VOLTAGE = tagNET_DVR_VOLTAGE; +pub type LPNET_DVR_VOLTAGE = *mut tagNET_DVR_VOLTAGE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _tagNET_DVR_LINE_VOLTAGE { + pub iLineVolAB: ::std::os::raw::c_int, + pub iLineVolBC: ::std::os::raw::c_int, + pub iLineVolCA: ::std::os::raw::c_int, + pub iAverageLineVol: ::std::os::raw::c_int, +} +#[test] +fn bindgen_test_layout__tagNET_DVR_LINE_VOLTAGE() { + const UNINIT: ::std::mem::MaybeUninit<_tagNET_DVR_LINE_VOLTAGE> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_tagNET_DVR_LINE_VOLTAGE>(), + 16usize, + concat!("Size of: ", stringify!(_tagNET_DVR_LINE_VOLTAGE)) + ); + assert_eq!( + ::std::mem::align_of::<_tagNET_DVR_LINE_VOLTAGE>(), + 4usize, + concat!("Alignment of ", stringify!(_tagNET_DVR_LINE_VOLTAGE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iLineVolAB) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_LINE_VOLTAGE), + "::", + stringify!(iLineVolAB) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iLineVolBC) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_LINE_VOLTAGE), + "::", + stringify!(iLineVolBC) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iLineVolCA) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_LINE_VOLTAGE), + "::", + stringify!(iLineVolCA) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iAverageLineVol) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_LINE_VOLTAGE), + "::", + stringify!(iAverageLineVol) + ) + ); +} +pub type NET_DVR_LINE_VOLTAGE = _tagNET_DVR_LINE_VOLTAGE; +pub type LPNET_DVR_LINE_VOLTAGE = *mut _tagNET_DVR_LINE_VOLTAGE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CURRENT { + pub iPhaseACurrent: ::std::os::raw::c_int, + pub iPhaseBCurrent: ::std::os::raw::c_int, + pub iPhaseCCurrent: ::std::os::raw::c_int, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CURRENT() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_CURRENT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CURRENT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPhaseACurrent) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CURRENT), + "::", + stringify!(iPhaseACurrent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPhaseBCurrent) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CURRENT), + "::", + stringify!(iPhaseBCurrent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPhaseCCurrent) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CURRENT), + "::", + stringify!(iPhaseCCurrent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CURRENT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CURRENT = tagNET_DVR_CURRENT; +pub type LPNET_DVR_CURRENT = *mut tagNET_DVR_CURRENT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_POWER { + pub iPhaseAPower: ::std::os::raw::c_int, + pub iPhaseBPower: ::std::os::raw::c_int, + pub iPhaseCPower: ::std::os::raw::c_int, + pub iSysTotalPower: ::std::os::raw::c_int, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_POWER() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_POWER)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_POWER)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPhaseAPower) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POWER), + "::", + stringify!(iPhaseAPower) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPhaseBPower) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POWER), + "::", + stringify!(iPhaseBPower) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPhaseCPower) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POWER), + "::", + stringify!(iPhaseCPower) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iSysTotalPower) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POWER), + "::", + stringify!(iSysTotalPower) + ) + ); +} +pub type NET_DVR_POWER = tagNET_DVR_POWER; +pub type LPNET_DVR_POWER = *mut tagNET_DVR_POWER; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_POWER_FACTOR { + pub iPhaseAPowerFactor: ::std::os::raw::c_int, + pub iPhaseBPowerFactor: ::std::os::raw::c_int, + pub iPhaseCPowerFactor: ::std::os::raw::c_int, + pub iTotalPowerFactor: ::std::os::raw::c_int, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_POWER_FACTOR() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_POWER_FACTOR)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_POWER_FACTOR)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPhaseAPowerFactor) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POWER_FACTOR), + "::", + stringify!(iPhaseAPowerFactor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPhaseBPowerFactor) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POWER_FACTOR), + "::", + stringify!(iPhaseBPowerFactor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPhaseCPowerFactor) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POWER_FACTOR), + "::", + stringify!(iPhaseCPowerFactor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTotalPowerFactor) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POWER_FACTOR), + "::", + stringify!(iTotalPowerFactor) + ) + ); +} +pub type NET_DVR_POWER_FACTOR = tagNET_DVR_POWER_FACTOR; +pub type LPNET_DVR_POWER_FACTOR = *mut tagNET_DVR_POWER_FACTOR; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FREQUENCY { + pub iPhaseAFrequency: ::std::os::raw::c_int, + pub iPhaseBFrequency: ::std::os::raw::c_int, + pub iPhaseCFrequency: ::std::os::raw::c_int, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FREQUENCY() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_FREQUENCY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FREQUENCY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPhaseAFrequency) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FREQUENCY), + "::", + stringify!(iPhaseAFrequency) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPhaseBFrequency) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FREQUENCY), + "::", + stringify!(iPhaseBFrequency) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPhaseCFrequency) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FREQUENCY), + "::", + stringify!(iPhaseCFrequency) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FREQUENCY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FREQUENCY = tagNET_DVR_FREQUENCY; +pub type LPNET_DVR_FREQUENCY = *mut tagNET_DVR_FREQUENCY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOAD_FACTOR { + pub iPhaseALoadFactor: ::std::os::raw::c_int, + pub iPhaseBLoadFactor: ::std::os::raw::c_int, + pub iPhaseCLoadFactor: ::std::os::raw::c_int, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOAD_FACTOR() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOAD_FACTOR)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOAD_FACTOR)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPhaseALoadFactor) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOAD_FACTOR), + "::", + stringify!(iPhaseALoadFactor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPhaseBLoadFactor) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOAD_FACTOR), + "::", + stringify!(iPhaseBLoadFactor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPhaseCLoadFactor) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOAD_FACTOR), + "::", + stringify!(iPhaseCLoadFactor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOAD_FACTOR), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOAD_FACTOR = tagNET_DVR_LOAD_FACTOR; +pub type LPNET_DVR_LOAD_FACTOR = *mut tagNET_DVR_LOAD_FACTOR; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_UPS_STATE { + pub struInputVoltage: NET_DVR_VOLTAGE, + pub struBypassVoltage: NET_DVR_VOLTAGE, + pub struOutputVoltage: NET_DVR_VOLTAGE, + pub iRectifierVol: ::std::os::raw::c_int, + pub iInverterVol: ::std::os::raw::c_int, + pub struInputCurrent: NET_DVR_CURRENT, + pub struBypassCurrent: NET_DVR_CURRENT, + pub struOutputCurrent: NET_DVR_CURRENT, + pub iInverterCurrent: ::std::os::raw::c_int, + pub struInputFrequency: NET_DVR_FREQUENCY, + pub struBypassFrequency: NET_DVR_FREQUENCY, + pub struOutputFrequency: NET_DVR_FREQUENCY, + pub iInverterFre: ::std::os::raw::c_int, + pub struInputPower: NET_DVR_POWER, + pub struBypassPower: NET_DVR_POWER, + pub struOutputPower: NET_DVR_POWER, + pub struComplexPower: NET_DVR_POWER, + pub iNormalPower: ::std::os::raw::c_int, + pub iPowerFacter: ::std::os::raw::c_int, + pub struBatteryLoadFactor: NET_DVR_LOAD_FACTOR, + pub iBatteryEstimated: ::std::os::raw::c_int, + pub iBatteryTemperature: ::std::os::raw::c_int, + pub iBatteryVoltage: ::std::os::raw::c_int, + pub byRectifierState: BYTE, + pub byInverterState: BYTE, + pub byChargeState: BYTE, + pub byBatteryState: BYTE, + pub byAutoBypassState: BYTE, + pub byRes2: [BYTE; 247usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_UPS_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMHOST_UPS_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMHOST_UPS_STATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInputVoltage) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(struInputVoltage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBypassVoltage) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(struBypassVoltage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOutputVoltage) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(struOutputVoltage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iRectifierVol) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(iRectifierVol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iInverterVol) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(iInverterVol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInputCurrent) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(struInputCurrent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBypassCurrent) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(struBypassCurrent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOutputCurrent) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(struOutputCurrent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iInverterCurrent) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(iInverterCurrent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInputFrequency) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(struInputFrequency) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBypassFrequency) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(struBypassFrequency) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOutputFrequency) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(struOutputFrequency) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iInverterFre) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(iInverterFre) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInputPower) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(struInputPower) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBypassPower) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(struBypassPower) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOutputPower) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(struOutputPower) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struComplexPower) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(struComplexPower) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iNormalPower) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(iNormalPower) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPowerFacter) as usize - ptr as usize }, + 228usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(iPowerFacter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBatteryLoadFactor) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(struBatteryLoadFactor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iBatteryEstimated) as usize - ptr as usize }, + 248usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(iBatteryEstimated) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iBatteryTemperature) as usize - ptr as usize }, + 252usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(iBatteryTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iBatteryVoltage) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(iBatteryVoltage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRectifierState) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(byRectifierState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInverterState) as usize - ptr as usize }, + 261usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(byInverterState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChargeState) as usize - ptr as usize }, + 262usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(byChargeState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBatteryState) as usize - ptr as usize }, + 263usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(byBatteryState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAutoBypassState) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(byAutoBypassState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 265usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_STATE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ALARMHOST_UPS_STATE = tagNET_DVR_ALARMHOST_UPS_STATE; +pub type LPNET_DVR_ALARMHOST_UPS_STATE = *mut tagNET_DVR_ALARMHOST_UPS_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_SWITCH_POWER_STATE { + pub struACVoltage: NET_DVR_VOLTAGE, + pub iDCConvertVoltage: ::std::os::raw::c_int, + pub struACCurrent: NET_DVR_CURRENT, + pub iTotalCurrent: ::std::os::raw::c_int, + pub iBattery1Temperature: ::std::os::raw::c_int, + pub iBattery2Temperature: ::std::os::raw::c_int, + pub iBattery1Current: ::std::os::raw::c_int, + pub iBattery2Current: ::std::os::raw::c_int, + pub iBattery3Current: ::std::os::raw::c_int, + pub iBattery4Current: ::std::os::raw::c_int, + pub iBatteryTestVoltage: ::std::os::raw::c_int, + pub iRectifierOutputVoltage: ::std::os::raw::c_int, + pub iRectifierOutputCurrent: ::std::os::raw::c_int, + pub iDCOutputVoltage: ::std::os::raw::c_int, + pub byRes: [BYTE; 432usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_SWITCH_POWER_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_SWITCH_POWER_STATE) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_SWITCH_POWER_STATE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struACVoltage) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SWITCH_POWER_STATE), + "::", + stringify!(struACVoltage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iDCConvertVoltage) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SWITCH_POWER_STATE), + "::", + stringify!(iDCConvertVoltage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struACCurrent) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SWITCH_POWER_STATE), + "::", + stringify!(struACCurrent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTotalCurrent) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SWITCH_POWER_STATE), + "::", + stringify!(iTotalCurrent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iBattery1Temperature) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SWITCH_POWER_STATE), + "::", + stringify!(iBattery1Temperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iBattery2Temperature) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SWITCH_POWER_STATE), + "::", + stringify!(iBattery2Temperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iBattery1Current) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SWITCH_POWER_STATE), + "::", + stringify!(iBattery1Current) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iBattery2Current) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SWITCH_POWER_STATE), + "::", + stringify!(iBattery2Current) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iBattery3Current) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SWITCH_POWER_STATE), + "::", + stringify!(iBattery3Current) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iBattery4Current) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SWITCH_POWER_STATE), + "::", + stringify!(iBattery4Current) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iBatteryTestVoltage) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SWITCH_POWER_STATE), + "::", + stringify!(iBatteryTestVoltage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iRectifierOutputVoltage) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SWITCH_POWER_STATE), + "::", + stringify!(iRectifierOutputVoltage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iRectifierOutputCurrent) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SWITCH_POWER_STATE), + "::", + stringify!(iRectifierOutputCurrent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iDCOutputVoltage) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SWITCH_POWER_STATE), + "::", + stringify!(iDCOutputVoltage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SWITCH_POWER_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_STATE = tagNET_DVR_ALARMHOST_SWITCH_POWER_STATE; +pub type LPNET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_STATE = + *mut tagNET_DVR_ALARMHOST_SWITCH_POWER_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_GAS_DETECTOR_STATE { + pub iSF6: ::std::os::raw::c_int, + pub iFlow: ::std::os::raw::c_int, + pub iTemperature: ::std::os::raw::c_int, + pub iO2: ::std::os::raw::c_int, + pub iHumidity: ::std::os::raw::c_int, + pub byRes: [BYTE; 492usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_GAS_DETECTOR_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_GAS_DETECTOR_STATE) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_GAS_DETECTOR_STATE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iSF6) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_GAS_DETECTOR_STATE), + "::", + stringify!(iSF6) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iFlow) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_GAS_DETECTOR_STATE), + "::", + stringify!(iFlow) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTemperature) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_GAS_DETECTOR_STATE), + "::", + stringify!(iTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iO2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_GAS_DETECTOR_STATE), + "::", + stringify!(iO2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iHumidity) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_GAS_DETECTOR_STATE), + "::", + stringify!(iHumidity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_GAS_DETECTOR_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_GAS_DETECTOR_STATE = tagNET_DVR_ALARMHOST_GAS_DETECTOR_STATE; +pub type LPNET_DVR_ALARMHOST_GAS_DETECTOR_STATE = *mut tagNET_DVR_ALARMHOST_GAS_DETECTOR_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_TEMP_HUMI_SENSOR_STATE { + pub iTemperature: ::std::os::raw::c_int, + pub iHumidity: ::std::os::raw::c_int, + pub byRes: [BYTE; 504usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_TEMP_HUMI_SENSOR_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_TEMP_HUMI_SENSOR_STATE) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_TEMP_HUMI_SENSOR_STATE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTemperature) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_TEMP_HUMI_SENSOR_STATE), + "::", + stringify!(iTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iHumidity) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_TEMP_HUMI_SENSOR_STATE), + "::", + stringify!(iHumidity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_TEMP_HUMI_SENSOR_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_TEMP_HUMI_SENSOR_STATE = tagNET_DVR_ALARMHOST_TEMP_HUMI_SENSOR_STATE; +pub type LPNET_DVR_ALARMHOST_TEMP_HUMI_SENSOR_STATE = + *mut tagNET_DVR_ALARMHOST_TEMP_HUMI_SENSOR_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_AIRCONDITION_STATE { + pub iTemperature: ::std::os::raw::c_int, + pub iHumidity: ::std::os::raw::c_int, + pub byRunState: BYTE, + pub byRes: [BYTE; 503usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_AIRCONDITION_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_AIRCONDITION_STATE) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_AIRCONDITION_STATE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTemperature) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_AIRCONDITION_STATE), + "::", + stringify!(iTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iHumidity) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_AIRCONDITION_STATE), + "::", + stringify!(iHumidity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRunState) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_AIRCONDITION_STATE), + "::", + stringify!(byRunState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_AIRCONDITION_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_AIRCONDITION_STATE = tagNET_DVR_ALARMHOST_AIRCONDITION_STATE; +pub type LPNET_DVR_ALARMHOST_AIRCONDITION_STATE = *mut tagNET_DVR_ALARMHOST_AIRCONDITION_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_ELECTRICITY_STATE { + pub iDCVoltage: ::std::os::raw::c_int, + pub iDCCurrent: ::std::os::raw::c_int, + pub struPhaseVoltage: NET_DVR_VOLTAGE, + pub struLineVoltage: NET_DVR_LINE_VOLTAGE, + pub struCurrent: [NET_DVR_CURRENT; 4usize], + pub iAverageCurrent: ::std::os::raw::c_int, + pub iNeutralCurrent: ::std::os::raw::c_int, + pub struActivePower: [NET_DVR_POWER; 4usize], + pub struReactivePower: [NET_DVR_POWER; 4usize], + pub struApparentPower: [NET_DVR_POWER; 4usize], + pub struPowerFactor: [NET_DVR_POWER_FACTOR; 4usize], + pub struFrequency: NET_DVR_FREQUENCY, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_ELECTRICITY_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_ELECTRICITY_STATE) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_ELECTRICITY_STATE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iDCVoltage) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ELECTRICITY_STATE), + "::", + stringify!(iDCVoltage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iDCCurrent) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ELECTRICITY_STATE), + "::", + stringify!(iDCCurrent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPhaseVoltage) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ELECTRICITY_STATE), + "::", + stringify!(struPhaseVoltage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLineVoltage) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ELECTRICITY_STATE), + "::", + stringify!(struLineVoltage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCurrent) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ELECTRICITY_STATE), + "::", + stringify!(struCurrent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iAverageCurrent) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ELECTRICITY_STATE), + "::", + stringify!(iAverageCurrent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iNeutralCurrent) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ELECTRICITY_STATE), + "::", + stringify!(iNeutralCurrent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struActivePower) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ELECTRICITY_STATE), + "::", + stringify!(struActivePower) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struReactivePower) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ELECTRICITY_STATE), + "::", + stringify!(struReactivePower) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struApparentPower) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ELECTRICITY_STATE), + "::", + stringify!(struApparentPower) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPowerFactor) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ELECTRICITY_STATE), + "::", + stringify!(struPowerFactor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFrequency) as usize - ptr as usize }, + 368usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ELECTRICITY_STATE), + "::", + stringify!(struFrequency) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 384usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ELECTRICITY_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_ELECTRICITY_STATE = tagNET_DVR_ALARMHOST_ELECTRICITY_STATE; +pub type LPNET_DVR_ALARMHOST_ELECTRICITY_STATE = *mut tagNET_DVR_ALARMHOST_ELECTRICITY_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_TRANSFORMER_TEMP_STATE { + pub iPhaseATemperature: ::std::os::raw::c_int, + pub iPhaseBTemperature: ::std::os::raw::c_int, + pub iPhaseCTemperature: ::std::os::raw::c_int, + pub iPhaseDTemperature: ::std::os::raw::c_int, + pub byRes: [BYTE; 496usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_TRANSFORMER_TEMP_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_TRANSFORMER_TEMP_STATE) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_TRANSFORMER_TEMP_STATE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPhaseATemperature) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_TRANSFORMER_TEMP_STATE), + "::", + stringify!(iPhaseATemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPhaseBTemperature) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_TRANSFORMER_TEMP_STATE), + "::", + stringify!(iPhaseBTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPhaseCTemperature) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_TRANSFORMER_TEMP_STATE), + "::", + stringify!(iPhaseCTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPhaseDTemperature) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_TRANSFORMER_TEMP_STATE), + "::", + stringify!(iPhaseDTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_TRANSFORMER_TEMP_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_TRANSFORMER_TEMP_STATE = tagNET_DVR_ALARMHOST_TRANSFORMER_TEMP_STATE; +pub type LPNET_DVR_ALARMHOST_TRANSFORMER_TEMP_STATE = + *mut tagNET_DVR_ALARMHOST_TRANSFORMER_TEMP_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_WATERLEVEL_SENSOR { + pub iWaterLevel: LONG, + pub byRes: [BYTE; 508usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_WATERLEVEL_SENSOR() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_WATERLEVEL_SENSOR) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_WATERLEVEL_SENSOR) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iWaterLevel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_WATERLEVEL_SENSOR), + "::", + stringify!(iWaterLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_WATERLEVEL_SENSOR), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_WATERLEVEL_SENSOR = tagNET_DVR_ALARMHOST_WATERLEVEL_SENSOR; +pub type LPNET_DVR_ALARMHOST_WATERLEVEL_SENSOR = *mut tagNET_DVR_ALARMHOST_WATERLEVEL_SENSOR; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_DUSTNOISE_SENSOR { + pub iDust: LONG, + pub iNoise: LONG, + pub iPM25: LONG, + pub byRes: [BYTE; 500usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_DUSTNOISE_SENSOR() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_DUSTNOISE_SENSOR) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_DUSTNOISE_SENSOR) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iDust) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_DUSTNOISE_SENSOR), + "::", + stringify!(iDust) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iNoise) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_DUSTNOISE_SENSOR), + "::", + stringify!(iNoise) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPM25) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_DUSTNOISE_SENSOR), + "::", + stringify!(iPM25) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_DUSTNOISE_SENSOR), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_DUSTNOISE_SENSOR = tagNET_DVR_ALARMHOST_DUSTNOISE_SENSOR; +pub type LPNET_DVR_ALARMHOST_DUSTNOISE_SENSOR = *mut tagNET_DVR_ALARMHOST_DUSTNOISE_SENSOR; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER { + pub iAmmoniaNitrogen: LONG, + pub iCOD: LONG, + pub iPH: LONG, + pub iOxygen: LONG, + pub iSulfurDioxide: LONG, + pub iSoot: LONG, + pub iFluoride: LONG, + pub iPollutedWater: LONG, + pub iTotalPhosphorus: LONG, + pub iExhaust: LONG, + pub iNitrogenOxides: LONG, + pub iFlueGasTemperature: LONG, + pub iFlueGasPressure: LONG, + pub iDustThickness: LONG, + pub iAirCleanLevel: LONG, + pub iPm10Thickness: LONG, + pub byRes: [BYTE; 448usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iAmmoniaNitrogen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER), + "::", + stringify!(iAmmoniaNitrogen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iCOD) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER), + "::", + stringify!(iCOD) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPH) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER), + "::", + stringify!(iPH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iOxygen) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER), + "::", + stringify!(iOxygen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iSulfurDioxide) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER), + "::", + stringify!(iSulfurDioxide) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iSoot) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER), + "::", + stringify!(iSoot) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iFluoride) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER), + "::", + stringify!(iFluoride) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPollutedWater) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER), + "::", + stringify!(iPollutedWater) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTotalPhosphorus) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER), + "::", + stringify!(iTotalPhosphorus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iExhaust) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER), + "::", + stringify!(iExhaust) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iNitrogenOxides) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER), + "::", + stringify!(iNitrogenOxides) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iFlueGasTemperature) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER), + "::", + stringify!(iFlueGasTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iFlueGasPressure) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER), + "::", + stringify!(iFlueGasPressure) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iDustThickness) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER), + "::", + stringify!(iDustThickness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iAirCleanLevel) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER), + "::", + stringify!(iAirCleanLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPm10Thickness) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER), + "::", + stringify!(iPm10Thickness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER = tagNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER; +pub type LPNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER = *mut tagNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_WIND_SPEED_STATE { + pub iWindSpeed: ::std::os::raw::c_int, + pub byRes: [BYTE; 508usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_WIND_SPEED_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(NET_DVR_WIND_SPEED_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_WIND_SPEED_STATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iWindSpeed) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WIND_SPEED_STATE), + "::", + stringify!(iWindSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WIND_SPEED_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_WIND_SPEED_STATE = *mut NET_DVR_WIND_SPEED_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_GENERATE_OUTPUT_STATE { + pub byOutPutState1: BYTE, + pub byOutPutState2: BYTE, + pub byOutPutState3: BYTE, + pub byOutPutState4: BYTE, + pub byOutPutState5: BYTE, + pub byOutPutState6: BYTE, + pub Res: [BYTE; 506usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_GENERATE_OUTPUT_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(NET_DVR_GENERATE_OUTPUT_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_GENERATE_OUTPUT_STATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutPutState1) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERATE_OUTPUT_STATE), + "::", + stringify!(byOutPutState1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutPutState2) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERATE_OUTPUT_STATE), + "::", + stringify!(byOutPutState2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutPutState3) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERATE_OUTPUT_STATE), + "::", + stringify!(byOutPutState3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutPutState4) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERATE_OUTPUT_STATE), + "::", + stringify!(byOutPutState4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutPutState5) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERATE_OUTPUT_STATE), + "::", + stringify!(byOutPutState5) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutPutState6) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERATE_OUTPUT_STATE), + "::", + stringify!(byOutPutState6) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Res) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERATE_OUTPUT_STATE), + "::", + stringify!(Res) + ) + ); +} +pub type LPNET_DVR_GENERATE_OUTPUT_STATE = *mut NET_DVR_GENERATE_OUTPUT_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_SOAK_STATE { + pub iWaterLogVal: ::std::os::raw::c_int, + pub iLeakResist1: ::std::os::raw::c_int, + pub iTotolResist1: ::std::os::raw::c_int, + pub iLeakResist2: ::std::os::raw::c_int, + pub iTotolResist2: ::std::os::raw::c_int, + pub byWaterLogAlarm: BYTE, + pub byLeakAlarm1: BYTE, + pub byFaultAlarm1: BYTE, + pub byLeakAlarm2: BYTE, + pub byFaultAlarm2: BYTE, + pub byRes: [BYTE; 487usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_SOAK_STATE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(NET_DVR_SOAK_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_SOAK_STATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iWaterLogVal) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOAK_STATE), + "::", + stringify!(iWaterLogVal) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iLeakResist1) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOAK_STATE), + "::", + stringify!(iLeakResist1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTotolResist1) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOAK_STATE), + "::", + stringify!(iTotolResist1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iLeakResist2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOAK_STATE), + "::", + stringify!(iLeakResist2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTotolResist2) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOAK_STATE), + "::", + stringify!(iTotolResist2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWaterLogAlarm) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOAK_STATE), + "::", + stringify!(byWaterLogAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLeakAlarm1) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOAK_STATE), + "::", + stringify!(byLeakAlarm1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaultAlarm1) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOAK_STATE), + "::", + stringify!(byFaultAlarm1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLeakAlarm2) as usize - ptr as usize }, + 23usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOAK_STATE), + "::", + stringify!(byLeakAlarm2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaultAlarm2) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOAK_STATE), + "::", + stringify!(byFaultAlarm2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOAK_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_SOAK_STATE = *mut NET_DVR_SOAK_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_SOLAR_POWER_STATE { + pub iChangerVolInput: ::std::os::raw::c_int, + pub iChangerCurInput: ::std::os::raw::c_int, + pub iChangerPwInput: ::std::os::raw::c_int, + pub iChangerVolOutput: ::std::os::raw::c_int, + pub iChangerCurOutput: ::std::os::raw::c_int, + pub iChangerPwOutput: ::std::os::raw::c_int, + pub iDischangerVolOutput: ::std::os::raw::c_int, + pub iDischangerCurOutput: ::std::os::raw::c_int, + pub iDischangerPwOutput: ::std::os::raw::c_int, + pub iDevTemperatrue: ::std::os::raw::c_int, + pub byBatteryVolState: BYTE, + pub byBatteryTmpState: BYTE, + pub byChangerVolInputState: BYTE, + pub byChangerRunState: BYTE, + pub byChangerChgState: BYTE, + pub byBatteryVolFlt: BYTE, + pub byBatteryTmpFlt: BYTE, + pub byBatteryResistanceFlt: BYTE, + pub byVolRcgFlt: BYTE, + pub byChangerVolInputFlt: BYTE, + pub byChangerMosShort: BYTE, + pub byChangerAntiOrMosShort: BYTE, + pub byChangerAntiShort: BYTE, + pub byInputOverCur: BYTE, + pub byLoadOverCur: BYTE, + pub byLoadShort: BYTE, + pub byLoadMosShort: BYTE, + pub byChangerFlt: BYTE, + pub byRes: [BYTE; 454usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_SOLAR_POWER_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(NET_DVR_SOLAR_POWER_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_SOLAR_POWER_STATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iChangerVolInput) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(iChangerVolInput) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iChangerCurInput) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(iChangerCurInput) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iChangerPwInput) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(iChangerPwInput) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iChangerVolOutput) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(iChangerVolOutput) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iChangerCurOutput) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(iChangerCurOutput) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iChangerPwOutput) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(iChangerPwOutput) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iDischangerVolOutput) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(iDischangerVolOutput) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iDischangerCurOutput) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(iDischangerCurOutput) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iDischangerPwOutput) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(iDischangerPwOutput) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iDevTemperatrue) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(iDevTemperatrue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBatteryVolState) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(byBatteryVolState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBatteryTmpState) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(byBatteryTmpState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChangerVolInputState) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(byChangerVolInputState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChangerRunState) as usize - ptr as usize }, + 43usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(byChangerRunState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChangerChgState) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(byChangerChgState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBatteryVolFlt) as usize - ptr as usize }, + 45usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(byBatteryVolFlt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBatteryTmpFlt) as usize - ptr as usize }, + 46usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(byBatteryTmpFlt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBatteryResistanceFlt) as usize - ptr as usize }, + 47usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(byBatteryResistanceFlt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVolRcgFlt) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(byVolRcgFlt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChangerVolInputFlt) as usize - ptr as usize }, + 49usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(byChangerVolInputFlt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChangerMosShort) as usize - ptr as usize }, + 50usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(byChangerMosShort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChangerAntiOrMosShort) as usize - ptr as usize }, + 51usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(byChangerAntiOrMosShort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChangerAntiShort) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(byChangerAntiShort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInputOverCur) as usize - ptr as usize }, + 53usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(byInputOverCur) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLoadOverCur) as usize - ptr as usize }, + 54usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(byLoadOverCur) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLoadShort) as usize - ptr as usize }, + 55usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(byLoadShort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLoadMosShort) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(byLoadMosShort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChangerFlt) as usize - ptr as usize }, + 57usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(byChangerFlt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 58usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SOLAR_POWER_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_SOLAR_POWER_STATE = *mut NET_DVR_SOLAR_POWER_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_SF6_ALARMHOST_STATE { + pub iSf6Thick1: ::std::os::raw::c_int, + pub iO2Thick1: ::std::os::raw::c_int, + pub iTemprature1: ::std::os::raw::c_int, + pub iHumidity1: ::std::os::raw::c_int, + pub iSf6Thick2: ::std::os::raw::c_int, + pub iO2Thick2: ::std::os::raw::c_int, + pub iTemprature2: ::std::os::raw::c_int, + pub iHumidity2: ::std::os::raw::c_int, + pub iSf6Thick3: ::std::os::raw::c_int, + pub iO2Thick3: ::std::os::raw::c_int, + pub iTemprature3: ::std::os::raw::c_int, + pub iHumidity3: ::std::os::raw::c_int, + pub iSf6Thick4: ::std::os::raw::c_int, + pub iO2Thick4: ::std::os::raw::c_int, + pub iTemprature4: ::std::os::raw::c_int, + pub iHumidity4: ::std::os::raw::c_int, + pub iSf6Thick5: ::std::os::raw::c_int, + pub iO2Thick5: ::std::os::raw::c_int, + pub iTemprature5: ::std::os::raw::c_int, + pub iHumidity5: ::std::os::raw::c_int, + pub iSf6Thick6: ::std::os::raw::c_int, + pub iO2Thick6: ::std::os::raw::c_int, + pub iTemprature6: ::std::os::raw::c_int, + pub iHumidity6: ::std::os::raw::c_int, + pub iSf6Thick7: ::std::os::raw::c_int, + pub iO2Thick7: ::std::os::raw::c_int, + pub iTemprature7: ::std::os::raw::c_int, + pub iHumidity7: ::std::os::raw::c_int, + pub iSf6Thick8: ::std::os::raw::c_int, + pub iO2Thick8: ::std::os::raw::c_int, + pub iTemprature8: ::std::os::raw::c_int, + pub iHumidity8: ::std::os::raw::c_int, + pub iSf6Thick9: ::std::os::raw::c_int, + pub iO2Thick9: ::std::os::raw::c_int, + pub iTemprature9: ::std::os::raw::c_int, + pub iHumidity9: ::std::os::raw::c_int, + pub iSf6Thick10: ::std::os::raw::c_int, + pub iO2Thick10: ::std::os::raw::c_int, + pub iTemprature10: ::std::os::raw::c_int, + pub iHumidity10: ::std::os::raw::c_int, + pub iSf6Thick11: ::std::os::raw::c_int, + pub iO2Thick11: ::std::os::raw::c_int, + pub iTemprature11: ::std::os::raw::c_int, + pub iHumidity11: ::std::os::raw::c_int, + pub iSf6Thick12: ::std::os::raw::c_int, + pub iO2Thick12: ::std::os::raw::c_int, + pub iTemprature12: ::std::os::raw::c_int, + pub iHumidity12: ::std::os::raw::c_int, + pub byFanState1: BYTE, + pub byFanState2: BYTE, + pub byFanState3: BYTE, + pub byFanState4: BYTE, + pub byFanState5: BYTE, + pub byFanState6: BYTE, + pub byFanState7: BYTE, + pub byFanState8: BYTE, + pub byFanState9: BYTE, + pub byFanState10: BYTE, + pub byFanState11: BYTE, + pub byFanState12: BYTE, + pub byRes: [BYTE; 308usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_SF6_ALARMHOST_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(NET_DVR_SF6_ALARMHOST_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_SF6_ALARMHOST_STATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iSf6Thick1) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iSf6Thick1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iO2Thick1) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iO2Thick1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTemprature1) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iTemprature1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iHumidity1) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iHumidity1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iSf6Thick2) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iSf6Thick2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iO2Thick2) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iO2Thick2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTemprature2) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iTemprature2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iHumidity2) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iHumidity2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iSf6Thick3) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iSf6Thick3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iO2Thick3) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iO2Thick3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTemprature3) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iTemprature3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iHumidity3) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iHumidity3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iSf6Thick4) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iSf6Thick4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iO2Thick4) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iO2Thick4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTemprature4) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iTemprature4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iHumidity4) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iHumidity4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iSf6Thick5) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iSf6Thick5) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iO2Thick5) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iO2Thick5) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTemprature5) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iTemprature5) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iHumidity5) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iHumidity5) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iSf6Thick6) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iSf6Thick6) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iO2Thick6) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iO2Thick6) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTemprature6) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iTemprature6) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iHumidity6) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iHumidity6) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iSf6Thick7) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iSf6Thick7) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iO2Thick7) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iO2Thick7) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTemprature7) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iTemprature7) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iHumidity7) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iHumidity7) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iSf6Thick8) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iSf6Thick8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iO2Thick8) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iO2Thick8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTemprature8) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iTemprature8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iHumidity8) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iHumidity8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iSf6Thick9) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iSf6Thick9) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iO2Thick9) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iO2Thick9) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTemprature9) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iTemprature9) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iHumidity9) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iHumidity9) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iSf6Thick10) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iSf6Thick10) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iO2Thick10) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iO2Thick10) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTemprature10) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iTemprature10) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iHumidity10) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iHumidity10) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iSf6Thick11) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iSf6Thick11) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iO2Thick11) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iO2Thick11) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTemprature11) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iTemprature11) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iHumidity11) as usize - ptr as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iHumidity11) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iSf6Thick12) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iSf6Thick12) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iO2Thick12) as usize - ptr as usize }, + 180usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iO2Thick12) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTemprature12) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iTemprature12) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iHumidity12) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(iHumidity12) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFanState1) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(byFanState1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFanState2) as usize - ptr as usize }, + 193usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(byFanState2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFanState3) as usize - ptr as usize }, + 194usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(byFanState3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFanState4) as usize - ptr as usize }, + 195usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(byFanState4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFanState5) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(byFanState5) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFanState6) as usize - ptr as usize }, + 197usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(byFanState6) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFanState7) as usize - ptr as usize }, + 198usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(byFanState7) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFanState8) as usize - ptr as usize }, + 199usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(byFanState8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFanState9) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(byFanState9) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFanState10) as usize - ptr as usize }, + 201usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(byFanState10) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFanState11) as usize - ptr as usize }, + 202usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(byFanState11) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFanState12) as usize - ptr as usize }, + 203usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(byFanState12) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SF6_ALARMHOST_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_SF6_ALARMHOST_STATE = *mut NET_DVR_SF6_ALARMHOST_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_WEIGHT_STATE { + pub iWeight: ::std::os::raw::c_int, + pub byRes: [BYTE; 508usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_WEIGHT_STATE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(NET_DVR_WEIGHT_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_WEIGHT_STATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iWeight) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WEIGHT_STATE), + "::", + stringify!(iWeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WEIGHT_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_WEIGHT_STATE = *mut NET_DVR_WEIGHT_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_WEATHER_STATION_STATE { + pub iAirTemperature: ::std::os::raw::c_int, + pub dwAirHumidity: DWORD, + pub dwWindSpeed: DWORD, + pub dwWindDirection: DWORD, + pub dwIlluminationIntensity: DWORD, + pub dwCO2: DWORD, + pub dwPM25: DWORD, + pub dwAirPressure: DWORD, + pub iSoilTemperature: ::std::os::raw::c_int, + pub dwSoilHumidity: DWORD, + pub dwRainFall: DWORD, + pub byIsRainSnow: BYTE, + pub byRes: [BYTE; 467usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_WEATHER_STATION_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(NET_DVR_WEATHER_STATION_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_WEATHER_STATION_STATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iAirTemperature) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WEATHER_STATION_STATE), + "::", + stringify!(iAirTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAirHumidity) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WEATHER_STATION_STATE), + "::", + stringify!(dwAirHumidity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWindSpeed) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WEATHER_STATION_STATE), + "::", + stringify!(dwWindSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWindDirection) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WEATHER_STATION_STATE), + "::", + stringify!(dwWindDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIlluminationIntensity) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WEATHER_STATION_STATE), + "::", + stringify!(dwIlluminationIntensity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCO2) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WEATHER_STATION_STATE), + "::", + stringify!(dwCO2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPM25) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WEATHER_STATION_STATE), + "::", + stringify!(dwPM25) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAirPressure) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WEATHER_STATION_STATE), + "::", + stringify!(dwAirPressure) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iSoilTemperature) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WEATHER_STATION_STATE), + "::", + stringify!(iSoilTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSoilHumidity) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WEATHER_STATION_STATE), + "::", + stringify!(dwSoilHumidity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRainFall) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WEATHER_STATION_STATE), + "::", + stringify!(dwRainFall) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsRainSnow) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WEATHER_STATION_STATE), + "::", + stringify!(byIsRainSnow) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 45usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WEATHER_STATION_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_WEATHER_STATION_STATE = *mut NET_DVR_WEATHER_STATION_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_WATER_QLT_STATE { + pub dwTurbidity: DWORD, + pub dwChlorine: DWORD, + pub dwPH: DWORD, + pub byRes: [BYTE; 500usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_WATER_QLT_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(NET_DVR_WATER_QLT_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_WATER_QLT_STATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTurbidity) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WATER_QLT_STATE), + "::", + stringify!(dwTurbidity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChlorine) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WATER_QLT_STATE), + "::", + stringify!(dwChlorine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPH) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WATER_QLT_STATE), + "::", + stringify!(dwPH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_WATER_QLT_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_WATER_QLT_STATE = *mut NET_DVR_WATER_QLT_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_FUEL_GAS_DETE_STATE { + pub iNatrualGasThick: ::std::os::raw::c_int, + pub byRes: [BYTE; 508usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_FUEL_GAS_DETE_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(NET_DVR_FUEL_GAS_DETE_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_FUEL_GAS_DETE_STATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iNatrualGasThick) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FUEL_GAS_DETE_STATE), + "::", + stringify!(iNatrualGasThick) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FUEL_GAS_DETE_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_FUEL_GAS_DETE_STATE = *mut NET_DVR_FUEL_GAS_DETE_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FIRE_ALARM_STATUS { + pub byFireAlarm: [[BYTE; 32usize]; 12usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FIRE_ALARM_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(tagNET_DVR_FIRE_ALARM_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FIRE_ALARM_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFireAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIRE_ALARM_STATUS), + "::", + stringify!(byFireAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 384usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIRE_ALARM_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FIRE_ALARM_STATUS = tagNET_DVR_FIRE_ALARM_STATUS; +pub type LPNET_DVR_FIRE_ALARM_STATUS = *mut tagNET_DVR_FIRE_ALARM_STATUS; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION { + pub struUpsState: NET_DVR_ALARMHOST_UPS_STATE, + pub struSwitchPowerState: NET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_STATE, + pub struGasDetectorState: NET_DVR_ALARMHOST_GAS_DETECTOR_STATE, + pub struTempHumiSensorState: NET_DVR_ALARMHOST_TEMP_HUMI_SENSOR_STATE, + pub struAirConditionState: NET_DVR_ALARMHOST_AIRCONDITION_STATE, + pub struElectricityState: NET_DVR_ALARMHOST_ELECTRICITY_STATE, + pub struTransformerTempState: NET_DVR_ALARMHOST_TRANSFORMER_TEMP_STATE, + pub struWaterLevelSensor: NET_DVR_ALARMHOST_WATERLEVEL_SENSOR, + pub struDustNoiseSensor: NET_DVR_ALARMHOST_DUSTNOISE_SENSOR, + pub struEnvironmentLogger: NET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER, + pub struWindSpeedState: NET_DVR_WIND_SPEED_STATE, + pub struGenerateOutputState: NET_DVR_GENERATE_OUTPUT_STATE, + pub struSoakState: NET_DVR_SOAK_STATE, + pub struSolarPowerState: NET_DVR_SOLAR_POWER_STATE, + pub struSF6AlarmHostState: NET_DVR_SF6_ALARMHOST_STATE, + pub struWeightState: NET_DVR_WEIGHT_STATE, + pub struWeatherStationState: NET_DVR_WEATHER_STATION_STATE, + pub struWaterQltState: NET_DVR_WATER_QLT_STATE, + pub struFuelGasDeteState: NET_DVR_FUEL_GAS_DETE_STATE, + pub struFireAlarmStatus: NET_DVR_FIRE_ALARM_STATUS, + pub byRes: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struUpsState) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION), + "::", + stringify!(struUpsState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSwitchPowerState) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION), + "::", + stringify!(struSwitchPowerState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGasDetectorState) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION), + "::", + stringify!(struGasDetectorState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTempHumiSensorState) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION), + "::", + stringify!(struTempHumiSensorState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAirConditionState) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION), + "::", + stringify!(struAirConditionState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struElectricityState) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION), + "::", + stringify!(struElectricityState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTransformerTempState) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION), + "::", + stringify!(struTransformerTempState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWaterLevelSensor) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION), + "::", + stringify!(struWaterLevelSensor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDustNoiseSensor) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION), + "::", + stringify!(struDustNoiseSensor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEnvironmentLogger) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION), + "::", + stringify!(struEnvironmentLogger) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWindSpeedState) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION), + "::", + stringify!(struWindSpeedState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGenerateOutputState) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION), + "::", + stringify!(struGenerateOutputState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSoakState) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION), + "::", + stringify!(struSoakState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSolarPowerState) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION), + "::", + stringify!(struSolarPowerState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSF6AlarmHostState) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION), + "::", + stringify!(struSF6AlarmHostState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWeightState) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION), + "::", + stringify!(struWeightState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWeatherStationState) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION), + "::", + stringify!(struWeatherStationState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWaterQltState) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION), + "::", + stringify!(struWaterQltState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFuelGasDeteState) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION), + "::", + stringify!(struFuelGasDeteState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFireAlarmStatus) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION), + "::", + stringify!(struFireAlarmStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EXTERNAL_DEVICE_STATE_UNION = tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION; +pub type LPNET_DVR_EXTERNAL_DEVICE_STATE_UNION = *mut tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_EXTERNAL_DEVICE_STATE { + pub dwSize: DWORD, + pub byDevType: BYTE, + pub byRes1: [BYTE; 3usize], + pub struDevState: NET_DVR_EXTERNAL_DEVICE_STATE_UNION, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_EXTERNAL_DEVICE_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 552usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_EXTERNAL_DEVICE_STATE) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_EXTERNAL_DEVICE_STATE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_EXTERNAL_DEVICE_STATE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_EXTERNAL_DEVICE_STATE), + "::", + stringify!(byDevType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_EXTERNAL_DEVICE_STATE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevState) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_EXTERNAL_DEVICE_STATE), + "::", + stringify!(struDevState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 520usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_EXTERNAL_DEVICE_STATE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ALARMHOST_EXTERNAL_DEVICE_STATE = tagNET_DVR_ALARMHOST_EXTERNAL_DEVICE_STATE; +pub type LPNET_DVR_ALARMHOST_EXTERNAL_DEVICE_STATE = + *mut tagNET_DVR_ALARMHOST_EXTERNAL_DEVICE_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_GENERATE_OUTPUT_CTRL { + pub dwSize: DWORD, + pub byOutPutState1: BYTE, + pub byOutPutState2: BYTE, + pub byOutPutState3: BYTE, + pub byOutPutState4: BYTE, + pub byOutPutState5: BYTE, + pub byOutPutState6: BYTE, + pub byOperateType: BYTE, + pub Res: [BYTE; 65usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_GENERATE_OUTPUT_CTRL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(NET_DVR_GENERATE_OUTPUT_CTRL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_GENERATE_OUTPUT_CTRL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERATE_OUTPUT_CTRL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutPutState1) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERATE_OUTPUT_CTRL), + "::", + stringify!(byOutPutState1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutPutState2) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERATE_OUTPUT_CTRL), + "::", + stringify!(byOutPutState2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutPutState3) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERATE_OUTPUT_CTRL), + "::", + stringify!(byOutPutState3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutPutState4) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERATE_OUTPUT_CTRL), + "::", + stringify!(byOutPutState4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutPutState5) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERATE_OUTPUT_CTRL), + "::", + stringify!(byOutPutState5) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutPutState6) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERATE_OUTPUT_CTRL), + "::", + stringify!(byOutPutState6) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOperateType) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERATE_OUTPUT_CTRL), + "::", + stringify!(byOperateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Res) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERATE_OUTPUT_CTRL), + "::", + stringify!(Res) + ) + ); +} +pub type LPNET_DVR_GENERATE_OUTPUT_CTRL = *mut NET_DVR_GENERATE_OUTPUT_CTRL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_UPS_LIMIT_VALUE { + pub iInputVolHigh: ::std::os::raw::c_int, + pub iInputVolLow: ::std::os::raw::c_int, + pub iInputFreHigh: ::std::os::raw::c_int, + pub iInputFreLow: ::std::os::raw::c_int, + pub iOutputVolHigh: ::std::os::raw::c_int, + pub iOutputVolLow: ::std::os::raw::c_int, + pub iBatteryVoltageLow: ::std::os::raw::c_int, + pub iBatterySurplus: ::std::os::raw::c_int, + pub iBatteryTemperatureHigh: ::std::os::raw::c_int, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_UPS_LIMIT_VALUE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 100usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_LIMIT_VALUE) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_UPS_LIMIT_VALUE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iInputVolHigh) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_LIMIT_VALUE), + "::", + stringify!(iInputVolHigh) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iInputVolLow) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_LIMIT_VALUE), + "::", + stringify!(iInputVolLow) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iInputFreHigh) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_LIMIT_VALUE), + "::", + stringify!(iInputFreHigh) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iInputFreLow) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_LIMIT_VALUE), + "::", + stringify!(iInputFreLow) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iOutputVolHigh) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_LIMIT_VALUE), + "::", + stringify!(iOutputVolHigh) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iOutputVolLow) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_LIMIT_VALUE), + "::", + stringify!(iOutputVolLow) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iBatteryVoltageLow) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_LIMIT_VALUE), + "::", + stringify!(iBatteryVoltageLow) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iBatterySurplus) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_LIMIT_VALUE), + "::", + stringify!(iBatterySurplus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iBatteryTemperatureHigh) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_LIMIT_VALUE), + "::", + stringify!(iBatteryTemperatureHigh) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_LIMIT_VALUE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_UPS_LIMIT_VALUE = tagNET_DVR_ALARMHOST_UPS_LIMIT_VALUE; +pub type LPNET_DVR_ALARMHOST_UPS_LIMIT_VALUE = *mut tagNET_DVR_ALARMHOST_UPS_LIMIT_VALUE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_LIMIT_VALUE { + pub iTemperatureHighLimit: ::std::os::raw::c_int, + pub iTemperatureLowLimit: ::std::os::raw::c_int, + pub iHumidityHighLimit: ::std::os::raw::c_int, + pub iHumidityLowLimit: ::std::os::raw::c_int, + pub byRes: [BYTE; 84usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_LIMIT_VALUE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 100usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_LIMIT_VALUE) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_LIMIT_VALUE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTemperatureHighLimit) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_LIMIT_VALUE), + "::", + stringify!(iTemperatureHighLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTemperatureLowLimit) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_LIMIT_VALUE), + "::", + stringify!(iTemperatureLowLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iHumidityHighLimit) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_LIMIT_VALUE), + "::", + stringify!(iHumidityHighLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iHumidityLowLimit) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_LIMIT_VALUE), + "::", + stringify!(iHumidityLowLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_LIMIT_VALUE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_LIMIT_VALUE = + tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_LIMIT_VALUE; +pub type LPNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_LIMIT_VALUE = + *mut tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_LIMIT_VALUE; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_EXTERNAL_DEVICE_LIMIT_VALUE_UNION { + pub struUpsLimitValue: NET_DVR_ALARMHOST_UPS_LIMIT_VALUE, + pub struTempHumidityLimitValue: NET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_LIMIT_VALUE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXTERNAL_DEVICE_LIMIT_VALUE_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 100usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_LIMIT_VALUE_UNION) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_LIMIT_VALUE_UNION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struUpsLimitValue) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_LIMIT_VALUE_UNION), + "::", + stringify!(struUpsLimitValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTempHumidityLimitValue) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVICE_LIMIT_VALUE_UNION), + "::", + stringify!(struTempHumidityLimitValue) + ) + ); +} +pub type NET_DVR_EXTERNAL_DEVICE_LIMIT_VALUE_UNION = tagNET_DVR_EXTERNAL_DEVICE_LIMIT_VALUE_UNION; +pub type LPNET_DVR_EXTERNAL_DEVICE_LIMIT_VALUE_UNION = + *mut tagNET_DVR_EXTERNAL_DEVICE_LIMIT_VALUE_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_EXTERNAL_DEVICE_LIMIT_VALUE { + pub dwSize: DWORD, + pub byDevType: BYTE, + pub byRes1: [BYTE; 3usize], + pub struAlarmValue: NET_DVR_EXTERNAL_DEVICE_LIMIT_VALUE_UNION, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_EXTERNAL_DEVICE_LIMIT_VALUE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 140usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_EXTERNAL_DEVICE_LIMIT_VALUE) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_EXTERNAL_DEVICE_LIMIT_VALUE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_EXTERNAL_DEVICE_LIMIT_VALUE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_EXTERNAL_DEVICE_LIMIT_VALUE), + "::", + stringify!(byDevType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_EXTERNAL_DEVICE_LIMIT_VALUE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmValue) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_EXTERNAL_DEVICE_LIMIT_VALUE), + "::", + stringify!(struAlarmValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_EXTERNAL_DEVICE_LIMIT_VALUE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ALARMHOST_EXTERNAL_DEVICE_LIMIT_VALUE = + tagNET_DVR_ALARMHOST_EXTERNAL_DEVICE_LIMIT_VALUE; +pub type LPNET_DVR_ALARMHOST_EXTERNAL_DEVICE_LIMIT_VALUE = + *mut tagNET_DVR_ALARMHOST_EXTERNAL_DEVICE_LIMIT_VALUE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_SENSOR_JOINT_CFG { + pub dwSize: DWORD, + pub bySensorJointAlarmOut: [BYTE; 512usize], + pub bySensorJointSiren: [BYTE; 8usize], + pub bySensorAlarmTypeJointAlarmOut: [BYTE; 64usize], + pub bySesorAlarmTypeJointSiren: [BYTE; 8usize], + pub byChan: BYTE, + pub byRes: [BYTE; 55usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_SENSOR_JOINT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 652usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_SENSOR_JOINT_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_SENSOR_JOINT_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SENSOR_JOINT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensorJointAlarmOut) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SENSOR_JOINT_CFG), + "::", + stringify!(bySensorJointAlarmOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensorJointSiren) as usize - ptr as usize }, + 516usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SENSOR_JOINT_CFG), + "::", + stringify!(bySensorJointSiren) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).bySensorAlarmTypeJointAlarmOut) as usize - ptr as usize + }, + 524usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SENSOR_JOINT_CFG), + "::", + stringify!(bySensorAlarmTypeJointAlarmOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySesorAlarmTypeJointSiren) as usize - ptr as usize }, + 588usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SENSOR_JOINT_CFG), + "::", + stringify!(bySesorAlarmTypeJointSiren) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChan) as usize - ptr as usize }, + 596usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SENSOR_JOINT_CFG), + "::", + stringify!(byChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 597usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SENSOR_JOINT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_SENSOR_JOINT_CFG = tagNET_DVR_ALARMHOST_SENSOR_JOINT_CFG; +pub type LPNET_DVR_ALARMHOST_SENSOR_JOINT_CFG = *mut tagNET_DVR_ALARMHOST_SENSOR_JOINT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_UPS_ALARMINFO { + pub byAlarmType: BYTE, + pub byChanNo: BYTE, + pub bySlotNo: BYTE, + pub byRes1: BYTE, + pub iAlarmValue: ::std::os::raw::c_int, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_UPS_ALARMINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMHOST_UPS_ALARMINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_UPS_ALARMINFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_ALARMINFO), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanNo) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_ALARMINFO), + "::", + stringify!(byChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySlotNo) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_ALARMINFO), + "::", + stringify!(bySlotNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_ALARMINFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iAlarmValue) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_ALARMINFO), + "::", + stringify!(iAlarmValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_UPS_ALARMINFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ALARMHOST_UPS_ALARMINFO = tagNET_DVR_ALARMHOST_UPS_ALARMINFO; +pub type LPNET_DVR_ALARMHOST_UPS_ALARMINFO = *mut tagNET_DVR_ALARMHOST_UPS_ALARMINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_ALARMINFO { + pub byAlarmType: BYTE, + pub byChanNo: BYTE, + pub bySlotNo: BYTE, + pub byRes1: BYTE, + pub iAlarmValue: ::std::os::raw::c_int, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_ALARMINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_ALARMINFO) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_ALARMINFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_ALARMINFO), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanNo) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_ALARMINFO), + "::", + stringify!(byChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySlotNo) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_ALARMINFO), + "::", + stringify!(bySlotNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_ALARMINFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iAlarmValue) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_ALARMINFO), + "::", + stringify!(iAlarmValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_ALARMINFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_ALARMINFO = + tagNET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_ALARMINFO; +pub type LPNET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_ALARMINFO = + *mut tagNET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_ALARMINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_GAS_DETECT_SYS_ALARMINFO { + pub byAlarmType: BYTE, + pub byChanNo: BYTE, + pub bySlotNo: BYTE, + pub byRes1: BYTE, + pub iAlarmValue: ::std::os::raw::c_int, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_GAS_DETECT_SYS_ALARMINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_GAS_DETECT_SYS_ALARMINFO) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_GAS_DETECT_SYS_ALARMINFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_GAS_DETECT_SYS_ALARMINFO), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanNo) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_GAS_DETECT_SYS_ALARMINFO), + "::", + stringify!(byChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySlotNo) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_GAS_DETECT_SYS_ALARMINFO), + "::", + stringify!(bySlotNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_GAS_DETECT_SYS_ALARMINFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iAlarmValue) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_GAS_DETECT_SYS_ALARMINFO), + "::", + stringify!(iAlarmValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_GAS_DETECT_SYS_ALARMINFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ALARMHOST_GAS_DETECT_SYS_ALARMINFO = tagNET_DVR_ALARMHOST_GAS_DETECT_SYS_ALARMINFO; +pub type LPNET_DVR_ALARMHOST_GAS_DETECT_SYS_ALARMINFO = + *mut tagNET_DVR_ALARMHOST_GAS_DETECT_SYS_ALARMINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_ALARMINFO { + pub byAlarmType: BYTE, + pub byChanNo: BYTE, + pub bySlotNo: BYTE, + pub byRes1: BYTE, + pub iAlarmValue: ::std::os::raw::c_int, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_ALARMINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_ALARMINFO) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_ALARMINFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_ALARMINFO), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanNo) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_ALARMINFO), + "::", + stringify!(byChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySlotNo) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_ALARMINFO), + "::", + stringify!(bySlotNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_ALARMINFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iAlarmValue) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_ALARMINFO), + "::", + stringify!(iAlarmValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_ALARMINFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_ALARMINFO = + tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_ALARMINFO; +pub type LPNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_ALARMINFO = + *mut tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_ALARMINFO; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_485_DEVICE_ALARM_UNION { + pub struUPSAlarm: NET_DVR_ALARMHOST_UPS_ALARMINFO, + pub struSwitchPowerAlarm: NET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_ALARMINFO, + pub struGasDetectSystemAlarm: NET_DVR_ALARMHOST_GAS_DETECT_SYS_ALARMINFO, + pub struTempHumiditySensorAlarm: NET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_ALARMINFO, + pub byRes: [BYTE; 72usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_485_DEVICE_ALARM_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_485_DEVICE_ALARM_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_485_DEVICE_ALARM_UNION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struUPSAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_485_DEVICE_ALARM_UNION), + "::", + stringify!(struUPSAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSwitchPowerAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_485_DEVICE_ALARM_UNION), + "::", + stringify!(struSwitchPowerAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGasDetectSystemAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_485_DEVICE_ALARM_UNION), + "::", + stringify!(struGasDetectSystemAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTempHumiditySensorAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_485_DEVICE_ALARM_UNION), + "::", + stringify!(struTempHumiditySensorAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_485_DEVICE_ALARM_UNION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_485_DEVICE_ALARM_UNION = tagNET_DVR_485_DEVICE_ALARM_UNION; +pub type LPNET_DVR_485_DEVICE_ALARM_UNION = *mut tagNET_DVR_485_DEVICE_ALARM_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_485_EXTERNAL_DEVICE_ALARMINFO { + pub dwSize: DWORD, + pub byAlarmType: BYTE, + pub byRes1: [BYTE; 3usize], + pub struAlarmInfo: NET_DVR_485_DEVICE_ALARM_UNION, + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_485_EXTERNAL_DEVICE_ALARMINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 96usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_485_EXTERNAL_DEVICE_ALARMINFO) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_485_EXTERNAL_DEVICE_ALARMINFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_485_EXTERNAL_DEVICE_ALARMINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_485_EXTERNAL_DEVICE_ALARMINFO), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_485_EXTERNAL_DEVICE_ALARMINFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_485_EXTERNAL_DEVICE_ALARMINFO), + "::", + stringify!(struAlarmInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_485_EXTERNAL_DEVICE_ALARMINFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_485_EXTERNAL_DEVICE_ALARMINFO = tagNET_DVR_485_EXTERNAL_DEVICE_ALARMINFO; +pub type LPNET_DVR_485_EXTERNAL_DEVICE_ALARMINFO = *mut tagNET_DVR_485_EXTERNAL_DEVICE_ALARMINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_RS485_SLOT_CFG { + pub dwSize: DWORD, + pub sDeviceName: [BYTE; 32usize], + pub wDeviceType: WORD, + pub wDeviceProtocol: WORD, + pub wAddress: WORD, + pub byChannel: BYTE, + pub bySlotChan: BYTE, + pub byRes: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_RS485_SLOT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 104usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMHOST_RS485_SLOT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_RS485_SLOT_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_RS485_SLOT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDeviceName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_RS485_SLOT_CFG), + "::", + stringify!(sDeviceName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDeviceType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_RS485_SLOT_CFG), + "::", + stringify!(wDeviceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDeviceProtocol) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_RS485_SLOT_CFG), + "::", + stringify!(wDeviceProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAddress) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_RS485_SLOT_CFG), + "::", + stringify!(wAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_RS485_SLOT_CFG), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySlotChan) as usize - ptr as usize }, + 43usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_RS485_SLOT_CFG), + "::", + stringify!(bySlotChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_RS485_SLOT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_RS485_SLOT_CFG = tagNET_DVR_ALARMHOST_RS485_SLOT_CFG; +pub type LPNET_DVR_ALARMHOST_RS485_SLOT_CFG = *mut tagNET_DVR_ALARMHOST_RS485_SLOT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CORRIDOR_MODE { + pub dwSize: DWORD, + pub byEnableCorridorMode: BYTE, + pub byMirrorMode: BYTE, + pub byRes: [BYTE; 126usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CORRIDOR_MODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_CORRIDOR_MODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CORRIDOR_MODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CORRIDOR_MODE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableCorridorMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CORRIDOR_MODE), + "::", + stringify!(byEnableCorridorMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMirrorMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CORRIDOR_MODE), + "::", + stringify!(byMirrorMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CORRIDOR_MODE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CORRIDOR_MODE = tagNET_DVR_CORRIDOR_MODE; +pub type LPNET_DVR_CORRIDOR_MODE = *mut tagNET_DVR_CORRIDOR_MODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DETECT_FACE { + pub dwSize: DWORD, + pub byEnableDetectFace: BYTE, + pub byDetectSensitive: BYTE, + pub byEnableDisplay: BYTE, + pub byRes: BYTE, + pub struAlarmHandleType: NET_DVR_HANDLEEXCEPTION_V40, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub dwMaxRelRecordChanNum: DWORD, + pub dwRelRecordChanNum: DWORD, + pub dwRelRecordChan: [DWORD; 64usize], + pub struHolidayTime: [NET_DVR_SCHEDTIME; 8usize], + pub wDuration: WORD, + pub byRes1: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DETECT_FACE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 892usize, + concat!("Size of: ", stringify!(tagNET_DVR_DETECT_FACE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DETECT_FACE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DETECT_FACE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableDetectFace) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DETECT_FACE), + "::", + stringify!(byEnableDetectFace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectSensitive) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DETECT_FACE), + "::", + stringify!(byDetectSensitive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableDisplay) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DETECT_FACE), + "::", + stringify!(byEnableDisplay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DETECT_FACE), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmHandleType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DETECT_FACE), + "::", + stringify!(struAlarmHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 340usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DETECT_FACE), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxRelRecordChanNum) as usize - ptr as usize }, + 564usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DETECT_FACE), + "::", + stringify!(dwMaxRelRecordChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelRecordChanNum) as usize - ptr as usize }, + 568usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DETECT_FACE), + "::", + stringify!(dwRelRecordChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelRecordChan) as usize - ptr as usize }, + 572usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DETECT_FACE), + "::", + stringify!(dwRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHolidayTime) as usize - ptr as usize }, + 828usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DETECT_FACE), + "::", + stringify!(struHolidayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDuration) as usize - ptr as usize }, + 860usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DETECT_FACE), + "::", + stringify!(wDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 862usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DETECT_FACE), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_DETECT_FACE = tagNET_DVR_DETECT_FACE; +pub type LPNET_DVR_DETECT_FACE = *mut tagNET_DVR_DETECT_FACE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MUL_STREAM_CHANNEL_GROUP { + pub dwSize: DWORD, + pub dwGroup: DWORD, + pub struMultiStreamCfg: NET_DVR_MULTI_STREAM_COMPRESSIONCFG_COND, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MUL_STREAM_CHANNEL_GROUP() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 184usize, + concat!("Size of: ", stringify!(tagNET_DVR_MUL_STREAM_CHANNEL_GROUP)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MUL_STREAM_CHANNEL_GROUP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MUL_STREAM_CHANNEL_GROUP), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGroup) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MUL_STREAM_CHANNEL_GROUP), + "::", + stringify!(dwGroup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMultiStreamCfg) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MUL_STREAM_CHANNEL_GROUP), + "::", + stringify!(struMultiStreamCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MUL_STREAM_CHANNEL_GROUP), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MUL_STREAM_CHANNEL_GROUP = tagNET_DVR_MUL_STREAM_CHANNEL_GROUP; +pub type LPNET_DVR_MUL_STREAM_CHANNEL_GROUP = *mut tagNET_DVR_MUL_STREAM_CHANNEL_GROUP; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CHANNEL_GROUP { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub dwGroup: DWORD, + pub byID: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwPositionNo: DWORD, + pub byRes: [BYTE; 56usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CHANNEL_GROUP() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_CHANNEL_GROUP)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CHANNEL_GROUP)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANNEL_GROUP), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANNEL_GROUP), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGroup) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANNEL_GROUP), + "::", + stringify!(dwGroup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byID) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANNEL_GROUP), + "::", + stringify!(byID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANNEL_GROUP), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPositionNo) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANNEL_GROUP), + "::", + stringify!(dwPositionNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANNEL_GROUP), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CHANNEL_GROUP = tagNET_DVR_CHANNEL_GROUP; +pub type LPNET_DVR_CHANNEL_GROUP = *mut tagNET_DVR_CHANNEL_GROUP; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TIME_DETECTION { + pub struSchedTime: NET_DVR_SCHEDTIME, + pub byDetSceneID: BYTE, + pub byRes: [BYTE; 15usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TIME_DETECTION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_TIME_DETECTION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TIME_DETECTION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSchedTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_DETECTION), + "::", + stringify!(struSchedTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetSceneID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_DETECTION), + "::", + stringify!(byDetSceneID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_DETECTION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TIME_DETECTION = tagNET_DVR_TIME_DETECTION; +pub type LPNET_DVR_TIME_DETECTION = *mut tagNET_DVR_TIME_DETECTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GUARD_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRelateType: BYTE, + pub byGroupNo: BYTE, + pub byRes: [BYTE; 62usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GUARD_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_GUARD_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GUARD_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GUARD_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GUARD_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelateType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GUARD_COND), + "::", + stringify!(byRelateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGroupNo) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GUARD_COND), + "::", + stringify!(byGroupNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GUARD_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GUARD_COND = tagNET_DVR_GUARD_COND; +pub type LPNET_DVR_GUARD_COND = *mut tagNET_DVR_GUARD_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GUARD_CFG { + pub dwSize: DWORD, + pub struAlarmSched: [[NET_DVR_TIME_DETECTION; 8usize]; 7usize], + pub struHandleException: NET_DVR_HANDLEEXCEPTION_V40, + pub dwMaxRelRecordChanNum: DWORD, + pub dwRelRecordChanNum: DWORD, + pub dwRelRecordChan: [DWORD; 64usize], + pub struHolidayTime: [NET_DVR_TIME_DETECTION; 8usize], + pub byDirection: BYTE, + pub byRes: [BYTE; 87usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GUARD_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1968usize, + concat!("Size of: ", stringify!(tagNET_DVR_GUARD_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GUARD_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GUARD_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmSched) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GUARD_CFG), + "::", + stringify!(struAlarmSched) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHandleException) as usize - ptr as usize }, + 1124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GUARD_CFG), + "::", + stringify!(struHandleException) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxRelRecordChanNum) as usize - ptr as usize }, + 1456usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GUARD_CFG), + "::", + stringify!(dwMaxRelRecordChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelRecordChanNum) as usize - ptr as usize }, + 1460usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GUARD_CFG), + "::", + stringify!(dwRelRecordChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelRecordChan) as usize - ptr as usize }, + 1464usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GUARD_CFG), + "::", + stringify!(dwRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHolidayTime) as usize - ptr as usize }, + 1720usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GUARD_CFG), + "::", + stringify!(struHolidayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDirection) as usize - ptr as usize }, + 1880usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GUARD_CFG), + "::", + stringify!(byDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1881usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GUARD_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GUARD_CFG = tagNET_DVR_GUARD_CFG; +pub type LPNET_DVR_GUARD_CFG = *mut tagNET_DVR_GUARD_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SNAPINFO_COND_ { + pub dwSize: DWORD, + pub dwChan: DWORD, + pub byRelateType: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SNAPINFO_COND_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_SNAPINFO_COND_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SNAPINFO_COND_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPINFO_COND_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPINFO_COND_), + "::", + stringify!(dwChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelateType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPINFO_COND_), + "::", + stringify!(byRelateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPINFO_COND_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SNAPINFO_COND = tagNET_DVR_SNAPINFO_COND_; +pub type LPNET_DVR_SNAPINFO_COND = *mut tagNET_DVR_SNAPINFO_COND_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SNAPINFOCFG { + pub dwSize: DWORD, + pub byCurPicType: BYTE, + pub byPicQuality: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwPicSize: DWORD, + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SNAPINFOCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 140usize, + concat!("Size of: ", stringify!(tagNET_DVR_SNAPINFOCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SNAPINFOCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPINFOCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCurPicType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPINFOCFG), + "::", + stringify!(byCurPicType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicQuality) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPINFOCFG), + "::", + stringify!(byPicQuality) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPINFOCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicSize) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPINFOCFG), + "::", + stringify!(dwPicSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SNAPINFOCFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SNAPINFOCFG = tagNET_DVR_SNAPINFOCFG; +pub type LPNET_DVR_SNAPINFOCFG = *mut tagNET_DVR_SNAPINFOCFG; +pub const _PTZ_TRACK_MODE__PTZ_TRACK_MODE_ALWAYS: _PTZ_TRACK_MODE_ = 1; +pub const _PTZ_TRACK_MODE__PTZ_TRACK_MODE_BYTIME: _PTZ_TRACK_MODE_ = 2; +pub const _PTZ_TRACK_MODE__PTZ_TRACK_MODE_NEXT: _PTZ_TRACK_MODE_ = 3; +pub type _PTZ_TRACK_MODE_ = ::std::os::raw::c_uint; +pub use self::_PTZ_TRACK_MODE_ as PTZ_TRACK_MODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_PTZ_TRACK_PARAM_ { + pub dwSize: DWORD, + pub byTrackMode: BYTE, + pub byLinkageTarget: BYTE, + pub byAutoTrackEnable: BYTE, + pub byRes1: BYTE, + pub dwTrackTime: DWORD, + pub byRes2: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_PTZ_TRACK_PARAM_() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_PTZ_TRACK_PARAM_> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_PTZ_TRACK_PARAM_>(), + 268usize, + concat!("Size of: ", stringify!(_NET_DVR_PTZ_TRACK_PARAM_)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_PTZ_TRACK_PARAM_>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_PTZ_TRACK_PARAM_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PTZ_TRACK_PARAM_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrackMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PTZ_TRACK_PARAM_), + "::", + stringify!(byTrackMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLinkageTarget) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PTZ_TRACK_PARAM_), + "::", + stringify!(byLinkageTarget) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAutoTrackEnable) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PTZ_TRACK_PARAM_), + "::", + stringify!(byAutoTrackEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PTZ_TRACK_PARAM_), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTrackTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PTZ_TRACK_PARAM_), + "::", + stringify!(dwTrackTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PTZ_TRACK_PARAM_), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PTZ_TRACK_PARAM = _NET_DVR_PTZ_TRACK_PARAM_; +pub type LPNET_DVR_PTZ_TRACK_PARAM = *mut _NET_DVR_PTZ_TRACK_PARAM_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_TRAVERSE_PLANEPARAM { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byEnableDualVca: BYTE, + pub byEnableHumanMisinfoFilter: BYTE, + pub byEnableVehicleMisinfoFilter: BYTE, + pub struAlertParam: [NET_VCA_TRAVERSE_PLANE; 8usize], + pub struAlarmSched: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub struHandleException: NET_DVR_HANDLEEXCEPTION_V40, + pub dwMaxRelRecordChanNum: DWORD, + pub dwRelRecordChanNum: DWORD, + pub byRelRecordChan: [DWORD; 64usize], + pub struHolidayTime: [NET_DVR_SCHEDTIME; 8usize], + pub byRes2: [BYTE; 100usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_TRAVERSE_PLANEPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1440usize, + concat!("Size of: ", stringify!(tagNET_VCA_TRAVERSE_PLANEPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_TRAVERSE_PLANEPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TRAVERSE_PLANEPARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TRAVERSE_PLANEPARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableDualVca) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TRAVERSE_PLANEPARAM), + "::", + stringify!(byEnableDualVca) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableHumanMisinfoFilter) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TRAVERSE_PLANEPARAM), + "::", + stringify!(byEnableHumanMisinfoFilter) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byEnableVehicleMisinfoFilter) as usize - ptr as usize + }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TRAVERSE_PLANEPARAM), + "::", + stringify!(byEnableVehicleMisinfoFilter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlertParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TRAVERSE_PLANEPARAM), + "::", + stringify!(struAlertParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmSched) as usize - ptr as usize }, + 488usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TRAVERSE_PLANEPARAM), + "::", + stringify!(struAlarmSched) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHandleException) as usize - ptr as usize }, + 712usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TRAVERSE_PLANEPARAM), + "::", + stringify!(struHandleException) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxRelRecordChanNum) as usize - ptr as usize }, + 1044usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TRAVERSE_PLANEPARAM), + "::", + stringify!(dwMaxRelRecordChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelRecordChanNum) as usize - ptr as usize }, + 1048usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TRAVERSE_PLANEPARAM), + "::", + stringify!(dwRelRecordChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelRecordChan) as usize - ptr as usize }, + 1052usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TRAVERSE_PLANEPARAM), + "::", + stringify!(byRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHolidayTime) as usize - ptr as usize }, + 1308usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TRAVERSE_PLANEPARAM), + "::", + stringify!(struHolidayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1340usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_TRAVERSE_PLANEPARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_VCA_TRAVERSE_PLANE_DETECTION = tagNET_VCA_TRAVERSE_PLANEPARAM; +pub type LPNET_VCA_TRAVERSE_PLANE_DETECTION = *mut tagNET_VCA_TRAVERSE_PLANEPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_FIELDDETECION { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byEnableDualVca: BYTE, + pub byEnableHumanMisinfoFilter: BYTE, + pub byEnableVehicleMisinfoFilter: BYTE, + pub struIntrusion: [NET_VCA_INTRUSION; 8usize], + pub struAlarmSched: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub struHandleException: NET_DVR_HANDLEEXCEPTION_V40, + pub dwMaxRelRecordChanNum: DWORD, + pub dwRelRecordChanNum: DWORD, + pub byRelRecordChan: [DWORD; 64usize], + pub struHolidayTime: [NET_DVR_SCHEDTIME; 8usize], + pub byRes2: [BYTE; 100usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_FIELDDETECION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1696usize, + concat!("Size of: ", stringify!(tagNET_VCA_FIELDDETECION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_FIELDDETECION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIELDDETECION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIELDDETECION), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableDualVca) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIELDDETECION), + "::", + stringify!(byEnableDualVca) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableHumanMisinfoFilter) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIELDDETECION), + "::", + stringify!(byEnableHumanMisinfoFilter) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byEnableVehicleMisinfoFilter) as usize - ptr as usize + }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIELDDETECION), + "::", + stringify!(byEnableVehicleMisinfoFilter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIntrusion) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIELDDETECION), + "::", + stringify!(struIntrusion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmSched) as usize - ptr as usize }, + 744usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIELDDETECION), + "::", + stringify!(struAlarmSched) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHandleException) as usize - ptr as usize }, + 968usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIELDDETECION), + "::", + stringify!(struHandleException) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxRelRecordChanNum) as usize - ptr as usize }, + 1300usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIELDDETECION), + "::", + stringify!(dwMaxRelRecordChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelRecordChanNum) as usize - ptr as usize }, + 1304usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIELDDETECION), + "::", + stringify!(dwRelRecordChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelRecordChan) as usize - ptr as usize }, + 1308usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIELDDETECION), + "::", + stringify!(byRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHolidayTime) as usize - ptr as usize }, + 1564usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIELDDETECION), + "::", + stringify!(struHolidayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1596usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FIELDDETECION), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_VCA_FIELDDETECION = tagNET_VCA_FIELDDETECION; +pub type LPNET_VCA_FIELDDETECION = *mut tagNET_VCA_FIELDDETECION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ROI_DETECT_NUM { + pub dwSize: DWORD, + pub dwGroup: DWORD, + pub dwStreamType: DWORD, + pub dwRoiFixNum: DWORD, + pub dwRoiFixID: [DWORD; 8usize], + pub szFixRoiName: [[BYTE; 32usize]; 8usize], + pub dwRoiTrackNum: DWORD, + pub dwRoiTrackID: [DWORD; 8usize], + pub byRes: [BYTE; 320usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ROI_DETECT_NUM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 660usize, + concat!("Size of: ", stringify!(tagNET_DVR_ROI_DETECT_NUM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ROI_DETECT_NUM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_DETECT_NUM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGroup) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_DETECT_NUM), + "::", + stringify!(dwGroup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStreamType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_DETECT_NUM), + "::", + stringify!(dwStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRoiFixNum) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_DETECT_NUM), + "::", + stringify!(dwRoiFixNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRoiFixID) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_DETECT_NUM), + "::", + stringify!(dwRoiFixID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szFixRoiName) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_DETECT_NUM), + "::", + stringify!(szFixRoiName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRoiTrackNum) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_DETECT_NUM), + "::", + stringify!(dwRoiTrackNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRoiTrackID) as usize - ptr as usize }, + 308usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_DETECT_NUM), + "::", + stringify!(dwRoiTrackID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 340usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_DETECT_NUM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ROI_DETECT_NUM = tagNET_DVR_ROI_DETECT_NUM; +pub type LPNET_DVR_ROI_DETECT_NUM = *mut tagNET_DVR_ROI_DETECT_NUM; +pub const _DETECT_ROI_TYPE__DETECT_FIX_ROI: _DETECT_ROI_TYPE_ = 0; +pub const _DETECT_ROI_TYPE__DETECT_TRACK_ROI: _DETECT_ROI_TYPE_ = 1; +pub type _DETECT_ROI_TYPE_ = ::std::os::raw::c_uint; +pub use self::_DETECT_ROI_TYPE_ as DETECT_ROI_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ROI_DETECT_COND { + pub dwSize: DWORD, + pub dwRoiID: DWORD, + pub struMultiStreamCfg: NET_DVR_MULTI_STREAM_COMPRESSIONCFG_COND, + pub byRoiDetectType: BYTE, + pub byRoiDetectTrackType: BYTE, + pub byRes: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ROI_DETECT_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 152usize, + concat!("Size of: ", stringify!(tagNET_DVR_ROI_DETECT_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ROI_DETECT_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_DETECT_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRoiID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_DETECT_COND), + "::", + stringify!(dwRoiID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMultiStreamCfg) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_DETECT_COND), + "::", + stringify!(struMultiStreamCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRoiDetectType) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_DETECT_COND), + "::", + stringify!(byRoiDetectType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRoiDetectTrackType) as usize - ptr as usize }, + 121usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_DETECT_COND), + "::", + stringify!(byRoiDetectTrackType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 122usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_DETECT_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ROI_DETECT_COND = tagNET_DVR_ROI_DETECT_COND; +pub type LPNET_DVR_ROI_DETECT_COND = *mut tagNET_DVR_ROI_DETECT_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ROI_FIX_RECT_CFG { + pub byEnableFixRoi: BYTE, + pub byImageQualityLevel: BYTE, + pub byRes: [BYTE; 2usize], + pub szFixRoiName: [BYTE; 32usize], + pub struRoiRect: NET_VCA_RECT, + pub byRes1: [BYTE; 468usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ROI_FIX_RECT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 520usize, + concat!("Size of: ", stringify!(tagNET_DVR_ROI_FIX_RECT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ROI_FIX_RECT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableFixRoi) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_FIX_RECT_CFG), + "::", + stringify!(byEnableFixRoi) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byImageQualityLevel) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_FIX_RECT_CFG), + "::", + stringify!(byImageQualityLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_FIX_RECT_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szFixRoiName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_FIX_RECT_CFG), + "::", + stringify!(szFixRoiName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRoiRect) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_FIX_RECT_CFG), + "::", + stringify!(struRoiRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_FIX_RECT_CFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_ROI_FIX_RECT_CFG = tagNET_DVR_ROI_FIX_RECT_CFG; +pub type LPNET_DVR_ROI_FIX_RECT_CFG = *mut tagNET_DVR_ROI_FIX_RECT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ROI_TRACK_RECT_CFG { + pub byEnableTrackRoi: BYTE, + pub byImageQualityLevel: BYTE, + pub byModeType: BYTE, + pub byRes: [BYTE; 509usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ROI_TRACK_RECT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(tagNET_DVR_ROI_TRACK_RECT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ROI_TRACK_RECT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableTrackRoi) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_TRACK_RECT_CFG), + "::", + stringify!(byEnableTrackRoi) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byImageQualityLevel) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_TRACK_RECT_CFG), + "::", + stringify!(byImageQualityLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byModeType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_TRACK_RECT_CFG), + "::", + stringify!(byModeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_TRACK_RECT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ROI_TRACK_RECT_CFG = tagNET_DVR_ROI_TRACK_RECT_CFG; +pub type LPNET_DVR_ROI_TRACK_RECT_CFG = *mut tagNET_DVR_ROI_TRACK_RECT_CFG; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_ROI_DETECT_UNION { + pub uLen: [DWORD; 128usize], + pub strRoiFixRectCfg: NET_DVR_ROI_FIX_RECT_CFG, + pub strRoiTrackRectCfg: NET_DVR_ROI_TRACK_RECT_CFG, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ROI_DETECT_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 520usize, + concat!("Size of: ", stringify!(tagNET_DVR_ROI_DETECT_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ROI_DETECT_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_DETECT_UNION), + "::", + stringify!(uLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strRoiFixRectCfg) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_DETECT_UNION), + "::", + stringify!(strRoiFixRectCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strRoiTrackRectCfg) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_DETECT_UNION), + "::", + stringify!(strRoiTrackRectCfg) + ) + ); +} +pub type NET_DVR_ROI_DETECT_UNION = tagNET_DVR_ROI_DETECT_UNION; +pub type LPNET_DVR_ROI_DETECT_UNION = *mut tagNET_DVR_ROI_DETECT_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_ROI_DETECT_CFG { + pub dwSize: DWORD, + pub dwStreamType: DWORD, + pub byRoiDetectType: BYTE, + pub byRes: [BYTE; 3usize], + pub uRoiDetectInfo: NET_DVR_ROI_DETECT_UNION, + pub byRes1: [BYTE; 36usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ROI_DETECT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 568usize, + concat!("Size of: ", stringify!(tagNET_DVR_ROI_DETECT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ROI_DETECT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_DETECT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStreamType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_DETECT_CFG), + "::", + stringify!(dwStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRoiDetectType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_DETECT_CFG), + "::", + stringify!(byRoiDetectType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_DETECT_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uRoiDetectInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_DETECT_CFG), + "::", + stringify!(uRoiDetectInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 532usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROI_DETECT_CFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_ROI_DETECT_CFG = tagNET_DVR_ROI_DETECT_CFG; +pub type LPNET_DVR_ROI_DETECT_CFG = *mut tagNET_DVR_ROI_DETECT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_DEFOCUSPARAM { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub bySensitiveLevel: BYTE, + pub byRes1: [BYTE; 2usize], + pub struHandleException: NET_DVR_HANDLEEXCEPTION_V40, + pub byRes2: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_DEFOCUSPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 364usize, + concat!("Size of: ", stringify!(tagNET_VCA_DEFOCUSPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_VCA_DEFOCUSPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEFOCUSPARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEFOCUSPARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitiveLevel) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEFOCUSPARAM), + "::", + stringify!(bySensitiveLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEFOCUSPARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHandleException) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEFOCUSPARAM), + "::", + stringify!(struHandleException) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 340usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_DEFOCUSPARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_VCA_DEFOCUSPARAM = tagNET_VCA_DEFOCUSPARAM; +pub type LPNET_VCA_DEFOCUSPARAM = *mut tagNET_VCA_DEFOCUSPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_PTZ_INFO_EX { + pub fPan: f32, + pub fTilt: f32, + pub fVisibleZoom: f32, + pub dwVisibleFocus: DWORD, + pub fThermalZoom: f32, + pub dwThermalFocus: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_PTZ_INFO_EX() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_PTZ_INFO_EX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_PTZ_INFO_EX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fPan) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_PTZ_INFO_EX), + "::", + stringify!(fPan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fTilt) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_PTZ_INFO_EX), + "::", + stringify!(fTilt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fVisibleZoom) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_PTZ_INFO_EX), + "::", + stringify!(fVisibleZoom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVisibleFocus) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_PTZ_INFO_EX), + "::", + stringify!(dwVisibleFocus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fThermalZoom) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_PTZ_INFO_EX), + "::", + stringify!(fThermalZoom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwThermalFocus) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_PTZ_INFO_EX), + "::", + stringify!(dwThermalFocus) + ) + ); +} +pub type NET_PTZ_INFO_EX = tagNET_PTZ_INFO_EX; +pub type LPNET_PTZ_INFO_EX = *mut tagNET_PTZ_INFO_EX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PRESET_NAME { + pub dwSize: DWORD, + pub wPresetNum: WORD, + pub byRes1: [BYTE; 2usize], + pub byName: [::std::os::raw::c_char; 32usize], + pub wPanPos: WORD, + pub wTiltPos: WORD, + pub wZoomPos: WORD, + pub byRes2: BYTE, + pub byPTZPosExEnable: BYTE, + pub struPtzPosEx: NET_PTZ_INFO_EX, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PRESET_NAME() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 104usize, + concat!("Size of: ", stringify!(tagNET_DVR_PRESET_NAME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PRESET_NAME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESET_NAME), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPresetNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESET_NAME), + "::", + stringify!(wPresetNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESET_NAME), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESET_NAME), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPanPos) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESET_NAME), + "::", + stringify!(wPanPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTiltPos) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESET_NAME), + "::", + stringify!(wTiltPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wZoomPos) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESET_NAME), + "::", + stringify!(wZoomPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 46usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESET_NAME), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPTZPosExEnable) as usize - ptr as usize }, + 47usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESET_NAME), + "::", + stringify!(byPTZPosExEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPtzPosEx) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESET_NAME), + "::", + stringify!(struPtzPosEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRESET_NAME), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PRESET_NAME = tagNET_DVR_PRESET_NAME; +pub type LPNET_DVR_PRESET_NAME = *mut tagNET_DVR_PRESET_NAME; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_SCHEDTASK { + pub struSchedTime: NET_DVR_SCHEDTIME, + #[doc = "< ��ʱ�������嶯��"] + pub wAction: WORD, + #[doc = "< ���\u{2daf}���ӱ�ţ���Ԥ�õ㣬Ѳ���������������������ҹ�л���"] + pub wActionNum: WORD, + pub byres: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_SCHEDTASK() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(NET_DVR_SCHEDTASK)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_SCHEDTASK)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSchedTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SCHEDTASK), + "::", + stringify!(struSchedTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAction) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SCHEDTASK), + "::", + stringify!(wAction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wActionNum) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SCHEDTASK), + "::", + stringify!(wActionNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byres) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SCHEDTASK), + "::", + stringify!(byres) + ) + ); +} +pub type LPNET_DVR_SCHEDTASK = *mut NET_DVR_SCHEDTASK; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TIME_TASK { + pub dwSize: DWORD, + #[doc = "< ʹ�� 1-����0-��"] + pub byTaskEnable: BYTE, + #[doc = "< �\u{5bd}ڶ���"] + pub byRes: [BYTE; 3usize], + #[doc = "< 7�죬ÿ��10ʱ���"] + pub struTask: [[NET_DVR_SCHEDTASK; 10usize]; 7usize], + #[doc = "< ����ʱ�� 5s-720s"] + pub dwParkTime: DWORD, + pub byRes1: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TIME_TASK() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1476usize, + concat!("Size of: ", stringify!(tagNET_DVR_TIME_TASK)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TIME_TASK)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_TASK), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTaskEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_TASK), + "::", + stringify!(byTaskEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_TASK), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTask) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_TASK), + "::", + stringify!(struTask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwParkTime) as usize - ptr as usize }, + 1408usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_TASK), + "::", + stringify!(dwParkTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1412usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_TASK), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_TIME_TASK = tagNET_DVR_TIME_TASK; +pub type LPNET_DVR_TIME_TASK = *mut tagNET_DVR_TIME_TASK; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CHANNEL_INDEX { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub dwIndex: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CHANNEL_INDEX() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_CHANNEL_INDEX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CHANNEL_INDEX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANNEL_INDEX), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANNEL_INDEX), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIndex) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANNEL_INDEX), + "::", + stringify!(dwIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANNEL_INDEX), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CHANNEL_INDEX = tagNET_DVR_CHANNEL_INDEX; +pub type LPNET_DVR_CHANNEL_INDEX = *mut tagNET_DVR_CHANNEL_INDEX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUDIO_NAME { + pub dwSize: DWORD, + pub cName: [::std::os::raw::c_char; 32usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUDIO_NAME() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 100usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUDIO_NAME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AUDIO_NAME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_NAME), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_NAME), + "::", + stringify!(cName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_NAME), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AUDIO_NAME = tagNET_DVR_AUDIO_NAME; +pub type LPNET_DVR_AUDIO_NAME = *mut tagNET_DVR_AUDIO_NAME; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOGIN_DEVICE_PARAM_ { + pub dwSize: DWORD, + pub byMobileDev: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOGIN_DEVICE_PARAM_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOGIN_DEVICE_PARAM_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOGIN_DEVICE_PARAM_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOGIN_DEVICE_PARAM_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMobileDev) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOGIN_DEVICE_PARAM_), + "::", + stringify!(byMobileDev) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOGIN_DEVICE_PARAM_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOGIN_DEVICE_PARAM = tagNET_DVR_LOGIN_DEVICE_PARAM_; +pub type LPNET_DVR_LOGIN_DEVICE_PARAM = *mut tagNET_DVR_LOGIN_DEVICE_PARAM_; +pub const RECV_DATA_TYPE_ENUM_RECV_ERRCODE: RECV_DATA_TYPE = 0; +pub type RECV_DATA_TYPE = ::std::os::raw::c_uint; +pub const tagFISHEYE_STREAM_OUTPUT_MODE__FISHEYE_STREAM_MODE_FISHEYE: + tagFISHEYE_STREAM_OUTPUT_MODE_ = 1; +pub const tagFISHEYE_STREAM_OUTPUT_MODE__FISHEYE_STREAM_MODE_PTZ: tagFISHEYE_STREAM_OUTPUT_MODE_ = + 2; +pub const tagFISHEYE_STREAM_OUTPUT_MODE__FISHEYE_STREAM_MODE_PANORAMA: + tagFISHEYE_STREAM_OUTPUT_MODE_ = 3; +pub type tagFISHEYE_STREAM_OUTPUT_MODE_ = ::std::os::raw::c_uint; +pub use self::tagFISHEYE_STREAM_OUTPUT_MODE_ as FISHEYE_STREAM_OUTPUT_MODE; +pub const _CALLBACK_TYPE_DATA_ENUM__ENUM_FISHEYE_STREAM_STATUS: _CALLBACK_TYPE_DATA_ENUM_ = 1; +pub const _CALLBACK_TYPE_DATA_ENUM__ENUM_FISHEYE_PTZPOS: _CALLBACK_TYPE_DATA_ENUM_ = 2; +pub const _CALLBACK_TYPE_DATA_ENUM__ENUM_FISHEYE_REALTIME_OUTPUT: _CALLBACK_TYPE_DATA_ENUM_ = 3; +pub type _CALLBACK_TYPE_DATA_ENUM_ = ::std::os::raw::c_uint; +pub use self::_CALLBACK_TYPE_DATA_ENUM_ as CALLBACK_TYPE_DATA_ENUM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FISHEYE_STREAM_STATUS_ { + pub dwSize: DWORD, + pub byStreamMode: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FISHEYE_STREAM_STATUS_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_FISHEYE_STREAM_STATUS_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FISHEYE_STREAM_STATUS_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FISHEYE_STREAM_STATUS_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FISHEYE_STREAM_STATUS_), + "::", + stringify!(byStreamMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FISHEYE_STREAM_STATUS_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FISHEYE_STREAM_STATUS = tagNET_DVR_FISHEYE_STREAM_STATUS_; +pub type LPNET_DVR_FISHEYE_STREAM_STATUS = *mut tagNET_DVR_FISHEYE_STREAM_STATUS_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CALLBACK_TYPE_DATA { + pub dwChannel: DWORD, + pub dwDataType: DWORD, + pub dwDataLen: DWORD, + pub pData: *mut BYTE, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CALLBACK_TYPE_DATA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(tagNET_DVR_CALLBACK_TYPE_DATA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CALLBACK_TYPE_DATA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALLBACK_TYPE_DATA), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALLBACK_TYPE_DATA), + "::", + stringify!(dwDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataLen) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALLBACK_TYPE_DATA), + "::", + stringify!(dwDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pData) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALLBACK_TYPE_DATA), + "::", + stringify!(pData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALLBACK_TYPE_DATA), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CALLBACK_TYPE_DATA = tagNET_DVR_CALLBACK_TYPE_DATA; +pub type LPNET_DVR_CALLBACK_TYPE_DATA = *mut tagNET_DVR_CALLBACK_TYPE_DATA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DRAG_POS_PARAM { + pub dwChannel: DWORD, + pub dwPtzChannel: DWORD, + pub struToPoint: NET_VCA_POINT, + pub struOriPoint: NET_VCA_POINT, + pub byRes: [BYTE; 56usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DRAG_POS_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_DRAG_POS_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DRAG_POS_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DRAG_POS_PARAM), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPtzChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DRAG_POS_PARAM), + "::", + stringify!(dwPtzChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struToPoint) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DRAG_POS_PARAM), + "::", + stringify!(struToPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOriPoint) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DRAG_POS_PARAM), + "::", + stringify!(struOriPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DRAG_POS_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DRAG_POS_PARAM = tagNET_DVR_DRAG_POS_PARAM; +pub type LPNET_DVR_DRAG_POS_PARAM = *mut tagNET_DVR_DRAG_POS_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_QUERY_STATUS { + pub dwSize: DWORD, + pub byCpuLoad: BYTE, + pub byMemLoad: BYTE, + pub wAbility: WORD, + pub wRemainAbility: WORD, + pub wTotalPlanNum: WORD, + pub wCurPlanNum: WORD, + pub byRes: [BYTE; 62usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_QUERY_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_QUERY_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_QUERY_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCpuLoad) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_STATUS), + "::", + stringify!(byCpuLoad) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMemLoad) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_STATUS), + "::", + stringify!(byMemLoad) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAbility) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_STATUS), + "::", + stringify!(wAbility) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRemainAbility) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_STATUS), + "::", + stringify!(wRemainAbility) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTotalPlanNum) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_STATUS), + "::", + stringify!(wTotalPlanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCurPlanNum) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_STATUS), + "::", + stringify!(wCurPlanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_QUERY_STATUS = tagNET_DVR_QUERY_STATUS; +pub type LPNET_DVR_QUERY_STATUS = *mut tagNET_DVR_QUERY_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MONITOR_VQDCFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byDevType: BYTE, + pub bySignalPoint: BYTE, + pub byBlurPoint: BYTE, + pub byLumaPoint: BYTE, + pub byChromaPoint: BYTE, + pub bySnowPoint: BYTE, + pub byStreakPoint: BYTE, + pub byFreezePoint: BYTE, + pub byPTZPoint: BYTE, + pub byMonitorDel: BYTE, + pub byContrastThreshold: BYTE, + pub byMonoThreshold: BYTE, + pub byShakeThreshold: BYTE, + pub byFlashThreshold: BYTE, + pub byCoverThreshold: BYTE, + pub bySceneThreshold: BYTE, + pub byDarkThreshold: BYTE, + pub byRes: [BYTE; 46usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MONITOR_VQDCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_MONITOR_VQDCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MONITOR_VQDCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_VQDCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_VQDCFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_VQDCFG), + "::", + stringify!(byDevType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySignalPoint) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_VQDCFG), + "::", + stringify!(bySignalPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBlurPoint) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_VQDCFG), + "::", + stringify!(byBlurPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLumaPoint) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_VQDCFG), + "::", + stringify!(byLumaPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChromaPoint) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_VQDCFG), + "::", + stringify!(byChromaPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnowPoint) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_VQDCFG), + "::", + stringify!(bySnowPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreakPoint) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_VQDCFG), + "::", + stringify!(byStreakPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFreezePoint) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_VQDCFG), + "::", + stringify!(byFreezePoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPTZPoint) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_VQDCFG), + "::", + stringify!(byPTZPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonitorDel) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_VQDCFG), + "::", + stringify!(byMonitorDel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byContrastThreshold) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_VQDCFG), + "::", + stringify!(byContrastThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonoThreshold) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_VQDCFG), + "::", + stringify!(byMonoThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShakeThreshold) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_VQDCFG), + "::", + stringify!(byShakeThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlashThreshold) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_VQDCFG), + "::", + stringify!(byFlashThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCoverThreshold) as usize - ptr as usize }, + 19usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_VQDCFG), + "::", + stringify!(byCoverThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySceneThreshold) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_VQDCFG), + "::", + stringify!(bySceneThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDarkThreshold) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_VQDCFG), + "::", + stringify!(byDarkThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_VQDCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MONITOR_VQDCFG = tagNET_DVR_MONITOR_VQDCFG; +pub type LPNET_DVR_MONITOR_VQDCFG = *mut tagNET_DVR_MONITOR_VQDCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DIAGNOSIS_UPLOAD { + pub dwSize: DWORD, + #[doc = "< ��ID������С��32���\u{5bd}�"] + pub sStreamID: [::std::os::raw::c_char; 32usize], + #[doc = "< ��ص�ip"] + pub sMonitorIP: [::std::os::raw::c_char; 64usize], + #[doc = "< ��ص�\u{368}����"] + pub dwChanIndex: DWORD, + #[doc = "< ͼ�����"] + pub dwWidth: DWORD, + #[doc = "< ͼ��߶�"] + pub dwHeight: DWORD, + #[doc = "< ���ʱ��(�ϲ����ں�ʱ���\u{5b6}�)����ʽ��2012-08-06 13:00:00"] + pub struCheckTime: NET_DVR_TIME, + pub byResult: BYTE, + #[doc = "< ��Ƶ��ʧ����� 0-δ��� 1-���� 2-�쳣"] + pub bySignalResult: BYTE, + #[doc = "< ͼ��ģ���������0-δ��� 1-���� 2-�쳣"] + pub byBlurResult: BYTE, + #[doc = "< ͼ������������0-δ��� 1-���� 2-�쳣"] + pub byLumaResult: BYTE, + #[doc = "< ƫɫ�������0-δ��� 1-���� 2-�쳣"] + pub byChromaResult: BYTE, + #[doc = "< �������ż������0-δ��� 1-���� 2-�쳣"] + pub bySnowResult: BYTE, + #[doc = "< ���Ƹ��ż������0-δ��� 1-���� 2-�쳣"] + pub byStreakResult: BYTE, + #[doc = "< ���涳��������0-δ��� 1-���� 2-�쳣"] + pub byFreezeResult: BYTE, + #[doc = "< ��\u{328}�������0-δ��� 1-���� 2-�쳣"] + pub byPTZResult: BYTE, + pub byContrastResult: BYTE, + pub byMonoResult: BYTE, + pub byShakeResult: BYTE, + #[doc = "<ͼƬURL��\u{5b7}"] + pub sSNapShotURL: [::std::os::raw::c_char; 256usize], + pub byFlashResult: BYTE, + pub byCoverResult: BYTE, + pub bySceneResult: BYTE, + pub byDarkResult: BYTE, + pub byStreamType: BYTE, + pub byRes2: [BYTE; 59usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DIAGNOSIS_UPLOAD() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 468usize, + concat!("Size of: ", stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sStreamID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD), + "::", + stringify!(sStreamID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sMonitorIP) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD), + "::", + stringify!(sMonitorIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChanIndex) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD), + "::", + stringify!(dwChanIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWidth) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD), + "::", + stringify!(dwWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHeight) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD), + "::", + stringify!(dwHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCheckTime) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD), + "::", + stringify!(struCheckTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byResult) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD), + "::", + stringify!(byResult) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySignalResult) as usize - ptr as usize }, + 137usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD), + "::", + stringify!(bySignalResult) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBlurResult) as usize - ptr as usize }, + 138usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD), + "::", + stringify!(byBlurResult) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLumaResult) as usize - ptr as usize }, + 139usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD), + "::", + stringify!(byLumaResult) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChromaResult) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD), + "::", + stringify!(byChromaResult) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnowResult) as usize - ptr as usize }, + 141usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD), + "::", + stringify!(bySnowResult) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreakResult) as usize - ptr as usize }, + 142usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD), + "::", + stringify!(byStreakResult) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFreezeResult) as usize - ptr as usize }, + 143usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD), + "::", + stringify!(byFreezeResult) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPTZResult) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD), + "::", + stringify!(byPTZResult) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byContrastResult) as usize - ptr as usize }, + 145usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD), + "::", + stringify!(byContrastResult) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonoResult) as usize - ptr as usize }, + 146usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD), + "::", + stringify!(byMonoResult) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShakeResult) as usize - ptr as usize }, + 147usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD), + "::", + stringify!(byShakeResult) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSNapShotURL) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD), + "::", + stringify!(sSNapShotURL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlashResult) as usize - ptr as usize }, + 404usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD), + "::", + stringify!(byFlashResult) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCoverResult) as usize - ptr as usize }, + 405usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD), + "::", + stringify!(byCoverResult) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySceneResult) as usize - ptr as usize }, + 406usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD), + "::", + stringify!(bySceneResult) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDarkResult) as usize - ptr as usize }, + 407usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD), + "::", + stringify!(byDarkResult) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 408usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 409usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAGNOSIS_UPLOAD), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DIAGNOSIS_UPLOAD = tagNET_DVR_DIAGNOSIS_UPLOAD; +pub type LPNET_DVR_DIAGNOSIS_UPLOAD = *mut tagNET_DVR_DIAGNOSIS_UPLOAD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DOWN_LOAD_REQUEST { + pub struStreamInfo: NET_DVR_STREAM_INFO, + #[doc = "< ���ץͼURL������С��256���\u{5bd}�"] + pub sSnapShotURL: [::std::os::raw::c_char; 256usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DOWN_LOAD_REQUEST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 360usize, + concat!("Size of: ", stringify!(tagNET_DVR_DOWN_LOAD_REQUEST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DOWN_LOAD_REQUEST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOWN_LOAD_REQUEST), + "::", + stringify!(struStreamInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSnapShotURL) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOWN_LOAD_REQUEST), + "::", + stringify!(sSnapShotURL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOWN_LOAD_REQUEST), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DOWN_LOAD_REQUEST = tagNET_DVR_DOWN_LOAD_REQUEST; +pub type LPNET_DVR_DOWN_LOAD_REQUEST = *mut tagNET_DVR_DOWN_LOAD_REQUEST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VQD_RESULT_INFO { + pub dwSize: DWORD, + #[doc = "<��ID(��ص�ID)������С��32���\u{5bd}�"] + pub sStreamID: [::std::os::raw::c_char; 32usize], + pub dwPicLength: DWORD, + #[doc = "< ���ý��:0-�ɹ�,1-��������2-ͼƬ�����ڣ�3-��ȡͼƬʧ��"] + pub byStatus: BYTE, + pub byRes: [BYTE; 31usize], + #[doc = "< ���ץͼ����һ��ͼƬ��������(700k)"] + pub pSnapShot: *mut ::std::os::raw::c_char, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VQD_RESULT_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_VQD_RESULT_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VQD_RESULT_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_RESULT_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sStreamID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_RESULT_INFO), + "::", + stringify!(sStreamID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicLength) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_RESULT_INFO), + "::", + stringify!(dwPicLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_RESULT_INFO), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_RESULT_INFO), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pSnapShot) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_RESULT_INFO), + "::", + stringify!(pSnapShot) + ) + ); +} +pub type NET_DVR_VQD_RESULT_INFO = tagNET_DVR_VQD_RESULT_INFO; +pub type LPNET_DVR_VQD_RESULT_INFO = *mut tagNET_DVR_VQD_RESULT_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLAN_VQD_CFG { + pub dwSize: DWORD, + #[doc = "< �ƻ�id������С��32���\u{5bd}�"] + pub sPlanID: [BYTE; 32usize], + #[doc = "< ���ʱ��"] + pub struDetectTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub byPlanMode: BYTE, + #[doc = "0:��ʱ�ƻ���1:���ڼƻ�"] + pub byRes1: BYTE, + #[doc = "< �Ƿ��⣬0-����⣬1-���"] + pub byCheckFlag: BYTE, + #[doc = "<��Ƶ��ʧ �Ƿ��⣬0-����⣬1-���"] + pub bySignal: BYTE, + #[doc = "< ͼ��ģ�� �Ƿ��⣬0-����⣬1-���"] + pub byBlur: BYTE, + #[doc = "< ͼ������Ƿ��⣬0-����⣬1-���"] + pub byLuma: BYTE, + #[doc = "< ƫɫ��� �Ƿ��⣬0-����⣬1-���"] + pub byChroma: BYTE, + #[doc = "<�������� �Ƿ��⣬0-����⣬1-���"] + pub bySnow: BYTE, + #[doc = "<���Ƹ��� �Ƿ��⣬0-����⣬1-���"] + pub byStreak: BYTE, + #[doc = "<���涳���Ƿ��⣬0-����⣬1-���"] + pub byFreeze: BYTE, + #[doc = "<��\u{328}�Ƿ��⣬0-����⣬1-���"] + pub byPTZ: BYTE, + pub byEnablePlanRound: BYTE, + #[doc = "�ƻ�ѭ���Ƿ���"] + pub byContrast: BYTE, + pub byMono: BYTE, + pub byShake: BYTE, + pub byFlash: BYTE, + pub byCover: BYTE, + pub byScene: BYTE, + pub byDark: BYTE, + pub byRes: [BYTE; 13usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLAN_VQD_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 292usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLAN_VQD_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PLAN_VQD_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_VQD_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPlanID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_VQD_CFG), + "::", + stringify!(sPlanID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDetectTime) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_VQD_CFG), + "::", + stringify!(struDetectTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlanMode) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_VQD_CFG), + "::", + stringify!(byPlanMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 261usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_VQD_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCheckFlag) as usize - ptr as usize }, + 262usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_VQD_CFG), + "::", + stringify!(byCheckFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySignal) as usize - ptr as usize }, + 263usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_VQD_CFG), + "::", + stringify!(bySignal) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBlur) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_VQD_CFG), + "::", + stringify!(byBlur) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLuma) as usize - ptr as usize }, + 265usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_VQD_CFG), + "::", + stringify!(byLuma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChroma) as usize - ptr as usize }, + 266usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_VQD_CFG), + "::", + stringify!(byChroma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySnow) as usize - ptr as usize }, + 267usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_VQD_CFG), + "::", + stringify!(bySnow) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreak) as usize - ptr as usize }, + 268usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_VQD_CFG), + "::", + stringify!(byStreak) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFreeze) as usize - ptr as usize }, + 269usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_VQD_CFG), + "::", + stringify!(byFreeze) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPTZ) as usize - ptr as usize }, + 270usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_VQD_CFG), + "::", + stringify!(byPTZ) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnablePlanRound) as usize - ptr as usize }, + 271usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_VQD_CFG), + "::", + stringify!(byEnablePlanRound) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byContrast) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_VQD_CFG), + "::", + stringify!(byContrast) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMono) as usize - ptr as usize }, + 273usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_VQD_CFG), + "::", + stringify!(byMono) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShake) as usize - ptr as usize }, + 274usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_VQD_CFG), + "::", + stringify!(byShake) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlash) as usize - ptr as usize }, + 275usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_VQD_CFG), + "::", + stringify!(byFlash) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCover) as usize - ptr as usize }, + 276usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_VQD_CFG), + "::", + stringify!(byCover) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScene) as usize - ptr as usize }, + 277usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_VQD_CFG), + "::", + stringify!(byScene) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDark) as usize - ptr as usize }, + 278usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_VQD_CFG), + "::", + stringify!(byDark) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 279usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_VQD_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PLAN_VQD_CFG = tagNET_DVR_PLAN_VQD_CFG; +pub type LPNET_DVR_PLAN_VQD_CFG = *mut tagNET_DVR_PLAN_VQD_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TEST_SPOTCFG { + pub dwSize: DWORD, + pub byStepCount: BYTE, + pub byStepIndex: BYTE, + pub byRes: [BYTE; 14usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TEST_SPOTCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_TEST_SPOTCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TEST_SPOTCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_SPOTCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStepCount) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_SPOTCFG), + "::", + stringify!(byStepCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStepIndex) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_SPOTCFG), + "::", + stringify!(byStepIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_SPOTCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TEST_SPOTCFG = tagNET_DVR_TEST_SPOTCFG; +pub type LPNET_DVR_TEST_SPOTCFG = *mut tagNET_DVR_TEST_SPOTCFG; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_INVALID: tagNET_DVR_IPC_ENUM = -1; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_HIKVISION: tagNET_DVR_IPC_ENUM = 0; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_PANASONIC: tagNET_DVR_IPC_ENUM = 1; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_SONY: tagNET_DVR_IPC_ENUM = 2; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_AXIS: tagNET_DVR_IPC_ENUM = 3; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_SANYO: tagNET_DVR_IPC_ENUM = 4; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_BOSCH: tagNET_DVR_IPC_ENUM = 5; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_ZAVIO: tagNET_DVR_IPC_ENUM = 6; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_GRANDEYE: tagNET_DVR_IPC_ENUM = 7; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_PROVIDEO: tagNET_DVR_IPC_ENUM = 8; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_ARECONT: tagNET_DVR_IPC_ENUM = 9; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_ACTI: tagNET_DVR_IPC_ENUM = 10; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_PELCO: tagNET_DVR_IPC_ENUM = 11; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_VIVOTEK: tagNET_DVR_IPC_ENUM = 12; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_INFINOVA: tagNET_DVR_IPC_ENUM = 13; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_DAHUA: tagNET_DVR_IPC_ENUM = 14; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_HIK_STD_H264: tagNET_DVR_IPC_ENUM = 32; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_HIK_STD_MPEG4: tagNET_DVR_IPC_ENUM = 33; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_SUNELL: tagNET_DVR_IPC_ENUM = 34; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_ATEME: tagNET_DVR_IPC_ENUM = 35; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_LAUNCH: tagNET_DVR_IPC_ENUM = 36; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_YAAN: tagNET_DVR_IPC_ENUM = 37; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_BLUESKY: tagNET_DVR_IPC_ENUM = 38; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_BLUESKYLIMIT: tagNET_DVR_IPC_ENUM = 39; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_TDWY: tagNET_DVR_IPC_ENUM = 40; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_HBGK: tagNET_DVR_IPC_ENUM = 41; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_SANTACHI: tagNET_DVR_IPC_ENUM = 42; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_HIGHEASY: tagNET_DVR_IPC_ENUM = 43; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_SAMSUNG: tagNET_DVR_IPC_ENUM = 44; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_URL_RTSP: tagNET_DVR_IPC_ENUM = 64; +pub const tagNET_DVR_IPC_ENUM_ENUM_BUSINESS_ONVIF: tagNET_DVR_IPC_ENUM = 65; +pub const tagNET_DVR_IPC_ENUM_ENUM_MAX_BUSINESS_TYPE: tagNET_DVR_IPC_ENUM = 66; +pub type tagNET_DVR_IPC_ENUM = ::std::os::raw::c_int; +pub use self::tagNET_DVR_IPC_ENUM as NET_DVR_IPC_ENUM; +pub type LPNET_DVR_IPC_ENUM = *mut tagNET_DVR_IPC_ENUM; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_INVALID: tagNET_DVR_IPC_ENUM_UNIFY = -1; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_HIKVISION: tagNET_DVR_IPC_ENUM_UNIFY = 0; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_PANASONIC: tagNET_DVR_IPC_ENUM_UNIFY = 1; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_SONY: tagNET_DVR_IPC_ENUM_UNIFY = 2; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_AXIS: tagNET_DVR_IPC_ENUM_UNIFY = 4; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_SANYO: tagNET_DVR_IPC_ENUM_UNIFY = 5; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_BOSCH: tagNET_DVR_IPC_ENUM_UNIFY = 6; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_ZAVIO: tagNET_DVR_IPC_ENUM_UNIFY = 7; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_GRANDEYE: tagNET_DVR_IPC_ENUM_UNIFY = 8; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_PROVIDEO: tagNET_DVR_IPC_ENUM_UNIFY = 9; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_ARECONT: tagNET_DVR_IPC_ENUM_UNIFY = 10; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_ACTI: tagNET_DVR_IPC_ENUM_UNIFY = 11; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_PELCO: tagNET_DVR_IPC_ENUM_UNIFY = 12; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_VIVOTEK: tagNET_DVR_IPC_ENUM_UNIFY = 13; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_DAHUA: tagNET_DVR_IPC_ENUM_UNIFY = 14; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_SAMSUNG: tagNET_DVR_IPC_ENUM_UNIFY = 15; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_PSIA: tagNET_DVR_IPC_ENUM_UNIFY = 17; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_ONVIF: tagNET_DVR_IPC_ENUM_UNIFY = 18; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_BRICKCOM: tagNET_DVR_IPC_ENUM_UNIFY = 19; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_GB28181: tagNET_DVR_IPC_ENUM_UNIFY = 20; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_CANON: tagNET_DVR_IPC_ENUM_UNIFY = 23; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_HUINT: tagNET_DVR_IPC_ENUM_UNIFY = 32; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_INFINOVA: tagNET_DVR_IPC_ENUM_UNIFY = 33; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_HIK_STD_H264: tagNET_DVR_IPC_ENUM_UNIFY = 34; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_HIK_STD_MPEG4: tagNET_DVR_IPC_ENUM_UNIFY = 35; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_SUNELL: tagNET_DVR_IPC_ENUM_UNIFY = 36; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_ATEME: tagNET_DVR_IPC_ENUM_UNIFY = 37; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_LAUNCH: tagNET_DVR_IPC_ENUM_UNIFY = 38; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_YAAN: tagNET_DVR_IPC_ENUM_UNIFY = 39; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_BLUESKY: tagNET_DVR_IPC_ENUM_UNIFY = 40; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_BLUESKYLIMIT: tagNET_DVR_IPC_ENUM_UNIFY = 41; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_TDWY: tagNET_DVR_IPC_ENUM_UNIFY = 42; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_HBGK: tagNET_DVR_IPC_ENUM_UNIFY = 43; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_SANTACHI: tagNET_DVR_IPC_ENUM_UNIFY = 44; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_HIGHEASY: tagNET_DVR_IPC_ENUM_UNIFY = 45; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_HANBANG: tagNET_DVR_IPC_ENUM_UNIFY = 46; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_SAMSUNG_3120: tagNET_DVR_IPC_ENUM_UNIFY = 47; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_SAMSUNG_3080: tagNET_DVR_IPC_ENUM_UNIFY = 48; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_SAMSUNG_2000: tagNET_DVR_IPC_ENUM_UNIFY = 49; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_SAMSUNG_5200: tagNET_DVR_IPC_ENUM_UNIFY = 50; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_JINGYUAN: tagNET_DVR_IPC_ENUM_UNIFY = 51; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_VIDEOTREC: tagNET_DVR_IPC_ENUM_UNIFY = 52; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_CHENOVA: tagNET_DVR_IPC_ENUM_UNIFY = 53; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_FENGHUO: tagNET_DVR_IPC_ENUM_UNIFY = 54; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_ZB_5301: tagNET_DVR_IPC_ENUM_UNIFY = 55; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_ZB_5401: tagNET_DVR_IPC_ENUM_UNIFY = 56; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_HAIXIN: tagNET_DVR_IPC_ENUM_UNIFY = 57; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_ZHONGYINGXIN: tagNET_DVR_IPC_ENUM_UNIFY = 58; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_AVUN: tagNET_DVR_IPC_ENUM_UNIFY = 59; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_GOVTY: tagNET_DVR_IPC_ENUM_UNIFY = 60; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_SAE: tagNET_DVR_IPC_ENUM_UNIFY = 61; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_DONGFANGWANGLI: tagNET_DVR_IPC_ENUM_UNIFY = + 62; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_CHANGHONG: tagNET_DVR_IPC_ENUM_UNIFY = 63; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_H3C: tagNET_DVR_IPC_ENUM_UNIFY = 64; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_BAIAN: tagNET_DVR_IPC_ENUM_UNIFY = 65; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_HAT: tagNET_DVR_IPC_ENUM_UNIFY = 66; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_YUANYE: tagNET_DVR_IPC_ENUM_UNIFY = 67; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_HIKCARD: tagNET_DVR_IPC_ENUM_UNIFY = 68; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_HAIXINCAP: tagNET_DVR_IPC_ENUM_UNIFY = 69; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_WENANCAP: tagNET_DVR_IPC_ENUM_UNIFY = 70; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_XUNMEI: tagNET_DVR_IPC_ENUM_UNIFY = 71; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_BAIWO: tagNET_DVR_IPC_ENUM_UNIFY = 72; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_APD: tagNET_DVR_IPC_ENUM_UNIFY = 73; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_REACHDEV: tagNET_DVR_IPC_ENUM_UNIFY = 74; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_XUNMEI_DAHUA: tagNET_DVR_IPC_ENUM_UNIFY = 75; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_HUANGHE: tagNET_DVR_IPC_ENUM_UNIFY = 76; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_LIANCHEN: tagNET_DVR_IPC_ENUM_UNIFY = 77; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_CHENGYE: tagNET_DVR_IPC_ENUM_UNIFY = 78; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_VISIONDIGI: tagNET_DVR_IPC_ENUM_UNIFY = 79; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_HENGHE: tagNET_DVR_IPC_ENUM_UNIFY = 80; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_KODAK: tagNET_DVR_IPC_ENUM_UNIFY = 81; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_AIRONIX: tagNET_DVR_IPC_ENUM_UNIFY = 82; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_LG: tagNET_DVR_IPC_ENUM_UNIFY = 83; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_HASEE: tagNET_DVR_IPC_ENUM_UNIFY = 84; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_8000ME: tagNET_DVR_IPC_ENUM_UNIFY = 85; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_POVITEL: tagNET_DVR_IPC_ENUM_UNIFY = 86; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_YIVIEW: tagNET_DVR_IPC_ENUM_UNIFY = 87; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_TIANYUE: tagNET_DVR_IPC_ENUM_UNIFY = 88; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_HOWELL: tagNET_DVR_IPC_ENUM_UNIFY = 89; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_WAPA: tagNET_DVR_IPC_ENUM_UNIFY = 90; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_SANLE: tagNET_DVR_IPC_ENUM_UNIFY = 91; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_HIKCARD_ENCRYPTION: + tagNET_DVR_IPC_ENUM_UNIFY = 92; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_JUNSDA: tagNET_DVR_IPC_ENUM_UNIFY = 93; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_LIYUAN: tagNET_DVR_IPC_ENUM_UNIFY = 94; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_XINCHAN: tagNET_DVR_IPC_ENUM_UNIFY = 95; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_BITE: tagNET_DVR_IPC_ENUM_UNIFY = 96; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_MEIAN: tagNET_DVR_IPC_ENUM_UNIFY = 97; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_ROSEEK: tagNET_DVR_IPC_ENUM_UNIFY = 98; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_AEBELL: tagNET_DVR_IPC_ENUM_UNIFY = 99; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_JSL_ST: tagNET_DVR_IPC_ENUM_UNIFY = 100; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_VIMICRO: tagNET_DVR_IPC_ENUM_UNIFY = 101; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_UNIVIEW: tagNET_DVR_IPC_ENUM_UNIFY = 102; +pub const tagNET_DVR_IPC_ENUM_UNIFY_ENUM_IPC_PROTOCOL_TYPE: tagNET_DVR_IPC_ENUM_UNIFY = 103; +pub type tagNET_DVR_IPC_ENUM_UNIFY = ::std::os::raw::c_int; +pub use self::tagNET_DVR_IPC_ENUM_UNIFY as NET_DVR_IPC_ENUM_UNIFY; +pub type LPNET_DVR_IPC_ENUM_UNIFY = *mut tagNET_DVR_IPC_ENUM_UNIFY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MRD_SEARCH_PARAM { + pub dwSize: DWORD, + pub struStreamInfo: NET_DVR_STREAM_INFO, + pub wYear: WORD, + pub byMonth: BYTE, + pub byDrawFrame: BYTE, + pub byStreamType: BYTE, + pub byLocalOrUTC: BYTE, + pub byRes: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MRD_SEARCH_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 112usize, + concat!("Size of: ", stringify!(tagNET_DVR_MRD_SEARCH_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MRD_SEARCH_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MRD_SEARCH_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MRD_SEARCH_PARAM), + "::", + stringify!(struStreamInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wYear) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MRD_SEARCH_PARAM), + "::", + stringify!(wYear) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonth) as usize - ptr as usize }, + 78usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MRD_SEARCH_PARAM), + "::", + stringify!(byMonth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDrawFrame) as usize - ptr as usize }, + 79usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MRD_SEARCH_PARAM), + "::", + stringify!(byDrawFrame) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MRD_SEARCH_PARAM), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalOrUTC) as usize - ptr as usize }, + 81usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MRD_SEARCH_PARAM), + "::", + stringify!(byLocalOrUTC) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 82usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MRD_SEARCH_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MRD_SEARCH_PARAM = tagNET_DVR_MRD_SEARCH_PARAM; +pub type LPNET_DVR_MRD_SEARCH_PARAM = *mut tagNET_DVR_MRD_SEARCH_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MRD_SEARCH_RESULT { + pub dwSize: DWORD, + pub byRecordDistribution: [BYTE; 32usize], + pub byHasEventRecode: [BYTE; 31usize], + pub byRes: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MRD_SEARCH_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_MRD_SEARCH_RESULT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MRD_SEARCH_RESULT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MRD_SEARCH_RESULT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordDistribution) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MRD_SEARCH_RESULT), + "::", + stringify!(byRecordDistribution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHasEventRecode) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MRD_SEARCH_RESULT), + "::", + stringify!(byHasEventRecode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 67usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MRD_SEARCH_RESULT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MRD_SEARCH_RESULT = tagNET_DVR_MRD_SEARCH_RESULT; +pub type LPNET_DVR_MRD_SEARCH_RESULT = *mut tagNET_DVR_MRD_SEARCH_RESULT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ACCESS_DEVICE_INFO { + pub dwSize: DWORD, + pub byGroup: BYTE, + pub byProType: BYTE, + pub byAccessMode: BYTE, + pub byRes1: BYTE, + pub szUserName: [::std::os::raw::c_char; 32usize], + pub szPassword: [::std::os::raw::c_char; 16usize], + pub szDomain: [::std::os::raw::c_char; 64usize], + pub struIP: NET_DVR_IPADDR, + pub wPort: WORD, + pub szGB28181DevID: [BYTE; 32usize], + pub byRes2: [BYTE; 2usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ACCESS_DEVICE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 300usize, + concat!("Size of: ", stringify!(tagNET_DVR_ACCESS_DEVICE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ACCESS_DEVICE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCESS_DEVICE_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGroup) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCESS_DEVICE_INFO), + "::", + stringify!(byGroup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCESS_DEVICE_INFO), + "::", + stringify!(byProType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAccessMode) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCESS_DEVICE_INFO), + "::", + stringify!(byAccessMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCESS_DEVICE_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szUserName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCESS_DEVICE_INFO), + "::", + stringify!(szUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szPassword) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCESS_DEVICE_INFO), + "::", + stringify!(szPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDomain) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCESS_DEVICE_INFO), + "::", + stringify!(szDomain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCESS_DEVICE_INFO), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCESS_DEVICE_INFO), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szGB28181DevID) as usize - ptr as usize }, + 266usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCESS_DEVICE_INFO), + "::", + stringify!(szGB28181DevID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 298usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCESS_DEVICE_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ACCESS_DEVICE_INFO = tagNET_DVR_ACCESS_DEVICE_INFO; +pub type LPNET_DVR_ACCESS_DEVICE_INFO = *mut tagNET_DVR_ACCESS_DEVICE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ACCESS_DEVICE_CHANNEL_INFO { + pub dwSize: DWORD, + pub dwTotalChannelNum: DWORD, + pub byChannel: [BYTE; 64usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ACCESS_DEVICE_CHANNEL_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 104usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ACCESS_DEVICE_CHANNEL_INFO) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ACCESS_DEVICE_CHANNEL_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCESS_DEVICE_CHANNEL_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotalChannelNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCESS_DEVICE_CHANNEL_INFO), + "::", + stringify!(dwTotalChannelNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCESS_DEVICE_CHANNEL_INFO), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCESS_DEVICE_CHANNEL_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ACCESS_DEVICE_CHANNEL_INFO = tagNET_DVR_ACCESS_DEVICE_CHANNEL_INFO; +pub type LPNET_DVR_ACCESS_DEVICE_CHANNEL_INFO = *mut tagNET_DVR_ACCESS_DEVICE_CHANNEL_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PREVIEW_SWITCH_COND { + pub dwSize: DWORD, + pub byGroup: BYTE, + pub byVideoOutType: BYTE, + pub byGetDefaultPreviewSet: BYTE, + pub byPreviewNumber: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PREVIEW_SWITCH_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_PREVIEW_SWITCH_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PREVIEW_SWITCH_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEW_SWITCH_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGroup) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEW_SWITCH_COND), + "::", + stringify!(byGroup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoOutType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEW_SWITCH_COND), + "::", + stringify!(byVideoOutType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGetDefaultPreviewSet) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEW_SWITCH_COND), + "::", + stringify!(byGetDefaultPreviewSet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPreviewNumber) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEW_SWITCH_COND), + "::", + stringify!(byPreviewNumber) + ) + ); +} +pub type NET_DVR_PREVIEW_SWITCH_COND = tagNET_DVR_PREVIEW_SWITCH_COND; +pub type LPNET_DVR_PREVIEW_SWITCH_COND = *mut tagNET_DVR_PREVIEW_SWITCH_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PREVIEW_SWITCH_CFG { + pub dwSize: DWORD, + pub wSwitchSeq: [WORD; 64usize], + pub byPreviewNumber: BYTE, + pub byEnableAudio: BYTE, + pub bySwitchTime: BYTE, + pub bySameSource: BYTE, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PREVIEW_SWITCH_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 168usize, + concat!("Size of: ", stringify!(tagNET_DVR_PREVIEW_SWITCH_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PREVIEW_SWITCH_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEW_SWITCH_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSwitchSeq) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEW_SWITCH_CFG), + "::", + stringify!(wSwitchSeq) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPreviewNumber) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEW_SWITCH_CFG), + "::", + stringify!(byPreviewNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableAudio) as usize - ptr as usize }, + 133usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEW_SWITCH_CFG), + "::", + stringify!(byEnableAudio) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySwitchTime) as usize - ptr as usize }, + 134usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEW_SWITCH_CFG), + "::", + stringify!(bySwitchTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySameSource) as usize - ptr as usize }, + 135usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEW_SWITCH_CFG), + "::", + stringify!(bySameSource) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEW_SWITCH_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PREVIEW_SWITCH_CFG = tagNET_DVR_PREVIEW_SWITCH_CFG; +pub type LPNET_DVR_PREVIEW_SWITCH_CFG = *mut tagNET_DVR_PREVIEW_SWITCH_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_USER_COND { + pub szUserName: [::std::os::raw::c_char; 32usize], + pub byRes: [BYTE; 48usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_USER_COND() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_USER_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_USER_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szUserName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_COND), + "::", + stringify!(szUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_USER_COND = tagNET_DVR_USER_COND; +pub type LPNET_DVR_USER_COND = *mut tagNET_DVR_USER_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_USER_RIGHT_CFG { + pub dwSize: DWORD, + pub byAddMonitoringPointRight: BYTE, + pub byModMonitoringPointRight: BYTE, + pub byDelMonitoringPointRight: BYTE, + pub bySetRecordPlanRight: BYTE, + pub byDelRecordPlanRight: BYTE, + pub byEnableOrDisableRecordPlanRight: BYTE, + pub byManualRecordRight: BYTE, + pub bySetAlarmRecordRight: BYTE, + pub byRecordBackupRight: BYTE, + pub byRecordDownloadRight: BYTE, + pub byRecordDeleteRight: BYTE, + pub byDelBackupRecordRight: BYTE, + pub bySetBackupVolumeRight: BYTE, + pub byRecordPlayBackRight: BYTE, + pub byLogDeleteRight: BYTE, + pub byLogDownloadRight: BYTE, + pub byAddUserRight: BYTE, + pub byDelUserRight: BYTE, + pub byModUserRight: BYTE, + pub byAllocUserRight: BYTE, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_USER_RIGHT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 152usize, + concat!("Size of: ", stringify!(tagNET_DVR_USER_RIGHT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_USER_RIGHT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_RIGHT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddMonitoringPointRight) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_RIGHT_CFG), + "::", + stringify!(byAddMonitoringPointRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byModMonitoringPointRight) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_RIGHT_CFG), + "::", + stringify!(byModMonitoringPointRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDelMonitoringPointRight) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_RIGHT_CFG), + "::", + stringify!(byDelMonitoringPointRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySetRecordPlanRight) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_RIGHT_CFG), + "::", + stringify!(bySetRecordPlanRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDelRecordPlanRight) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_RIGHT_CFG), + "::", + stringify!(byDelRecordPlanRight) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byEnableOrDisableRecordPlanRight) as usize - ptr as usize + }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_RIGHT_CFG), + "::", + stringify!(byEnableOrDisableRecordPlanRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byManualRecordRight) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_RIGHT_CFG), + "::", + stringify!(byManualRecordRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySetAlarmRecordRight) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_RIGHT_CFG), + "::", + stringify!(bySetAlarmRecordRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordBackupRight) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_RIGHT_CFG), + "::", + stringify!(byRecordBackupRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordDownloadRight) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_RIGHT_CFG), + "::", + stringify!(byRecordDownloadRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordDeleteRight) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_RIGHT_CFG), + "::", + stringify!(byRecordDeleteRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDelBackupRecordRight) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_RIGHT_CFG), + "::", + stringify!(byDelBackupRecordRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySetBackupVolumeRight) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_RIGHT_CFG), + "::", + stringify!(bySetBackupVolumeRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordPlayBackRight) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_RIGHT_CFG), + "::", + stringify!(byRecordPlayBackRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLogDeleteRight) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_RIGHT_CFG), + "::", + stringify!(byLogDeleteRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLogDownloadRight) as usize - ptr as usize }, + 19usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_RIGHT_CFG), + "::", + stringify!(byLogDownloadRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddUserRight) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_RIGHT_CFG), + "::", + stringify!(byAddUserRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDelUserRight) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_RIGHT_CFG), + "::", + stringify!(byDelUserRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byModUserRight) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_RIGHT_CFG), + "::", + stringify!(byModUserRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAllocUserRight) as usize - ptr as usize }, + 23usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_RIGHT_CFG), + "::", + stringify!(byAllocUserRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USER_RIGHT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_USER_RIGHT_CFG = tagNET_DVR_USER_RIGHT_CFG; +pub type LPNET_DVR_USER_RIGHT_CFG = *mut tagNET_DVR_USER_RIGHT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MACHINE_MAX_NUM_CFG { + pub dwSize: DWORD, + pub dwMaxNum: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MACHINE_MAX_NUM_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_MACHINE_MAX_NUM_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MACHINE_MAX_NUM_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MACHINE_MAX_NUM_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MACHINE_MAX_NUM_CFG), + "::", + stringify!(dwMaxNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MACHINE_MAX_NUM_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MACHINE_MAX_NUM_CFG = tagNET_DVR_MACHINE_MAX_NUM_CFG; +pub type LPNETDVR_MACHINE_MAX_NUM_CFG = *mut tagNET_DVR_MACHINE_MAX_NUM_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_N_PLUS_ONE_WORK_MODE_CFG { + pub dwSize: DWORD, + pub byWorkMode: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_N_PLUS_ONE_WORK_MODE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_N_PLUS_ONE_WORK_MODE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_N_PLUS_ONE_WORK_MODE_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_N_PLUS_ONE_WORK_MODE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_N_PLUS_ONE_WORK_MODE_CFG), + "::", + stringify!(byWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_N_PLUS_ONE_WORK_MODE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_N_PLUS_ONE_WORK_MODE_CFG = tagNET_DVR_N_PLUS_ONE_WORK_MODE_CFG; +pub type LPNET_DVR_N_PLUS_ONE_WORK_MODE_CFG = *mut tagNET_DVR_N_PLUS_ONE_WORK_MODE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ADD_PARAM { + pub struIP: NET_DVR_IPADDR, + pub szPassword: [::std::os::raw::c_char; 16usize], + pub byAddType: BYTE, + pub byDisableBackup: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ADD_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 162usize, + concat!("Size of: ", stringify!(tagNET_DVR_ADD_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ADD_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADD_PARAM), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szPassword) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADD_PARAM), + "::", + stringify!(szPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddType) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADD_PARAM), + "::", + stringify!(byAddType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDisableBackup) as usize - ptr as usize }, + 161usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADD_PARAM), + "::", + stringify!(byDisableBackup) + ) + ); +} +pub type NET_DVR_ADD_PARAM = tagNET_DVR_ADD_PARAM; +pub type LPNET_DVR_ADD_PARAM = *mut tagNET_DVR_ADD_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEL_PARAM { + pub struIP: NET_DVR_IPADDR, + pub byDelType: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEL_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 145usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEL_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEL_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_PARAM), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDelType) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_PARAM), + "::", + stringify!(byDelType) + ) + ); +} +pub type NET_DVR_DEL_PARAM = tagNET_DVR_DEL_PARAM; +pub type LPNET_DVR_DEL_PARAM = *mut tagNET_DVR_DEL_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_NPO_PARAM_UNION { + pub struAddParam: NET_DVR_ADD_PARAM, + pub struDelParam: NET_DVR_DEL_PARAM, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NPO_PARAM_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 162usize, + concat!("Size of: ", stringify!(tagNET_DVR_NPO_PARAM_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NPO_PARAM_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAddParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NPO_PARAM_UNION), + "::", + stringify!(struAddParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDelParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NPO_PARAM_UNION), + "::", + stringify!(struDelParam) + ) + ); +} +pub type NET_DVR_NPO_PARAM_UNION = tagNET_DVR_NPO_PARAM_UNION; +pub type LPNET_DVR_NPO_PARAM_UNION = *mut tagNET_DVR_NPO_PARAM_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_N_PLUS_ONE_DEVICE_PARAM { + pub dwSize: DWORD, + pub unionParam: NET_DVR_NPO_PARAM_UNION, + pub byType: BYTE, + pub byRes: [BYTE; 3usize], + pub szUserName: [::std::os::raw::c_char; 32usize], + pub byRes2: [BYTE; 220usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_N_PLUS_ONE_DEVICE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 424usize, + concat!("Size of: ", stringify!(tagNET_DVR_N_PLUS_ONE_DEVICE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_N_PLUS_ONE_DEVICE_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_N_PLUS_ONE_DEVICE_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).unionParam) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_N_PLUS_ONE_DEVICE_PARAM), + "::", + stringify!(unionParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 166usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_N_PLUS_ONE_DEVICE_PARAM), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 167usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_N_PLUS_ONE_DEVICE_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szUserName) as usize - ptr as usize }, + 170usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_N_PLUS_ONE_DEVICE_PARAM), + "::", + stringify!(szUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 202usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_N_PLUS_ONE_DEVICE_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_N_PLUS_ONE_DEVICE_PARAM = tagNET_DVR_N_PLUS_ONE_DEVICE_PARAM; +pub type LPNET_DVR_N_PLUS_ONE_DEVICE_PARAM = *mut tagNET_DVR_N_PLUS_ONE_DEVICE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DATA_CALLBACK_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byDelData: BYTE, + pub byRes: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DATA_CALLBACK_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_DATA_CALLBACK_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DATA_CALLBACK_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DATA_CALLBACK_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DATA_CALLBACK_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDelData) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DATA_CALLBACK_CFG), + "::", + stringify!(byDelData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DATA_CALLBACK_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DATA_CALLBACK_CFG = tagNET_DVR_DATA_CALLBACK_CFG; +pub type LPNET_DVR_DATA_CALLBACK_CFG = *mut tagNET_DVR_DATA_CALLBACK_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HD_STATUS { + pub dwSize: DWORD, + pub bySleepStatus: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HD_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_HD_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HD_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HD_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySleepStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HD_STATUS), + "::", + stringify!(bySleepStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HD_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_HD_STATUS = tagNET_DVR_HD_STATUS; +pub type LPNET_DVR_HD_STATUS = *mut tagNET_DVR_HD_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RAID_BTS_CFG { + pub dwSize: DWORD, + pub bySpeed: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RAID_BTS_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_RAID_BTS_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RAID_BTS_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RAID_BTS_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpeed) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RAID_BTS_CFG), + "::", + stringify!(bySpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RAID_BTS_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RAID_BTS_CFG = tagNET_DVR_RAID_BTS_CFG; +pub type LPNET_DVR_RAID_BTS_CFG = *mut tagNET_DVR_RAID_BTS_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LUN_CLONE { + pub dwSize: DWORD, + pub dwSrcLunID: DWORD, + pub dwDstLunID: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LUN_CLONE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_LUN_CLONE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LUN_CLONE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LUN_CLONE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSrcLunID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LUN_CLONE), + "::", + stringify!(dwSrcLunID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDstLunID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LUN_CLONE), + "::", + stringify!(dwDstLunID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LUN_CLONE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LUN_CLONE = tagNET_DVR_LUN_CLONE; +pub type LPNET_DVR_LUN_CLONE = *mut tagNET_DVR_LUN_CLONE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LUN_EXPAND { + pub dwSize: DWORD, + pub dwLunID: DWORD, + pub dwHSize: DWORD, + pub dwLSize: DWORD, + pub szArrayIDGroup: [::std::os::raw::c_char; 32usize], + pub szNewLunName: [::std::os::raw::c_char; 16usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LUN_EXPAND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 96usize, + concat!("Size of: ", stringify!(tagNET_DVR_LUN_EXPAND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LUN_EXPAND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LUN_EXPAND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLunID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LUN_EXPAND), + "::", + stringify!(dwLunID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHSize) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LUN_EXPAND), + "::", + stringify!(dwHSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLSize) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LUN_EXPAND), + "::", + stringify!(dwLSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szArrayIDGroup) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LUN_EXPAND), + "::", + stringify!(szArrayIDGroup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szNewLunName) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LUN_EXPAND), + "::", + stringify!(szNewLunName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LUN_EXPAND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LUN_EXPAND = tagNET_DVR_LUN_EXPAND; +pub type LPNET_DVR_LUN_EXPAND = *mut tagNET_DVR_LUN_EXPAND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DVR_NET_DISK_MODIFY { + pub dwSize: DWORD, + pub szOldDvrNetDiskName: [::std::os::raw::c_char; 16usize], + pub szNewDvrNetDiskName: [::std::os::raw::c_char; 16usize], + pub struWarrantIP: NET_DVR_IPADDR, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DVR_NET_DISK_MODIFY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 212usize, + concat!("Size of: ", stringify!(tagNET_DVR_DVR_NET_DISK_MODIFY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DVR_NET_DISK_MODIFY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DVR_NET_DISK_MODIFY), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szOldDvrNetDiskName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DVR_NET_DISK_MODIFY), + "::", + stringify!(szOldDvrNetDiskName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szNewDvrNetDiskName) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DVR_NET_DISK_MODIFY), + "::", + stringify!(szNewDvrNetDiskName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWarrantIP) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DVR_NET_DISK_MODIFY), + "::", + stringify!(struWarrantIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 180usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DVR_NET_DISK_MODIFY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DVR_NET_DISK_MODIFY = tagNET_DVR_DVR_NET_DISK_MODIFY; +pub type LPNET_DVR_DVR_NET_DISK_MODIFY = *mut tagNET_DVR_DVR_NET_DISK_MODIFY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_NAS_PARAM { + pub dwSize: DWORD, + pub dwLunID: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NAS_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_NAS_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NAS_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAS_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLunID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAS_PARAM), + "::", + stringify!(dwLunID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAS_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_NAS_PARAM = tagNET_DVR_NAS_PARAM; +pub type LPNET_DVR_NAS_PARAM = *mut tagNET_DVR_NAS_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ISCSI_PARAM { + pub dwSize: DWORD, + pub dwTargetID: DWORD, + pub dwLunID: DWORD, + pub dwAccessMode: DWORD, + pub struClientIP: NET_DVR_IPADDR, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ISCSI_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 192usize, + concat!("Size of: ", stringify!(tagNET_DVR_ISCSI_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ISCSI_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ISCSI_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTargetID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ISCSI_PARAM), + "::", + stringify!(dwTargetID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLunID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ISCSI_PARAM), + "::", + stringify!(dwLunID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAccessMode) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ISCSI_PARAM), + "::", + stringify!(dwAccessMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struClientIP) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ISCSI_PARAM), + "::", + stringify!(struClientIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ISCSI_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ISCSI_PARAM = tagNET_DVR_ISCSI_PARAM; +pub type LPNET_DVR_ISCSI_PARAM = *mut tagNET_DVR_ISCSI_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FC_PARAM { + pub dwSize: DWORD, + pub dwStoreLunID: DWORD, + pub dwLogicLunID: DWORD, + pub dwHbaID: DWORD, + pub dwAccessMode: DWORD, + pub szClientWWWPN: [::std::os::raw::c_char; 32usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FC_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 84usize, + concat!("Size of: ", stringify!(tagNET_DVR_FC_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FC_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStoreLunID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_PARAM), + "::", + stringify!(dwStoreLunID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLogicLunID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_PARAM), + "::", + stringify!(dwLogicLunID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHbaID) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_PARAM), + "::", + stringify!(dwHbaID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAccessMode) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_PARAM), + "::", + stringify!(dwAccessMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szClientWWWPN) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_PARAM), + "::", + stringify!(szClientWWWPN) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FC_PARAM = tagNET_DVR_FC_PARAM; +pub type LPNET_DVR_FC_PARAM = *mut tagNET_DVR_FC_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LUN_PARAM { + pub dwHCapacity: DWORD, + pub dwLCapacity: DWORD, + pub szName: [::std::os::raw::c_char; 16usize], + pub dwBlockSize: DWORD, + pub szArrayIDGroup: [::std::os::raw::c_char; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LUN_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 60usize, + concat!("Size of: ", stringify!(tagNET_DVR_LUN_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LUN_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHCapacity) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LUN_PARAM), + "::", + stringify!(dwHCapacity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLCapacity) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LUN_PARAM), + "::", + stringify!(dwLCapacity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LUN_PARAM), + "::", + stringify!(szName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBlockSize) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LUN_PARAM), + "::", + stringify!(dwBlockSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szArrayIDGroup) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LUN_PARAM), + "::", + stringify!(szArrayIDGroup) + ) + ); +} +pub type NET_DVR_LUN_PARAM = tagNET_DVR_LUN_PARAM; +pub type LPNET_DVR_LUN_PARAM = *mut tagNET_DVR_LUN_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DVR_PARAM_ { + pub dwHCapacity: DWORD, + pub dwLCapacity: DWORD, + pub szName: [::std::os::raw::c_char; 16usize], + pub dwBlockSize: DWORD, + pub struWarrantIP: NET_DVR_IPADDR, + pub szArrayIDGroup: [::std::os::raw::c_char; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DVR_PARAM_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 204usize, + concat!("Size of: ", stringify!(tagNET_DVR_DVR_PARAM_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DVR_PARAM_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHCapacity) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DVR_PARAM_), + "::", + stringify!(dwHCapacity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLCapacity) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DVR_PARAM_), + "::", + stringify!(dwLCapacity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DVR_PARAM_), + "::", + stringify!(szName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBlockSize) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DVR_PARAM_), + "::", + stringify!(dwBlockSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWarrantIP) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DVR_PARAM_), + "::", + stringify!(struWarrantIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szArrayIDGroup) as usize - ptr as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DVR_PARAM_), + "::", + stringify!(szArrayIDGroup) + ) + ); +} +pub type NET_DVR_DVR_PARAM = tagNET_DVR_DVR_PARAM_; +pub type LPNET_DVR_DVR_PARAM = *mut tagNET_DVR_DVR_PARAM_; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_VD_UNION { + pub byUnionLen: [BYTE; 256usize], + pub struHikVDParam: NET_DVR_OPERATE_VD_PARAM, + pub struLunParam: NET_DVR_LUN_PARAM, + pub struDvrParam: NET_DVR_DVR_PARAM, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VD_UNION() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_VD_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VD_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUnionLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_UNION), + "::", + stringify!(byUnionLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHikVDParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_UNION), + "::", + stringify!(struHikVDParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLunParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_UNION), + "::", + stringify!(struLunParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDvrParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VD_UNION), + "::", + stringify!(struDvrParam) + ) + ); +} +pub type NET_DVR_VD_UNION = tagNET_DVR_VD_UNION; +pub type LPNET_DVR_VD_UNION = *mut tagNET_DVR_VD_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_OPERATE_VD_PARAM_EX { + pub byVDType: BYTE, + pub byRes1: [BYTE; 3usize], + pub uVDParam: NET_DVR_VD_UNION, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OPERATE_VD_PARAM_EX() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 292usize, + concat!("Size of: ", stringify!(tagNET_DVR_OPERATE_VD_PARAM_EX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OPERATE_VD_PARAM_EX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVDType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_VD_PARAM_EX), + "::", + stringify!(byVDType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_VD_PARAM_EX), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uVDParam) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_VD_PARAM_EX), + "::", + stringify!(uVDParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATE_VD_PARAM_EX), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_OPERATE_VD_PARAM_EX = tagNET_DVR_OPERATE_VD_PARAM_EX; +pub type LPNET_DVR_OPERATE_VD_PARAM_EX = *mut tagNET_DVR_OPERATE_VD_PARAM_EX; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CVR_ALARM { + pub szFirstType: [::std::os::raw::c_char; 32usize], + pub szFirstIndex: [::std::os::raw::c_char; 32usize], + pub szSecondType: [::std::os::raw::c_char; 32usize], + pub struTime: NET_DVR_TIME, + pub byStatus: BYTE, + pub byAlarmLevel: BYTE, + pub byRes1: [BYTE; 2usize], + pub szSecondIndex: [::std::os::raw::c_char; 32usize], + pub szThirdType: [::std::os::raw::c_char; 32usize], + pub szThirdIndex: [::std::os::raw::c_char; 32usize], + pub szFourthType: [::std::os::raw::c_char; 32usize], + pub szFourthIndex: [::std::os::raw::c_char; 32usize], + pub byRes2: [BYTE; 92usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CVR_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 376usize, + concat!("Size of: ", stringify!(tagNET_DVR_CVR_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CVR_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szFirstType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CVR_ALARM), + "::", + stringify!(szFirstType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szFirstIndex) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CVR_ALARM), + "::", + stringify!(szFirstIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szSecondType) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CVR_ALARM), + "::", + stringify!(szSecondType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CVR_ALARM), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CVR_ALARM), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmLevel) as usize - ptr as usize }, + 121usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CVR_ALARM), + "::", + stringify!(byAlarmLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 122usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CVR_ALARM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szSecondIndex) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CVR_ALARM), + "::", + stringify!(szSecondIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szThirdType) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CVR_ALARM), + "::", + stringify!(szThirdType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szThirdIndex) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CVR_ALARM), + "::", + stringify!(szThirdIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szFourthType) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CVR_ALARM), + "::", + stringify!(szFourthType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szFourthIndex) as usize - ptr as usize }, + 252usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CVR_ALARM), + "::", + stringify!(szFourthIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 284usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CVR_ALARM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CVR_ALARM = tagNET_DVR_CVR_ALARM; +pub type LPNET_DVR_CVR_ALARM = *mut tagNET_DVR_CVR_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WORKING_DEVICE_INFO { + pub struIP: NET_DVR_IPADDR, + pub byLinkStatus: BYTE, + pub byWorkStatus: BYTE, + pub byBacupStatus: BYTE, + pub bySyncProgress: BYTE, + pub struSyncBeginTime: NET_DVR_TIME_EX, + pub struSyncEndTime: NET_DVR_TIME_EX, + pub szSerialNumber: [::std::os::raw::c_char; 48usize], + pub dwSoftwareVersion: DWORD, + pub byWorkingDeviceGUID: [BYTE; 16usize], + pub szDevTypeName: [::std::os::raw::c_char; 24usize], + pub wDevType: WORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WORKING_DEVICE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(tagNET_DVR_WORKING_DEVICE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WORKING_DEVICE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKING_DEVICE_INFO), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLinkStatus) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKING_DEVICE_INFO), + "::", + stringify!(byLinkStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkStatus) as usize - ptr as usize }, + 145usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKING_DEVICE_INFO), + "::", + stringify!(byWorkStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBacupStatus) as usize - ptr as usize }, + 146usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKING_DEVICE_INFO), + "::", + stringify!(byBacupStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySyncProgress) as usize - ptr as usize }, + 147usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKING_DEVICE_INFO), + "::", + stringify!(bySyncProgress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSyncBeginTime) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKING_DEVICE_INFO), + "::", + stringify!(struSyncBeginTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSyncEndTime) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKING_DEVICE_INFO), + "::", + stringify!(struSyncEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szSerialNumber) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKING_DEVICE_INFO), + "::", + stringify!(szSerialNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSoftwareVersion) as usize - ptr as usize }, + 212usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKING_DEVICE_INFO), + "::", + stringify!(dwSoftwareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkingDeviceGUID) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKING_DEVICE_INFO), + "::", + stringify!(byWorkingDeviceGUID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDevTypeName) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKING_DEVICE_INFO), + "::", + stringify!(szDevTypeName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevType) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKING_DEVICE_INFO), + "::", + stringify!(wDevType) + ) + ); +} +pub type NET_DVR_WORKING_DEVICE_INFO = tagNET_DVR_WORKING_DEVICE_INFO; +pub type LPNET_DVR_WORKING_DEVICE_INFO = *mut tagNET_DVR_WORKING_DEVICE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REDUNDANT_DEVICE_INFO { + pub struIP: NET_DVR_IPADDR, + pub byWorkStatus: BYTE, + pub byBackupStatus: BYTE, + pub wBackupPort: WORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REDUNDANT_DEVICE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!("Size of: ", stringify!(tagNET_DVR_REDUNDANT_DEVICE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_REDUNDANT_DEVICE_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REDUNDANT_DEVICE_INFO), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkStatus) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REDUNDANT_DEVICE_INFO), + "::", + stringify!(byWorkStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBackupStatus) as usize - ptr as usize }, + 145usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REDUNDANT_DEVICE_INFO), + "::", + stringify!(byBackupStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBackupPort) as usize - ptr as usize }, + 146usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REDUNDANT_DEVICE_INFO), + "::", + stringify!(wBackupPort) + ) + ); +} +pub type NET_DVR_REDUNDANT_DEVICE_INFO = tagNET_DVR_REDUNDANT_DEVICE_INFO; +pub type LPNET_DVR_REDUNDANT_DEVICE_INFO = *mut tagNET_DVR_REDUNDANT_DEVICE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WORKING_DEVICE_INFO_V50 { + pub struWorkingDeviceInfo: NET_DVR_WORKING_DEVICE_INFO, + pub szUserName: [::std::os::raw::c_char; 32usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WORKING_DEVICE_INFO_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 324usize, + concat!("Size of: ", stringify!(tagNET_DVR_WORKING_DEVICE_INFO_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_WORKING_DEVICE_INFO_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWorkingDeviceInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKING_DEVICE_INFO_V50), + "::", + stringify!(struWorkingDeviceInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szUserName) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKING_DEVICE_INFO_V50), + "::", + stringify!(szUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 292usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WORKING_DEVICE_INFO_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WORKING_DEVICE_INFO_V50 = tagNET_DVR_WORKING_DEVICE_INFO_V50; +pub type LPNET_DVR_WORKING_DEVICE_INFO_V50 = *mut tagNET_DVR_WORKING_DEVICE_INFO_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REDUNDANT_DEVICE_INFO_V50 { + pub struRedundantDeviceInfo: NET_DVR_REDUNDANT_DEVICE_INFO, + pub szUserName: [::std::os::raw::c_char; 32usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REDUNDANT_DEVICE_INFO_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 212usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_REDUNDANT_DEVICE_INFO_V50) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_REDUNDANT_DEVICE_INFO_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRedundantDeviceInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REDUNDANT_DEVICE_INFO_V50), + "::", + stringify!(struRedundantDeviceInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szUserName) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REDUNDANT_DEVICE_INFO_V50), + "::", + stringify!(szUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 180usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REDUNDANT_DEVICE_INFO_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_REDUNDANT_DEVICE_INFO_V50 = tagNET_DVR_REDUNDANT_DEVICE_INFO_V50; +pub type LPNET_DVR_REDUNDANT_DEVICE_INFO_V50 = *mut tagNET_DVR_REDUNDANT_DEVICE_INFO_V50; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_NPO_DEV_INFO_UNION { + pub byUnionLen: [BYTE; 512usize], + pub struWorkingDeviceInfo: NET_DVR_WORKING_DEVICE_INFO, + pub struRedundantDeviceInfo: NET_DVR_REDUNDANT_DEVICE_INFO, + pub struWorkingDeviceInfoV50: NET_DVR_WORKING_DEVICE_INFO_V50, + pub struRedundantDeviceInfoV50: NET_DVR_REDUNDANT_DEVICE_INFO_V50, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NPO_DEV_INFO_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(tagNET_DVR_NPO_DEV_INFO_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NPO_DEV_INFO_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUnionLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NPO_DEV_INFO_UNION), + "::", + stringify!(byUnionLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWorkingDeviceInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NPO_DEV_INFO_UNION), + "::", + stringify!(struWorkingDeviceInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRedundantDeviceInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NPO_DEV_INFO_UNION), + "::", + stringify!(struRedundantDeviceInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWorkingDeviceInfoV50) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NPO_DEV_INFO_UNION), + "::", + stringify!(struWorkingDeviceInfoV50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRedundantDeviceInfoV50) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NPO_DEV_INFO_UNION), + "::", + stringify!(struRedundantDeviceInfoV50) + ) + ); +} +pub type NET_DVR_NPO_DEV_INFO_UNION = tagNET_DVR_NPO_DEV_INFO_UNION; +pub type LPNET_DVR_NPO_DEV_INFO_UNION = *mut tagNET_DVR_NPO_DEV_INFO_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_N_PLUS_ONE_DEVICE_INFO { + pub dwSize: DWORD, + pub unionDevInfo: NET_DVR_NPO_DEV_INFO_UNION, + pub byType: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_N_PLUS_ONE_DEVICE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 644usize, + concat!("Size of: ", stringify!(tagNET_DVR_N_PLUS_ONE_DEVICE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_N_PLUS_ONE_DEVICE_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_N_PLUS_ONE_DEVICE_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).unionDevInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_N_PLUS_ONE_DEVICE_INFO), + "::", + stringify!(unionDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 516usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_N_PLUS_ONE_DEVICE_INFO), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 517usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_N_PLUS_ONE_DEVICE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_N_PLUS_ONE_DEVICE_INFO = tagNET_DVR_N_PLUS_ONE_DEVICE_INFO; +pub type LPNET_DVR_N_PLUS_ONE_DEVICE_INFO = *mut tagNET_DVR_N_PLUS_ONE_DEVICE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_UPGRADE_IPC_PARAM { + pub struStreamInfo: [NET_DVR_STREAM_INFO; 64usize], + pub szFileName: [::std::os::raw::c_char; 260usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_UPGRADE_IPC_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4868usize, + concat!("Size of: ", stringify!(tagNET_DVR_UPGRADE_IPC_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_UPGRADE_IPC_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_IPC_PARAM), + "::", + stringify!(struStreamInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szFileName) as usize - ptr as usize }, + 4608usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_IPC_PARAM), + "::", + stringify!(szFileName) + ) + ); +} +pub type NET_DVR_UPGRADE_IPC_PARAM = tagNET_DVR_UPGRADE_IPC_PARAM; +pub type LPNET_DVR_UPGRADE_IPC_PARAM = *mut tagNET_DVR_UPGRADE_IPC_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_UPGRADE_IPC_ERR_INFO_SINGLE { + pub struStreamInfo: NET_DVR_STREAM_INFO, + pub wErrCode: WORD, + pub byRes: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_UPGRADE_IPC_ERR_INFO_SINGLE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 104usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_UPGRADE_IPC_ERR_INFO_SINGLE) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_UPGRADE_IPC_ERR_INFO_SINGLE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_IPC_ERR_INFO_SINGLE), + "::", + stringify!(struStreamInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wErrCode) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_IPC_ERR_INFO_SINGLE), + "::", + stringify!(wErrCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 74usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_IPC_ERR_INFO_SINGLE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_UPGRADE_IPC_ERR_INFO_SINGLE = tagNET_DVR_UPGRADE_IPC_ERR_INFO_SINGLE; +pub type LPNET_DVR_UPGRADE_IPC_ERR_INFO_SINGLE = *mut tagNET_DVR_UPGRADE_IPC_ERR_INFO_SINGLE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_UPGRADE_IPC_ERR_INFO { + pub struErrInfoSingle: [NET_DVR_UPGRADE_IPC_ERR_INFO_SINGLE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_UPGRADE_IPC_ERR_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 6656usize, + concat!("Size of: ", stringify!(tagNET_DVR_UPGRADE_IPC_ERR_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_UPGRADE_IPC_ERR_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struErrInfoSingle) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_IPC_ERR_INFO), + "::", + stringify!(struErrInfoSingle) + ) + ); +} +pub type NET_DVR_UPGRADE_IPC_ERR_INFO = tagNET_DVR_UPGRADE_IPC_ERR_INFO; +pub type LPNET_DVR_UPGRADE_IPC_ERR_INFO = *mut tagNET_DVR_UPGRADE_IPC_ERR_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IPC_CFG_FILE_PARAM { + pub szFileName: [::std::os::raw::c_char; 260usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPC_CFG_FILE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 292usize, + concat!("Size of: ", stringify!(tagNET_DVR_IPC_CFG_FILE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IPC_CFG_FILE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szFileName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPC_CFG_FILE_PARAM), + "::", + stringify!(szFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPC_CFG_FILE_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_IPC_CFG_FILE_PARAM = tagNET_DVR_IPC_CFG_FILE_PARAM; +pub type LPNET_DVR_IPC_CFG_FILE_PARAM = *mut tagNET_DVR_IPC_CFG_FILE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IPC_CFG_FILE_ERR_INFO_SINGLE { + pub wRow: WORD, + pub wErrCode: WORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPC_CFG_FILE_ERR_INFO_SINGLE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_IPC_CFG_FILE_ERR_INFO_SINGLE) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_IPC_CFG_FILE_ERR_INFO_SINGLE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRow) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPC_CFG_FILE_ERR_INFO_SINGLE), + "::", + stringify!(wRow) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wErrCode) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPC_CFG_FILE_ERR_INFO_SINGLE), + "::", + stringify!(wErrCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPC_CFG_FILE_ERR_INFO_SINGLE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_IPC_CFG_FILE_ERR_INFO_SINGLE = tagNET_DVR_IPC_CFG_FILE_ERR_INFO_SINGLE; +pub type LPNET_DVR_IPC_CFG_FILE_ERR_INFO_SINGLE = *mut tagNET_DVR_IPC_CFG_FILE_ERR_INFO_SINGLE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IPC_CFG_FILE_ERR_INFO { + pub struErrInfoSingle: [NET_DVR_IPC_CFG_FILE_ERR_INFO_SINGLE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPC_CFG_FILE_ERR_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2304usize, + concat!("Size of: ", stringify!(tagNET_DVR_IPC_CFG_FILE_ERR_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_IPC_CFG_FILE_ERR_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struErrInfoSingle) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPC_CFG_FILE_ERR_INFO), + "::", + stringify!(struErrInfoSingle) + ) + ); +} +pub type NET_DVR_IPC_CFG_FILE_ERR_INFO = tagNET_DVR_IPC_CFG_FILE_ERR_INFO; +pub type LPNET_DVR_IPC_CFG_FILE_ERR_INFO = *mut tagNET_DVR_IPC_CFG_FILE_ERR_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRANSFER_SWITCH { + pub dwEnable: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRANSFER_SWITCH() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_TRANSFER_SWITCH)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TRANSFER_SWITCH)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSFER_SWITCH), + "::", + stringify!(dwEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSFER_SWITCH), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TRANSFER_SWITCH = tagNET_DVR_TRANSFER_SWITCH; +pub type LPNET_DVR_TRANSFER_SWITCH = *mut tagNET_DVR_TRANSFER_SWITCH; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZ_PATTERN { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub dwPatternCmd: DWORD, + pub dwPatternID: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZ_PATTERN() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZ_PATTERN)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZ_PATTERN)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_PATTERN), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_PATTERN), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPatternCmd) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_PATTERN), + "::", + stringify!(dwPatternCmd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPatternID) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_PATTERN), + "::", + stringify!(dwPatternID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_PATTERN), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PTZ_PATTERN = tagNET_DVR_PTZ_PATTERN; +pub type LPNET_DVR_PTZ_PATTERN = *mut tagNET_DVR_PTZ_PATTERN; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZ_PARKACTION_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byOneTouchSwitch: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwParkTime: DWORD, + pub wActionType: WORD, + pub wID: WORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZ_PARKACTION_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZ_PARKACTION_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZ_PARKACTION_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_PARKACTION_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_PARKACTION_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOneTouchSwitch) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_PARKACTION_CFG), + "::", + stringify!(byOneTouchSwitch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_PARKACTION_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwParkTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_PARKACTION_CFG), + "::", + stringify!(dwParkTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wActionType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_PARKACTION_CFG), + "::", + stringify!(wActionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wID) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_PARKACTION_CFG), + "::", + stringify!(wID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_PARKACTION_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PTZ_PARKACTION_CFG = tagNET_DVR_PTZ_PARKACTION_CFG; +pub type LPNET_DVR_PTZ_PARKACTION_CFG = *mut tagNET_DVR_PTZ_PARKACTION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZ_MANUALTRACE { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub struPoint: NET_VCA_POINT, + pub byTrackType: BYTE, + pub byLinkageType: BYTE, + pub byRes: [BYTE; 2usize], + pub struPointEnd: NET_VCA_POINT, + pub struTime: NET_DVR_TIME_V30, + pub dwSerialNo: DWORD, + pub byRes1: [BYTE; 36usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZ_MANUALTRACE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZ_MANUALTRACE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZ_MANUALTRACE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_MANUALTRACE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_MANUALTRACE), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPoint) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_MANUALTRACE), + "::", + stringify!(struPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTrackType) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_MANUALTRACE), + "::", + stringify!(byTrackType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLinkageType) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_MANUALTRACE), + "::", + stringify!(byLinkageType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_MANUALTRACE), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPointEnd) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_MANUALTRACE), + "::", + stringify!(struPointEnd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_MANUALTRACE), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSerialNo) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_MANUALTRACE), + "::", + stringify!(dwSerialNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_MANUALTRACE), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_PTZ_MANUALTRACE = tagNET_DVR_PTZ_MANUALTRACE; +pub type LPNET_DVR_PTZ_MANUALTRACE = *mut tagNET_DVR_PTZ_MANUALTRACE; +pub const tagVQD_TYPE_VQD_BLUR_FLAG: tagVQD_TYPE = 1; +pub const tagVQD_TYPE_VQD_LUMA_FLAG: tagVQD_TYPE = 2; +pub const tagVQD_TYPE_VQD_CHROMA_FLAG: tagVQD_TYPE = 4; +pub const tagVQD_TYPE_VQD_SNOW_FLAG: tagVQD_TYPE = 8; +pub const tagVQD_TYPE_VQD_STREAK_FLAG: tagVQD_TYPE = 16; +pub const tagVQD_TYPE_VQD_FREEZE_FLAG: tagVQD_TYPE = 32; +pub const tagVQD_TYPE_VQD_SIGLOSE_FLAG: tagVQD_TYPE = 64; +pub const tagVQD_TYPE_VQD_PTZ_FLAG: tagVQD_TYPE = 128; +pub type tagVQD_TYPE = ::std::os::raw::c_uint; +pub use self::tagVQD_TYPE as VQD_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VQD_LOOP_DIAGNOSE_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub byVQDTypeEnable: [BYTE; 32usize], + pub byThresholdValue: [BYTE; 32usize], + pub struAlarmHandleType: NET_DVR_HANDLEEXCEPTION_V40, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub struHolidayAlarmTime: [NET_DVR_SCHEDTIME; 8usize], + pub byRes: [BYTE; 324usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VQD_LOOP_DIAGNOSE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 984usize, + concat!("Size of: ", stringify!(tagNET_DVR_VQD_LOOP_DIAGNOSE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VQD_LOOP_DIAGNOSE_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_LOOP_DIAGNOSE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_LOOP_DIAGNOSE_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_LOOP_DIAGNOSE_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVQDTypeEnable) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_LOOP_DIAGNOSE_CFG), + "::", + stringify!(byVQDTypeEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byThresholdValue) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_LOOP_DIAGNOSE_CFG), + "::", + stringify!(byThresholdValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmHandleType) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_LOOP_DIAGNOSE_CFG), + "::", + stringify!(struAlarmHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 404usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_LOOP_DIAGNOSE_CFG), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHolidayAlarmTime) as usize - ptr as usize }, + 628usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_LOOP_DIAGNOSE_CFG), + "::", + stringify!(struHolidayAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 660usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_LOOP_DIAGNOSE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VQD_LOOP_DIAGNOSE_CFG = tagNET_DVR_VQD_LOOP_DIAGNOSE_CFG; +pub type LPNET_DVR_VQD_LOOP_DIAGNOSE_CFG = *mut tagNET_DVR_VQD_LOOP_DIAGNOSE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VQD_DIAGNOSE_EXCEPTION_INFO { + pub dwChannelNO: DWORD, + pub dwVQDType: DWORD, + pub struDiagnoseTime: NET_DVR_TIME, + pub byScoreValue: BYTE, + pub byRes: [BYTE; 27usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VQD_DIAGNOSE_EXCEPTION_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 60usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_VQD_DIAGNOSE_EXCEPTION_INFO) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VQD_DIAGNOSE_EXCEPTION_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannelNO) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_DIAGNOSE_EXCEPTION_INFO), + "::", + stringify!(dwChannelNO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVQDType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_DIAGNOSE_EXCEPTION_INFO), + "::", + stringify!(dwVQDType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDiagnoseTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_DIAGNOSE_EXCEPTION_INFO), + "::", + stringify!(struDiagnoseTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScoreValue) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_DIAGNOSE_EXCEPTION_INFO), + "::", + stringify!(byScoreValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_DIAGNOSE_EXCEPTION_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VQD_DIAGNOSE_EXCEPTION_INFO = tagNET_DVR_VQD_DIAGNOSE_EXCEPTION_INFO; +pub type LPNET_DVR_VQD_DIAGNOSE_EXCEPTION_INFO = *mut tagNET_DVR_VQD_DIAGNOSE_EXCEPTION_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VQD_DIAGNOSE_INFO { + pub dwSize: DWORD, + pub struVQDDiagnoseExceptionInfo: NET_DVR_VQD_DIAGNOSE_EXCEPTION_INFO, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VQD_DIAGNOSE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(tagNET_DVR_VQD_DIAGNOSE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VQD_DIAGNOSE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_DIAGNOSE_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).struVQDDiagnoseExceptionInfo) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VQD_DIAGNOSE_INFO), + "::", + stringify!(struVQDDiagnoseExceptionInfo) + ) + ); +} +pub type NET_DVR_VQD_DIAGNOSE_INFO = tagNET_DVR_VQD_DIAGNOSE_INFO; +pub type LPNET_DVR_VQD_DIAGNOSE_INFO = *mut tagNET_DVR_VQD_DIAGNOSE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEC_RESOURCE_LIST { + pub dwSize: DWORD, + pub byDecStatus: [BYTE; 120usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEC_RESOURCE_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 156usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEC_RESOURCE_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEC_RESOURCE_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_RESOURCE_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDecStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_RESOURCE_LIST), + "::", + stringify!(byDecStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_RESOURCE_LIST), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DEC_RESOURCE_LIST = tagNET_DVR_DEC_RESOURCE_LIST; +pub type LPNET_DVR_DEC_RESOURCE_LIST = *mut tagNET_DVR_DEC_RESOURCE_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEC_APPLICANT_INFO { + pub dwSize: DWORD, + pub dwDecResource: DWORD, + pub dwChannel: DWORD, + pub struIP: NET_DVR_IPADDR, + pub wPort: WORD, + pub byRes: [BYTE; 18usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEC_APPLICANT_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 176usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEC_APPLICANT_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEC_APPLICANT_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_APPLICANT_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDecResource) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_APPLICANT_INFO), + "::", + stringify!(dwDecResource) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_APPLICANT_INFO), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_APPLICANT_INFO), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_APPLICANT_INFO), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 158usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_APPLICANT_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DEC_APPLICANT_INFO = tagNET_DVR_DEC_APPLICANT_INFO; +pub type LPNET_DVR_DEC_APPLICANT_INFO = *mut tagNET_DVR_DEC_APPLICANT_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEC_RESOURCE_INFO { + pub dwSize: DWORD, + pub dwSlotNum: DWORD, + pub struIP: NET_DVR_IPADDR, + pub wPort: WORD, + pub byRes1: [BYTE; 2usize], + pub dwDecChan: DWORD, + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEC_RESOURCE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 240usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEC_RESOURCE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEC_RESOURCE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_RESOURCE_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSlotNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_RESOURCE_INFO), + "::", + stringify!(dwSlotNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_RESOURCE_INFO), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_RESOURCE_INFO), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 154usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_RESOURCE_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDecChan) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_RESOURCE_INFO), + "::", + stringify!(dwDecChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_RESOURCE_INFO), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_RESOURCE_INFO), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_RESOURCE_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DEC_RESOURCE_INFO = tagNET_DVR_DEC_RESOURCE_INFO; +pub type LPNET_DVR_DEC_RESOURCE_INFO = *mut tagNET_DVR_DEC_RESOURCE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEC_CHAN_COND { + pub dwSize: DWORD, + pub dwSlotNum: DWORD, + pub dwDecChan: DWORD, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEC_CHAN_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEC_CHAN_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEC_CHAN_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_CHAN_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSlotNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_CHAN_COND), + "::", + stringify!(dwSlotNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDecChan) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_CHAN_COND), + "::", + stringify!(dwDecChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_CHAN_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DEC_CHAN_COND = tagNET_DVR_DEC_CHAN_COND; +pub type LPNET_DVR_DEC_CHAN_COND = *mut tagNET_DVR_DEC_CHAN_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEC_YUV_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwYUVAddress: [DWORD; 3usize], + pub wWidth: WORD, + pub wHeight: WORD, + pub byEnableAudio: BYTE, + pub byRes2: [BYTE; 3usize], + pub dwAudioAddr: DWORD, + pub byRes3: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEC_YUV_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEC_YUV_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEC_YUV_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_YUV_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_YUV_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_YUV_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwYUVAddress) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_YUV_CFG), + "::", + stringify!(dwYUVAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wWidth) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_YUV_CFG), + "::", + stringify!(wWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHeight) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_YUV_CFG), + "::", + stringify!(wHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableAudio) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_YUV_CFG), + "::", + stringify!(byEnableAudio) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_YUV_CFG), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAudioAddr) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_YUV_CFG), + "::", + stringify!(dwAudioAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_YUV_CFG), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_DEC_YUV_CFG = tagNET_DVR_DEC_YUV_CFG; +pub type LPNET_DVR_DEC_YUV_CFG = *mut tagNET_DVR_DEC_YUV_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INPUT_INFO { + pub dwSize: DWORD, + pub byChanType: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwChanNo: DWORD, + pub dwSubChanNo: DWORD, + pub dwVariableNo: DWORD, + pub byRemoteType: BYTE, + pub byLinkageIPCType: BYTE, + pub byLinkageTriggerType: BYTE, + pub byRes2: [BYTE; 57usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INPUT_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_INPUT_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INPUT_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_INFO), + "::", + stringify!(byChanType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChanNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_INFO), + "::", + stringify!(dwChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSubChanNo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_INFO), + "::", + stringify!(dwSubChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVariableNo) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_INFO), + "::", + stringify!(dwVariableNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRemoteType) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_INFO), + "::", + stringify!(byRemoteType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLinkageIPCType) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_INFO), + "::", + stringify!(byLinkageIPCType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLinkageTriggerType) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_INFO), + "::", + stringify!(byLinkageTriggerType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 23usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_INPUT_INFO = tagNET_DVR_INPUT_INFO; +pub type LPNET_DVR_INPUT_INFO = *mut tagNET_DVR_INPUT_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARM_VARIABLE_CFG { + pub dwSize: DWORD, + pub wVariableIndex: WORD, + pub wVariableType: WORD, + pub sDescribe: [BYTE; 32usize], + pub byLimitLineType: BYTE, + pub byRemoteType: BYTE, + pub byOsdEnabled: BYTE, + pub byRes: [BYTE; 29usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARM_VARIABLE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARM_VARIABLE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARM_VARIABLE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_VARIABLE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wVariableIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_VARIABLE_CFG), + "::", + stringify!(wVariableIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wVariableType) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_VARIABLE_CFG), + "::", + stringify!(wVariableType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDescribe) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_VARIABLE_CFG), + "::", + stringify!(sDescribe) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLimitLineType) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_VARIABLE_CFG), + "::", + stringify!(byLimitLineType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRemoteType) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_VARIABLE_CFG), + "::", + stringify!(byRemoteType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOsdEnabled) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_VARIABLE_CFG), + "::", + stringify!(byOsdEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 43usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_VARIABLE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARM_VARIABLE_CFG = tagNET_DVR_ALARM_VARIABLE_CFG; +pub type LPNET_DVR_ALARM_VARIABLE_CFG = *mut tagNET_DVR_ALARM_VARIABLE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARM_SENSOR_POINT_CFG { + pub nMeasureHigh: ::std::os::raw::c_int, + pub nMeasureLow: ::std::os::raw::c_int, + pub byAlarmMode: BYTE, + pub byRes1: [BYTE; 3usize], + pub nAlarmValue: [::std::os::raw::c_int; 4usize], + pub dwOsdCfg: DWORD, + pub dwSensitive: DWORD, + pub dwIPChanOsd: DWORD, + pub szOSDUnit: [::std::os::raw::c_char; 8usize], + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARM_SENSOR_POINT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARM_SENSOR_POINT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARM_SENSOR_POINT_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nMeasureHigh) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SENSOR_POINT_CFG), + "::", + stringify!(nMeasureHigh) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nMeasureLow) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SENSOR_POINT_CFG), + "::", + stringify!(nMeasureLow) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SENSOR_POINT_CFG), + "::", + stringify!(byAlarmMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SENSOR_POINT_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nAlarmValue) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SENSOR_POINT_CFG), + "::", + stringify!(nAlarmValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOsdCfg) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SENSOR_POINT_CFG), + "::", + stringify!(dwOsdCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSensitive) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SENSOR_POINT_CFG), + "::", + stringify!(dwSensitive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIPChanOsd) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SENSOR_POINT_CFG), + "::", + stringify!(dwIPChanOsd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szOSDUnit) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SENSOR_POINT_CFG), + "::", + stringify!(szOSDUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SENSOR_POINT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARM_SENSOR_POINT_CFG = tagNET_DVR_ALARM_SENSOR_POINT_CFG; +pub type LPNET_DVR_ALARM_SENSOR_POINT_CFG = *mut tagNET_DVR_ALARM_SENSOR_POINT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARM_SWITCH_POINT_CFG { + pub dwIPCChanOsd: DWORD, + pub byRes: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARM_SWITCH_POINT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARM_SWITCH_POINT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARM_SWITCH_POINT_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIPCChanOsd) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SWITCH_POINT_CFG), + "::", + stringify!(dwIPCChanOsd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SWITCH_POINT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARM_SWITCH_POINT_CFG = tagNET_DVR_ALARM_SWITCH_POINT_CFG; +pub type LPNET_DVR_ALARM_SWITCH_POINT_CFG = *mut tagNET_DVR_ALARM_SWITCH_POINT_CFG; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_ALARM_POINT_PARAM_UNION { + pub byLength: [BYTE; 64usize], + pub struSensor: NET_DVR_ALARM_SENSOR_POINT_CFG, + pub struSwitch: NET_DVR_ALARM_SWITCH_POINT_CFG, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARM_POINT_PARAM_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARM_POINT_PARAM_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARM_POINT_PARAM_UNION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLength) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_POINT_PARAM_UNION), + "::", + stringify!(byLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSensor) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_POINT_PARAM_UNION), + "::", + stringify!(struSensor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSwitch) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_POINT_PARAM_UNION), + "::", + stringify!(struSwitch) + ) + ); +} +pub type NET_DVR_ALARM_POINT_PARAM_UNION = tagNET_DVR_ALARM_POINT_PARAM_UNION; +pub type LPNET_DVR_ALARM_POINT_PARAM_UNION = *mut tagNET_DVR_ALARM_POINT_PARAM_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_ALARM_POINT_CFG { + pub dwSize: DWORD, + pub dwPointNo: DWORD, + pub sPointDescribe: [BYTE; 32usize], + pub struPointParam: NET_DVR_ALARM_POINT_PARAM_UNION, + pub byPointType: BYTE, + pub byChanType: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwChanNo: DWORD, + pub dwSubChanNo: DWORD, + pub dwVariableNo: DWORD, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARM_POINT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARM_POINT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARM_POINT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_POINT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPointNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_POINT_CFG), + "::", + stringify!(dwPointNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPointDescribe) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_POINT_CFG), + "::", + stringify!(sPointDescribe) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPointParam) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_POINT_CFG), + "::", + stringify!(struPointParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPointType) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_POINT_CFG), + "::", + stringify!(byPointType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanType) as usize - ptr as usize }, + 105usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_POINT_CFG), + "::", + stringify!(byChanType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 106usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_POINT_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChanNo) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_POINT_CFG), + "::", + stringify!(dwChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSubChanNo) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_POINT_CFG), + "::", + stringify!(dwSubChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVariableNo) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_POINT_CFG), + "::", + stringify!(dwVariableNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_POINT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARM_POINT_CFG = tagNET_DVR_ALARM_POINT_CFG; +pub type LPNET_DVR_ALARM_POINT_CFG = *mut tagNET_DVR_ALARM_POINT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_SEARCH_CONDITION { + pub dwSize: DWORD, + pub byMajorType: BYTE, + pub byMinorType: BYTE, + pub byRes1: [BYTE; 2usize], + pub struStartTime: NET_DVR_TIME, + pub struStopTime: NET_DVR_TIME, + pub byChanType: BYTE, + pub byRes2: [BYTE; 3usize], + pub dwChanNo: DWORD, + pub dwSubChanNo: DWORD, + pub dwVariableNo: DWORD, + pub dwPointNo: DWORD, + pub byRes3: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_SEARCH_CONDITION() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_SEARCH_CONDITION> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_SEARCH_CONDITION>(), + 108usize, + concat!("Size of: ", stringify!(_NET_DVR_SEARCH_CONDITION)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_SEARCH_CONDITION>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_SEARCH_CONDITION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_SEARCH_CONDITION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMajorType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_SEARCH_CONDITION), + "::", + stringify!(byMajorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMinorType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_SEARCH_CONDITION), + "::", + stringify!(byMinorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_SEARCH_CONDITION), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_SEARCH_CONDITION), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_SEARCH_CONDITION), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanType) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_SEARCH_CONDITION), + "::", + stringify!(byChanType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 57usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_SEARCH_CONDITION), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChanNo) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_SEARCH_CONDITION), + "::", + stringify!(dwChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSubChanNo) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_SEARCH_CONDITION), + "::", + stringify!(dwSubChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVariableNo) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_SEARCH_CONDITION), + "::", + stringify!(dwVariableNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPointNo) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_SEARCH_CONDITION), + "::", + stringify!(dwPointNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_SEARCH_CONDITION), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_SEARCH_CONDITION = _NET_DVR_SEARCH_CONDITION; +pub type LPNET_DVR_SEARCH_CONDITION = *mut _NET_DVR_SEARCH_CONDITION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_HISTORY_DATA { + pub dwSize: DWORD, + pub struTime: NET_DVR_TIME, + pub byChanType: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwChanNo: DWORD, + pub dwSubChanNo: DWORD, + pub dwVariableNo: DWORD, + pub dwPointNo: DWORD, + pub iData: ::std::os::raw::c_int, + pub byDataType: BYTE, + pub byRes2: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_HISTORY_DATA() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_HISTORY_DATA> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_HISTORY_DATA>(), + 84usize, + concat!("Size of: ", stringify!(_NET_DVR_HISTORY_DATA)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_HISTORY_DATA>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_HISTORY_DATA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_HISTORY_DATA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_HISTORY_DATA), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanType) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_HISTORY_DATA), + "::", + stringify!(byChanType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 29usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_HISTORY_DATA), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChanNo) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_HISTORY_DATA), + "::", + stringify!(dwChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSubChanNo) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_HISTORY_DATA), + "::", + stringify!(dwSubChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVariableNo) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_HISTORY_DATA), + "::", + stringify!(dwVariableNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPointNo) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_HISTORY_DATA), + "::", + stringify!(dwPointNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iData) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_HISTORY_DATA), + "::", + stringify!(iData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataType) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_HISTORY_DATA), + "::", + stringify!(byDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 53usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_HISTORY_DATA), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_HISTORY_DATA = _NET_DVR_HISTORY_DATA; +pub type LPNET_DVR_HISTORY_DATA = *mut _NET_DVR_HISTORY_DATA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_ALARM_MODE_CFG { + pub dwSize: DWORD, + pub byDataUploadMode: BYTE, + pub byRes: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_ALARM_MODE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMHOST_ALARM_MODE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_ALARM_MODE_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ALARM_MODE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataUploadMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ALARM_MODE_CFG), + "::", + stringify!(byDataUploadMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_ALARM_MODE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_ALARM_MODE_CFG = tagNET_DVR_ALARMHOST_ALARM_MODE_CFG; +pub type LPNET_DVR_ALARMHOST_ALARM_MODE_CFG = *mut tagNET_DVR_ALARMHOST_ALARM_MODE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_POINT_VALUE { + pub byChanType: BYTE, + pub byPointType: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwChanNo: DWORD, + pub dwSubChanNo: DWORD, + pub dwVariableNo: DWORD, + pub dwPointNo: DWORD, + pub iValue: ::std::os::raw::c_int, + pub iValueEx: ::std::os::raw::c_int, + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_POINT_VALUE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMHOST_POINT_VALUE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_POINT_VALUE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_POINT_VALUE), + "::", + stringify!(byChanType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPointType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_POINT_VALUE), + "::", + stringify!(byPointType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_POINT_VALUE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChanNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_POINT_VALUE), + "::", + stringify!(dwChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSubChanNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_POINT_VALUE), + "::", + stringify!(dwSubChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVariableNo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_POINT_VALUE), + "::", + stringify!(dwVariableNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPointNo) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_POINT_VALUE), + "::", + stringify!(dwPointNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iValue) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_POINT_VALUE), + "::", + stringify!(iValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iValueEx) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_POINT_VALUE), + "::", + stringify!(iValueEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_POINT_VALUE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_POINT_VALUE = tagNET_DVR_ALARMHOST_POINT_VALUE; +pub type LPNET_DVR_ALARMHOST_POINT_VALUE = *mut tagNET_DVR_ALARMHOST_POINT_VALUE; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_ALARMHOST_DATA_UNION { + pub byLength: [BYTE; 40usize], + pub struPointValue: NET_DVR_ALARMHOST_POINT_VALUE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_DATA_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMHOST_DATA_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMHOST_DATA_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLength) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_DATA_UNION), + "::", + stringify!(byLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPointValue) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_DATA_UNION), + "::", + stringify!(struPointValue) + ) + ); +} +pub type NET_DVR_ALARMHOST_DATA_UNION = tagNET_DVR_ALARMHOST_DATA_UNION; +pub type LPNET_DVR_ALARMHOST_DATA_UNION = *mut tagNET_DVR_ALARMHOST_DATA_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_DATA_UPLOAD { + pub dwSize: DWORD, + pub byDataType: BYTE, + pub byRes1: [BYTE; 3usize], + pub struAlarmData: NET_DVR_ALARMHOST_DATA_UNION, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_DATA_UPLOAD() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMHOST_DATA_UPLOAD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_DATA_UPLOAD) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_DATA_UPLOAD), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_DATA_UPLOAD), + "::", + stringify!(byDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_DATA_UPLOAD), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmData) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_DATA_UPLOAD), + "::", + stringify!(struAlarmData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_DATA_UPLOAD), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ALARMHOST_DATA_UPLOAD = tagNET_DVR_ALARMHOST_DATA_UPLOAD; +pub type LPNET_DVR_ALARMHOST_DATA_UPLOAD = *mut tagNET_DVR_ALARMHOST_DATA_UPLOAD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INPUTVOLUME { + pub dwSize: DWORD, + pub byAudioInputChan: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INPUTVOLUME() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_INPUTVOLUME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INPUTVOLUME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTVOLUME), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioInputChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTVOLUME), + "::", + stringify!(byAudioInputChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTVOLUME), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INPUTVOLUME = tagNET_DVR_INPUTVOLUME; +pub type LPNET_DVR_INPUTVOLUME = *mut tagNET_DVR_INPUTVOLUME; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUDIOOUT_VOLUME { + pub dwSize: DWORD, + pub byAudioOutVolume: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUDIOOUT_VOLUME() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUDIOOUT_VOLUME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AUDIOOUT_VOLUME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIOOUT_VOLUME), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioOutVolume) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIOOUT_VOLUME), + "::", + stringify!(byAudioOutVolume) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIOOUT_VOLUME), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AUDIOOUT_VOLUME = tagNET_DVR_AUDIOOUT_VOLUME; +pub type LPNET_DVR_AUDIOOUT_VOLUME = *mut tagNET_DVR_AUDIOOUT_VOLUME; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FUZZY_UPGRADE { + pub dwSize: DWORD, + pub sUpgradeInfo: [::std::os::raw::c_char; 48usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FUZZY_UPGRADE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 116usize, + concat!("Size of: ", stringify!(tagNET_DVR_FUZZY_UPGRADE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FUZZY_UPGRADE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUZZY_UPGRADE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUpgradeInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUZZY_UPGRADE), + "::", + stringify!(sUpgradeInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUZZY_UPGRADE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FUZZY_UPGRADE = tagNET_DVR_FUZZY_UPGRADE; +pub type LPNET_DVR_FUZZY_UPGRADE = *mut tagNET_DVR_FUZZY_UPGRADE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RS485_WORK_MODE { + pub dwSize: DWORD, + pub byWorkMode: BYTE, + pub byRes: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RS485_WORK_MODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_RS485_WORK_MODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RS485_WORK_MODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RS485_WORK_MODE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RS485_WORK_MODE), + "::", + stringify!(byWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RS485_WORK_MODE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RS485_WORK_MODE = tagNET_DVR_RS485_WORK_MODE; +pub type LPNET_DVR_RS485_WORK_MODE = *mut tagNET_DVR_RS485_WORK_MODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRANSPARENT_CLIENT_SINGLE { + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub struIP: NET_DVR_IPADDR, + pub wPort: WORD, + pub byRes2: [BYTE; 18usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRANSPARENT_CLIENT_SINGLE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 168usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_TRANSPARENT_CLIENT_SINGLE) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_TRANSPARENT_CLIENT_SINGLE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSPARENT_CLIENT_SINGLE), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSPARENT_CLIENT_SINGLE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSPARENT_CLIENT_SINGLE), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSPARENT_CLIENT_SINGLE), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSPARENT_CLIENT_SINGLE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_TRANSPARENT_CLIENT_SINGLE = tagNET_DVR_TRANSPARENT_CLIENT_SINGLE; +pub type LPNET_DVR_TRANSPARENT_CLIENT_SINGLE = *mut tagNET_DVR_TRANSPARENT_CLIENT_SINGLE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRANSPARENT_SERVER_SINGLE { + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub struIP: NET_DVR_IPADDR, + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRANSPARENT_SERVER_SINGLE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 164usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_TRANSPARENT_SERVER_SINGLE) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_TRANSPARENT_SERVER_SINGLE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSPARENT_SERVER_SINGLE), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSPARENT_SERVER_SINGLE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSPARENT_SERVER_SINGLE), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSPARENT_SERVER_SINGLE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_TRANSPARENT_SERVER_SINGLE = tagNET_DVR_TRANSPARENT_SERVER_SINGLE; +pub type LPNET_DVR_TRANSPARENT_SERVER_SINGLE = *mut tagNET_DVR_TRANSPARENT_SERVER_SINGLE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRANSPARENT_CLIENT_MODE { + pub struClientSingle: [NET_DVR_TRANSPARENT_CLIENT_SINGLE; 4usize], + pub byRes: [BYTE; 320usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRANSPARENT_CLIENT_MODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 992usize, + concat!("Size of: ", stringify!(tagNET_DVR_TRANSPARENT_CLIENT_MODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_TRANSPARENT_CLIENT_MODE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struClientSingle) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSPARENT_CLIENT_MODE), + "::", + stringify!(struClientSingle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 672usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSPARENT_CLIENT_MODE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TRANSPARENT_CLIENT_MODE = tagNET_DVR_TRANSPARENT_CLIENT_MODE; +pub type LPNET_DVR_TRANSPARENT_CLIENT_MODE = *mut tagNET_DVR_TRANSPARENT_CLIENT_MODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRANSPARENT_SERVER_MODE { + pub wPort: WORD, + pub byRes1: [BYTE; 2usize], + pub struServerSingle: [NET_DVR_TRANSPARENT_SERVER_SINGLE; 4usize], + pub byRes2: [BYTE; 332usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRANSPARENT_SERVER_MODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 992usize, + concat!("Size of: ", stringify!(tagNET_DVR_TRANSPARENT_SERVER_MODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_TRANSPARENT_SERVER_MODE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSPARENT_SERVER_MODE), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSPARENT_SERVER_MODE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struServerSingle) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSPARENT_SERVER_MODE), + "::", + stringify!(struServerSingle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 660usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSPARENT_SERVER_MODE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_TRANSPARENT_SERVER_MODE = tagNET_DVR_TRANSPARENT_SERVER_MODE; +pub type LPNET_DVR_TRANSPARENT_SERVER_MODE = *mut tagNET_DVR_TRANSPARENT_SERVER_MODE; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_TRANSPARENT_CHAN_WORK_MODE_UNION { + pub byRes: [BYTE; 512usize], + pub struClientMode: NET_DVR_TRANSPARENT_CLIENT_MODE, + pub struServerMode: NET_DVR_TRANSPARENT_SERVER_MODE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRANSPARENT_CHAN_WORK_MODE_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 992usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_TRANSPARENT_CHAN_WORK_MODE_UNION) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_TRANSPARENT_CHAN_WORK_MODE_UNION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSPARENT_CHAN_WORK_MODE_UNION), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struClientMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSPARENT_CHAN_WORK_MODE_UNION), + "::", + stringify!(struClientMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struServerMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSPARENT_CHAN_WORK_MODE_UNION), + "::", + stringify!(struServerMode) + ) + ); +} +pub type NET_DVR_TRANSPARENT_CHAN_WORK_MODE_UNION = tagNET_DVR_TRANSPARENT_CHAN_WORK_MODE_UNION; +pub type LPNET_DVR_TRANSPARENT_CHAN_WORK_MODE_UNION = + *mut tagNET_DVR_TRANSPARENT_CHAN_WORK_MODE_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_TRANSPARENT_CHAN_CFG { + pub dwSize: DWORD, + pub byWorkMode: BYTE, + pub byRes: [BYTE; 3usize], + pub struTransparentPara: NET_DVR_TRANSPARENT_CHAN_WORK_MODE_UNION, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRANSPARENT_CHAN_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1000usize, + concat!("Size of: ", stringify!(tagNET_DVR_TRANSPARENT_CHAN_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TRANSPARENT_CHAN_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSPARENT_CHAN_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSPARENT_CHAN_CFG), + "::", + stringify!(byWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSPARENT_CHAN_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTransparentPara) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSPARENT_CHAN_CFG), + "::", + stringify!(struTransparentPara) + ) + ); +} +pub type NET_DVR_TRANSPARENT_CHAN_CFG = tagNET_DVR_TRANSPARENT_CHAN_CFG; +pub type LPNET_DVR_TRANSPARENT_CHAN_CFG = *mut tagNET_DVR_TRANSPARENT_CHAN_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_NAKED_DATA_INFO { + pub sSocketIP: [::std::os::raw::c_char; 128usize], + pub wSocktPort: WORD, + pub byRes: [BYTE; 258usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NAKED_DATA_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 388usize, + concat!("Size of: ", stringify!(tagNET_DVR_NAKED_DATA_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NAKED_DATA_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSocketIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAKED_DATA_INFO), + "::", + stringify!(sSocketIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSocktPort) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAKED_DATA_INFO), + "::", + stringify!(wSocktPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 130usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAKED_DATA_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_NAKED_DATA_INFO = tagNET_DVR_NAKED_DATA_INFO; +pub type LPNET_DVR_NAKED_DATA_INFO = *mut tagNET_DVR_NAKED_DATA_INFO; +pub const tagNAKED_DATA_TYPE_NAKED_DATA_TYPE_NOT_DEFINED: tagNAKED_DATA_TYPE = 0; +pub const tagNAKED_DATA_TYPE_NAKED_DATA_TYPE_POS_INFO: tagNAKED_DATA_TYPE = 1; +pub type tagNAKED_DATA_TYPE = ::std::os::raw::c_uint; +pub use self::tagNAKED_DATA_TYPE as NAKED_DATA_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_NAKED_DATA_PARAM { + pub wPort: WORD, + pub byRes: [BYTE; 130usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NAKED_DATA_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_NAKED_DATA_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NAKED_DATA_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAKED_DATA_PARAM), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NAKED_DATA_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_NAKED_DATA_PARAM = tagNET_DVR_NAKED_DATA_PARAM; +pub type LPNET_DVR_NAKED_DATA_PARAM = *mut tagNET_DVR_NAKED_DATA_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_POS_INFO { + pub struVerHead: NET_DVR_STRUCTHEAD, + pub dwChannelNum: DWORD, + pub byRes: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_POS_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_POS_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_POS_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVerHead) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POS_INFO), + "::", + stringify!(struVerHead) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannelNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POS_INFO), + "::", + stringify!(dwChannelNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POS_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_POS_INFO = tagNET_DVR_POS_INFO; +pub type LPNET_DVR_POS_INFO = *mut tagNET_DVR_POS_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_POS_OSD_REGION { + pub struStart: NET_VCA_POINT, + pub struEnd: NET_VCA_POINT, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_POS_OSD_REGION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_POS_OSD_REGION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_POS_OSD_REGION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStart) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POS_OSD_REGION), + "::", + stringify!(struStart) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEnd) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POS_OSD_REGION), + "::", + stringify!(struEnd) + ) + ); +} +pub type NET_DVR_POS_OSD_REGION = tagNET_DVR_POS_OSD_REGION; +pub type LPNET_DVR_POS_OSD_REGION = *mut tagNET_DVR_POS_OSD_REGION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_POS_ACTION { + pub dwDelayTime: DWORD, + pub byPrevOsd: BYTE, + pub byRes1: [BYTE; 3usize], + pub struOsdPosInfo: NET_DVR_POS_OSD_REGION, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_POS_ACTION() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(NET_DVR_POS_ACTION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_POS_ACTION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDelayTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POS_ACTION), + "::", + stringify!(dwDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPrevOsd) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POS_ACTION), + "::", + stringify!(byPrevOsd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POS_ACTION), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOsdPosInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POS_ACTION), + "::", + stringify!(struOsdPosInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POS_ACTION), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_POS_ACTION = *mut NET_DVR_POS_ACTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_GENERIC_START { + pub sData: [BYTE; 128usize], + pub byExclusive: BYTE, + pub byFlagType: BYTE, + pub byRes: [BYTE; 2usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_GENERIC_START() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(NET_DVR_GENERIC_START)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_GENERIC_START)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sData) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERIC_START), + "::", + stringify!(sData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExclusive) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERIC_START), + "::", + stringify!(byExclusive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlagType) as usize - ptr as usize }, + 129usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERIC_START), + "::", + stringify!(byFlagType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 130usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERIC_START), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_GENERIC_START = *mut NET_DVR_GENERIC_START; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_GENERIC_END { + pub sData: [BYTE; 128usize], + pub byExclusive: BYTE, + pub byFlagType: BYTE, + pub byRes: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_GENERIC_END() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(NET_DVR_GENERIC_END)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_GENERIC_END)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sData) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERIC_END), + "::", + stringify!(sData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExclusive) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERIC_END), + "::", + stringify!(byExclusive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlagType) as usize - ptr as usize }, + 129usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERIC_END), + "::", + stringify!(byFlagType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 130usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERIC_END), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_GENERIC_END = *mut NET_DVR_GENERIC_END; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_GENERIC_DATA_CFG { + pub sData: [BYTE; 128usize], + pub byFlagType: BYTE, + pub byRes: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_GENERIC_DATA_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(NET_DVR_GENERIC_DATA_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_GENERIC_DATA_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sData) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERIC_DATA_CFG), + "::", + stringify!(sData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlagType) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERIC_DATA_CFG), + "::", + stringify!(byFlagType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 129usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_GENERIC_DATA_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_GENERIC_DATA_CFG = *mut NET_DVR_GENERIC_DATA_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_IGNORE_STRING { + pub sData: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_IGNORE_STRING() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(NET_DVR_IGNORE_STRING)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_IGNORE_STRING)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sData) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_IGNORE_STRING), + "::", + stringify!(sData) + ) + ); +} +pub type LPNET_DVR_IGNORE_STRING = *mut NET_DVR_IGNORE_STRING; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_POS_GENERIC { + pub byCaseSensitive: BYTE, + pub byRes1: [BYTE; 7usize], + pub struTransactionStart: NET_DVR_GENERIC_START, + pub struTransactionEnd: NET_DVR_GENERIC_END, + pub struLineDeli: NET_DVR_GENERIC_DATA_CFG, + pub struIgnoreString: [NET_DVR_IGNORE_STRING; 4usize], + pub byRes: [BYTE; 40usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_POS_GENERIC() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 960usize, + concat!("Size of: ", stringify!(NET_DVR_POS_GENERIC)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_POS_GENERIC)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseSensitive) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POS_GENERIC), + "::", + stringify!(byCaseSensitive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POS_GENERIC), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTransactionStart) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POS_GENERIC), + "::", + stringify!(struTransactionStart) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTransactionEnd) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POS_GENERIC), + "::", + stringify!(struTransactionEnd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLineDeli) as usize - ptr as usize }, + 276usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POS_GENERIC), + "::", + stringify!(struLineDeli) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIgnoreString) as usize - ptr as usize }, + 408usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POS_GENERIC), + "::", + stringify!(struIgnoreString) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 920usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POS_GENERIC), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_GENERIC = *mut NET_DVR_POS_GENERIC; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_POS_AVE { + pub dwPosAddr: DWORD, + pub byRes: [BYTE; 948usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_POS_AVE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 952usize, + concat!("Size of: ", stringify!(NET_DVR_POS_AVE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_POS_AVE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPosAddr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POS_AVE), + "::", + stringify!(dwPosAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POS_AVE), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_AVE = *mut NET_DVR_POS_AVE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_POS_NUCLEUS { + pub szEmployeeNo: [::std::os::raw::c_char; 8usize], + pub szTerminalNo: [::std::os::raw::c_char; 8usize], + pub szShiftNo: [::std::os::raw::c_char; 8usize], + pub byRes: [BYTE; 928usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_POS_NUCLEUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 952usize, + concat!("Size of: ", stringify!(tagNET_DVR_POS_NUCLEUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_POS_NUCLEUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szEmployeeNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POS_NUCLEUS), + "::", + stringify!(szEmployeeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szTerminalNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POS_NUCLEUS), + "::", + stringify!(szTerminalNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szShiftNo) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POS_NUCLEUS), + "::", + stringify!(szShiftNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POS_NUCLEUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_POS_NUCLEUS = tagNET_DVR_POS_NUCLEUS; +pub type LPNET_DVR_POS_NUCLEUS = *mut tagNET_DVR_POS_NUCLEUS; +#[repr(C)] +#[derive(Copy, Clone)] +pub union _NET_DVR_POS_PROTOCOL_UNION { + pub byLenth: [BYTE; 952usize], + pub struGeneric: NET_DVR_POS_GENERIC, + pub struAve: NET_DVR_POS_AVE, + pub struNUCLEUS: NET_DVR_POS_NUCLEUS, +} +#[test] +fn bindgen_test_layout__NET_DVR_POS_PROTOCOL_UNION() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_POS_PROTOCOL_UNION> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_POS_PROTOCOL_UNION>(), + 960usize, + concat!("Size of: ", stringify!(_NET_DVR_POS_PROTOCOL_UNION)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_POS_PROTOCOL_UNION>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_POS_PROTOCOL_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLenth) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_POS_PROTOCOL_UNION), + "::", + stringify!(byLenth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGeneric) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_POS_PROTOCOL_UNION), + "::", + stringify!(struGeneric) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAve) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_POS_PROTOCOL_UNION), + "::", + stringify!(struAve) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNUCLEUS) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_POS_PROTOCOL_UNION), + "::", + stringify!(struNUCLEUS) + ) + ); +} +pub type NET_DVR_POS_PROTOCOL_UNION = _NET_DVR_POS_PROTOCOL_UNION; +pub type LPNET_DVR_POS_PROTOCOL_UNION = *mut _NET_DVR_POS_PROTOCOL_UNION; +pub const tagNET_DVR_CHARSET_ENUM_ENUM_UTF8: tagNET_DVR_CHARSET_ENUM = 0; +pub const tagNET_DVR_CHARSET_ENUM_ENUM_GB2312: tagNET_DVR_CHARSET_ENUM = 1; +pub const tagNET_DVR_CHARSET_ENUM_ENUM_LATIN1: tagNET_DVR_CHARSET_ENUM = 2; +pub const tagNET_DVR_CHARSET_ENUM_ENUM_LATIN2: tagNET_DVR_CHARSET_ENUM = 3; +pub const tagNET_DVR_CHARSET_ENUM_ENUM_LATIN3: tagNET_DVR_CHARSET_ENUM = 4; +pub const tagNET_DVR_CHARSET_ENUM_ENUM_LATIN4: tagNET_DVR_CHARSET_ENUM = 5; +pub const tagNET_DVR_CHARSET_ENUM_ENUM_CYRILLIC: tagNET_DVR_CHARSET_ENUM = 6; +pub const tagNET_DVR_CHARSET_ENUM_ENUM_ARABIC: tagNET_DVR_CHARSET_ENUM = 7; +pub const tagNET_DVR_CHARSET_ENUM_ENUM_GREEK: tagNET_DVR_CHARSET_ENUM = 8; +pub const tagNET_DVR_CHARSET_ENUM_ENUM_HEBREW: tagNET_DVR_CHARSET_ENUM = 9; +pub const tagNET_DVR_CHARSET_ENUM_ENUM_TURKISH: tagNET_DVR_CHARSET_ENUM = 10; +pub const tagNET_DVR_CHARSET_ENUM_ENUM_NORDIC: tagNET_DVR_CHARSET_ENUM = 11; +pub const tagNET_DVR_CHARSET_ENUM_ENUM_THAI: tagNET_DVR_CHARSET_ENUM = 12; +pub const tagNET_DVR_CHARSET_ENUM_ENUM_LATIN7: tagNET_DVR_CHARSET_ENUM = 13; +pub const tagNET_DVR_CHARSET_ENUM_ENUM_LATIN8: tagNET_DVR_CHARSET_ENUM = 14; +pub const tagNET_DVR_CHARSET_ENUM_ENUM_LATIN9: tagNET_DVR_CHARSET_ENUM = 15; +pub const tagNET_DVR_CHARSET_ENUM_ENUM_LATIN10: tagNET_DVR_CHARSET_ENUM = 16; +pub const tagNET_DVR_CHARSET_ENUM_ENUM_CENTRAL_EUROPEAN: tagNET_DVR_CHARSET_ENUM = 17; +pub const tagNET_DVR_CHARSET_ENUM_ENUM_CYRILLIC_SCRIPT: tagNET_DVR_CHARSET_ENUM = 18; +pub const tagNET_DVR_CHARSET_ENUM_ENUM_HEBREW_DOS862: tagNET_DVR_CHARSET_ENUM = 19; +pub type tagNET_DVR_CHARSET_ENUM = ::std::os::raw::c_uint; +pub use self::tagNET_DVR_CHARSET_ENUM as NET_DVR_CHARSET_ENUM; +pub type LPNET_DVR_CHARSET_ENUM = *mut tagNET_DVR_CHARSET_ENUM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct NET_DVR_POS_FILTER_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byCharSetType: BYTE, + pub byRes1: BYTE, + pub byProtocolType: BYTE, + pub uPosProtocol: NET_DVR_POS_PROTOCOL_UNION, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_POS_FILTER_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1000usize, + concat!("Size of: ", stringify!(NET_DVR_POS_FILTER_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_POS_FILTER_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POS_FILTER_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POS_FILTER_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCharSetType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POS_FILTER_CFG), + "::", + stringify!(byCharSetType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POS_FILTER_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProtocolType) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POS_FILTER_CFG), + "::", + stringify!(byProtocolType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uPosProtocol) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POS_FILTER_CFG), + "::", + stringify!(uPosProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 968usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_POS_FILTER_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_POS_FILTER_CFG = *mut NET_DVR_POS_FILTER_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_NET_SNIFF { + pub byEnableSourcePort: BYTE, + pub byEnableDestAddr: BYTE, + pub byEnableDestPort: BYTE, + pub byRes1: BYTE, + pub bySourceIpAddr: [BYTE; 64usize], + pub byDestinationIpAddr: [BYTE; 64usize], + pub wSourcePort: WORD, + pub wDestinationPort: WORD, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NET_SNIFF() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 152usize, + concat!("Size of: ", stringify!(tagNET_DVR_NET_SNIFF)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NET_SNIFF)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableSourcePort) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NET_SNIFF), + "::", + stringify!(byEnableSourcePort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableDestAddr) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NET_SNIFF), + "::", + stringify!(byEnableDestAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableDestPort) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NET_SNIFF), + "::", + stringify!(byEnableDestPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NET_SNIFF), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySourceIpAddr) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NET_SNIFF), + "::", + stringify!(bySourceIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDestinationIpAddr) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NET_SNIFF), + "::", + stringify!(byDestinationIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSourcePort) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NET_SNIFF), + "::", + stringify!(wSourcePort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDestinationPort) as usize - ptr as usize }, + 134usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NET_SNIFF), + "::", + stringify!(wDestinationPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NET_SNIFF), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_NET_SNIFF = tagNET_DVR_NET_SNIFF; +pub type LPNET_DVR_NET_SNIFF = *mut tagNET_DVR_NET_SNIFF; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_NET_RECEIVE { + pub wNetPort: WORD, + pub byRes: [BYTE; 2usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_NET_RECEIVE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(NET_DVR_NET_RECEIVE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_NET_RECEIVE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wNetPort) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NET_RECEIVE), + "::", + stringify!(wNetPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NET_RECEIVE), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_NET_RECEIVE = *mut NET_DVR_NET_RECEIVE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MONITOR_INFO { + pub wPort: WORD, + pub byRes1: [BYTE; 2usize], + pub struRestrictRemoteIP: NET_DVR_IPADDR, + pub byRes: [BYTE; 164usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MONITOR_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 312usize, + concat!("Size of: ", stringify!(tagNET_DVR_MONITOR_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MONITOR_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_INFO), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRestrictRemoteIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_INFO), + "::", + stringify!(struRestrictRemoteIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MONITOR_INFO = tagNET_DVR_MONITOR_INFO; +pub type LPNET_DVR_MONITOR_INFO = *mut tagNET_DVR_MONITOR_INFO; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_POS_CONNECTMODE_UNION { + pub byLen: [BYTE; 312usize], + pub struNetRecv: NET_DVR_NET_RECEIVE, + pub struTcpMonitor: NET_DVR_MONITOR_INFO, + pub struRS232: NET_DVR_SINGLE_RS232, + pub struUdpMonitor: NET_DVR_MONITOR_INFO, + pub struSniff: NET_DVR_NET_SNIFF, + pub struMcast: NET_DVR_ADDRESS, + pub struUSBRS232: NET_DVR_USB_RS232, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_POS_CONNECTMODE_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 312usize, + concat!("Size of: ", stringify!(tagNET_DVR_POS_CONNECTMODE_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_POS_CONNECTMODE_UNION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POS_CONNECTMODE_UNION), + "::", + stringify!(byLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNetRecv) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POS_CONNECTMODE_UNION), + "::", + stringify!(struNetRecv) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTcpMonitor) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POS_CONNECTMODE_UNION), + "::", + stringify!(struTcpMonitor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRS232) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POS_CONNECTMODE_UNION), + "::", + stringify!(struRS232) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struUdpMonitor) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POS_CONNECTMODE_UNION), + "::", + stringify!(struUdpMonitor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSniff) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POS_CONNECTMODE_UNION), + "::", + stringify!(struSniff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMcast) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POS_CONNECTMODE_UNION), + "::", + stringify!(struMcast) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struUSBRS232) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POS_CONNECTMODE_UNION), + "::", + stringify!(struUSBRS232) + ) + ); +} +pub type NET_DVR_POS_CONNECTMODE_UNION = tagNET_DVR_POS_CONNECTMODE_UNION; +pub type LPNET_DVR_POS_CONNECTMODE_UNION = *mut tagNET_DVR_POS_CONNECTMODE_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_CONNECT_POS_CFG { + pub dwSize: DWORD, + pub byConnectMode: BYTE, + pub byRes1: [BYTE; 3usize], + pub uPosConnMode: NET_DVR_POS_CONNECTMODE_UNION, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CONNECT_POS_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 384usize, + concat!("Size of: ", stringify!(tagNET_DVR_CONNECT_POS_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CONNECT_POS_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONNECT_POS_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byConnectMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONNECT_POS_CFG), + "::", + stringify!(byConnectMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONNECT_POS_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uPosConnMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONNECT_POS_CFG), + "::", + stringify!(uPosConnMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONNECT_POS_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CONNECT_POS_CFG = tagNET_DVR_CONNECT_POS_CFG; +pub type LPNET_DVR_CONNECT_POS_CFG = *mut tagNET_DVR_CONNECT_POS_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CHAN_FILTER_CFG { + pub dwSize: DWORD, + pub byFilterID: BYTE, + pub byFontSize: BYTE, + pub byShowPosInfo: BYTE, + pub byOverlayMode: BYTE, + pub dwDelayTime: DWORD, + pub struOsdPosInfo: NET_DVR_POS_OSD_REGION, + pub struOsdColor: NET_DVR_RGB_COLOR, + pub struAlarmSched: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub struHandleException: NET_DVR_HANDLEEXCEPTION_V40, + pub dwMaxRelRecordChanNum: DWORD, + pub dwRelRecordChanNum: DWORD, + pub dwRelRecordChan: [DWORD; 64usize], + pub dwTimeOut: DWORD, + pub byRes: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CHAN_FILTER_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 916usize, + concat!("Size of: ", stringify!(tagNET_DVR_CHAN_FILTER_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CHAN_FILTER_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_FILTER_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFilterID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_FILTER_CFG), + "::", + stringify!(byFilterID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFontSize) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_FILTER_CFG), + "::", + stringify!(byFontSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShowPosInfo) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_FILTER_CFG), + "::", + stringify!(byShowPosInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverlayMode) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_FILTER_CFG), + "::", + stringify!(byOverlayMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDelayTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_FILTER_CFG), + "::", + stringify!(dwDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOsdPosInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_FILTER_CFG), + "::", + stringify!(struOsdPosInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOsdColor) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_FILTER_CFG), + "::", + stringify!(struOsdColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmSched) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_FILTER_CFG), + "::", + stringify!(struAlarmSched) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHandleException) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_FILTER_CFG), + "::", + stringify!(struHandleException) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxRelRecordChanNum) as usize - ptr as usize }, + 588usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_FILTER_CFG), + "::", + stringify!(dwMaxRelRecordChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelRecordChanNum) as usize - ptr as usize }, + 592usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_FILTER_CFG), + "::", + stringify!(dwRelRecordChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelRecordChan) as usize - ptr as usize }, + 596usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_FILTER_CFG), + "::", + stringify!(dwRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTimeOut) as usize - ptr as usize }, + 852usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_FILTER_CFG), + "::", + stringify!(dwTimeOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 856usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_FILTER_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CHAN_FILTER_CFG = tagNET_DVR_CHAN_FILTER_CFG; +pub type LPNET_DVR_CHAN_FILTER_CFG = *mut tagNET_DVR_CHAN_FILTER_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEVICE_LAN_ENCODE { + pub dwSize: DWORD, + pub byLanEncode: [BYTE; 32usize], + pub byRes: [BYTE; 28usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEVICE_LAN_ENCODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEVICE_LAN_ENCODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEVICE_LAN_ENCODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_LAN_ENCODE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLanEncode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_LAN_ENCODE), + "::", + stringify!(byLanEncode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_LAN_ENCODE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DEVICE_LAN_ENCODE = tagNET_DVR_DEVICE_LAN_ENCODE; +pub type LPNET_DVR_DEVICE_LAN_ENCODE = *mut tagNET_DVR_DEVICE_LAN_ENCODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCENECHANGE_DETECTION { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub bySensitiveLevel: BYTE, + pub byRes1: [BYTE; 2usize], + pub struAlarmSched: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub struHandleException: NET_DVR_HANDLEEXCEPTION_V40, + pub dwMaxRelRecordChanNum: DWORD, + pub dwRelRecordChanNum: DWORD, + pub dwRelRecordChan: [DWORD; 64usize], + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCENECHANGE_DETECTION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 956usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCENECHANGE_DETECTION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SCENECHANGE_DETECTION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENECHANGE_DETECTION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENECHANGE_DETECTION), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitiveLevel) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENECHANGE_DETECTION), + "::", + stringify!(bySensitiveLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENECHANGE_DETECTION), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmSched) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENECHANGE_DETECTION), + "::", + stringify!(struAlarmSched) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHandleException) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENECHANGE_DETECTION), + "::", + stringify!(struHandleException) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxRelRecordChanNum) as usize - ptr as usize }, + 564usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENECHANGE_DETECTION), + "::", + stringify!(dwMaxRelRecordChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelRecordChanNum) as usize - ptr as usize }, + 568usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENECHANGE_DETECTION), + "::", + stringify!(dwRelRecordChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelRecordChan) as usize - ptr as usize }, + 572usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENECHANGE_DETECTION), + "::", + stringify!(dwRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 828usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENECHANGE_DETECTION), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SCENECHANGE_DETECTION = tagNET_DVR_SCENECHANGE_DETECTION; +pub type LPNET_DVR_SCENECHANGE_DETECTION = *mut tagNET_DVR_SCENECHANGE_DETECTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCENECHANGE_DETECTION_RESULT { + pub dwSize: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub wDevInfoIvmsChannelEx: WORD, + pub byRes: [BYTE; 126usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCENECHANGE_DETECTION_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 280usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SCENECHANGE_DETECTION_RESULT) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SCENECHANGE_DETECTION_RESULT) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENECHANGE_DETECTION_RESULT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENECHANGE_DETECTION_RESULT), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevInfoIvmsChannelEx) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENECHANGE_DETECTION_RESULT), + "::", + stringify!(wDevInfoIvmsChannelEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 154usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENECHANGE_DETECTION_RESULT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCENECHANGE_DETECTION_RESULT = tagNET_DVR_SCENECHANGE_DETECTION_RESULT; +pub type LPNET_DVR_SCENECHANGE_DETECTION_RESULT = *mut tagNET_DVR_SCENECHANGE_DETECTION_RESULT; +pub const MODULE_TYPE_PREVIEW_MOD: MODULE_TYPE = 0; +pub const MODULE_TYPE_ALARM_MOD: MODULE_TYPE = 1; +pub const MODULE_TYPE_PLAYBACK_MOD: MODULE_TYPE = 2; +pub const MODULE_TYPE_MAX_TYPE: MODULE_TYPE = 3; +pub type MODULE_TYPE = ::std::os::raw::c_uint; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PARK_INFO { + pub sPlateNo: [::std::os::raw::c_char; 32usize], + pub sParkIndex: [::std::os::raw::c_char; 32usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PARK_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_DVR_PARK_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PARK_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPlateNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARK_INFO), + "::", + stringify!(sPlateNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sParkIndex) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARK_INFO), + "::", + stringify!(sParkIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARK_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PARK_INFO = tagNET_DVR_PARK_INFO; +pub type LPNET_DVR_PARK_INFO = *mut tagNET_DVR_PARK_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CROSSLINE_ALARM { + pub dwSize: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub struTriggerTime: NET_DVR_TIME_EX, + pub struParkInfo: NET_DVR_PARK_INFO, + pub byRes1: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CROSSLINE_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 416usize, + concat!("Size of: ", stringify!(tagNET_DVR_CROSSLINE_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CROSSLINE_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CROSSLINE_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CROSSLINE_ALARM), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTriggerTime) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CROSSLINE_ALARM), + "::", + stringify!(struTriggerTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struParkInfo) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CROSSLINE_ALARM), + "::", + stringify!(struParkInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CROSSLINE_ALARM), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_CROSSLINE_ALARM = tagNET_DVR_CROSSLINE_ALARM; +pub type LPNET_DVR_CROSSLINE_ALARM = *mut tagNET_DVR_CROSSLINE_ALARM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_STREAM_SRC_CFG { + pub dwSize: DWORD, + pub struStreamID: NET_DVR_STREAM_INFO, + pub struStreamSrcInfo: NET_DVR_STREAM_SRC_INFO, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STREAM_SRC_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 380usize, + concat!("Size of: ", stringify!(tagNET_DVR_STREAM_SRC_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_STREAM_SRC_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_SRC_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_SRC_CFG), + "::", + stringify!(struStreamID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamSrcInfo) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_SRC_CFG), + "::", + stringify!(struStreamSrcInfo) + ) + ); +} +pub type NET_DVR_STREAM_SRC_CFG = tagNET_DVR_STREAM_SRC_CFG; +pub type LPNET_DVR_STREAM_SRC_CFG = *mut tagNET_DVR_STREAM_SRC_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ENCODEINFO { + pub byFormatType: BYTE, + pub byVideoEncType: BYTE, + pub wWidth: WORD, + pub wHeight: WORD, + pub byRes1: [BYTE; 2usize], + pub dwVideoBitrate: DWORD, + pub dwVideoFrameRate: DWORD, + pub byAudioEncType: BYTE, + pub byRes2: [BYTE; 15usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ENCODEINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_DVR_ENCODEINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ENCODEINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFormatType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENCODEINFO), + "::", + stringify!(byFormatType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoEncType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENCODEINFO), + "::", + stringify!(byVideoEncType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wWidth) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENCODEINFO), + "::", + stringify!(wWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHeight) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENCODEINFO), + "::", + stringify!(wHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENCODEINFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoBitrate) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENCODEINFO), + "::", + stringify!(dwVideoBitrate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoFrameRate) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENCODEINFO), + "::", + stringify!(dwVideoFrameRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioEncType) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENCODEINFO), + "::", + stringify!(byAudioEncType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENCODEINFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ENCODEINFO = tagNET_DVR_ENCODEINFO; +pub type LPNET_DVR_ENCODEINFO = *mut tagNET_DVR_ENCODEINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRANSSTATUS { + pub dwSize: DWORD, + pub struStreamInfo: NET_DVR_STREAM_INFO, + pub byMode: BYTE, + pub byLinkNums: BYTE, + pub byPassiveTransMode: BYTE, + pub byRes: BYTE, + pub struDstIPInfo: [NET_DVR_ADDRESS; 6usize], + pub byTransResource: BYTE, + pub byRes1: [BYTE; 15usize], + pub struSrcEncodeInfo: NET_DVR_ENCODEINFO, + pub struDstEncodeInfo: [NET_DVR_ENCODEINFO; 6usize], + pub byRes2: [BYTE; 36usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRANSSTATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1244usize, + concat!("Size of: ", stringify!(tagNET_DVR_TRANSSTATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TRANSSTATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSSTATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSSTATUS), + "::", + stringify!(struStreamInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSSTATUS), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLinkNums) as usize - ptr as usize }, + 77usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSSTATUS), + "::", + stringify!(byLinkNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPassiveTransMode) as usize - ptr as usize }, + 78usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSSTATUS), + "::", + stringify!(byPassiveTransMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 79usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSSTATUS), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDstIPInfo) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSSTATUS), + "::", + stringify!(struDstIPInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransResource) as usize - ptr as usize }, + 968usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSSTATUS), + "::", + stringify!(byTransResource) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 969usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSSTATUS), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSrcEncodeInfo) as usize - ptr as usize }, + 984usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSSTATUS), + "::", + stringify!(struSrcEncodeInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDstEncodeInfo) as usize - ptr as usize }, + 1016usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSSTATUS), + "::", + stringify!(struDstEncodeInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSSTATUS), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_TRANSSTATUS = tagNET_DVR_TRANSSTATUS; +pub type LPNET_DVR_TRANSSTATUS = *mut tagNET_DVR_TRANSSTATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRANSDEVICE_STATUS { + pub dwSize: DWORD, + pub dwTotalResource: DWORD, + pub dwIdleResource: DWORD, + pub byCpuLoad: BYTE, + pub byRes: [BYTE; 67usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRANSDEVICE_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_TRANSDEVICE_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TRANSDEVICE_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSDEVICE_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotalResource) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSDEVICE_STATUS), + "::", + stringify!(dwTotalResource) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIdleResource) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSDEVICE_STATUS), + "::", + stringify!(dwIdleResource) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCpuLoad) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSDEVICE_STATUS), + "::", + stringify!(byCpuLoad) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANSDEVICE_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TRANSDEVICE_STATUS = tagNET_DVR_TRANSDEVICE_STATUS; +pub type LPNET_DVR_TRANSDEVICE_STATUS = *mut tagNET_DVR_TRANSDEVICE_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEV_WORK_MODE { + pub dwSize: DWORD, + pub byWorkMode: BYTE, + pub byDisplayMode: BYTE, + pub byEnableVcaDec: BYTE, + pub byRes: [BYTE; 61usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEV_WORK_MODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEV_WORK_MODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEV_WORK_MODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_WORK_MODE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_WORK_MODE), + "::", + stringify!(byWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDisplayMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_WORK_MODE), + "::", + stringify!(byDisplayMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableVcaDec) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_WORK_MODE), + "::", + stringify!(byEnableVcaDec) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_WORK_MODE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DEV_WORK_MODE = tagNET_DVR_DEV_WORK_MODE; +pub type LPNET_DVR_DEV_WORK_MODE = *mut tagNET_DVR_DEV_WORK_MODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PASSIVETRANSINFO { + pub dwSize: DWORD, + pub byStreamType: BYTE, + pub byLinkMode: BYTE, + pub byPassiveTransMode: BYTE, + pub byRes1: [BYTE; 5usize], + pub byDataType: BYTE, + pub byRes2: BYTE, + pub wDataLength: WORD, + pub pBuffer: *mut ::std::os::raw::c_char, + pub byRes3: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PASSIVETRANSINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_PASSIVETRANSINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PASSIVETRANSINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSIVETRANSINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSIVETRANSINFO), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLinkMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSIVETRANSINFO), + "::", + stringify!(byLinkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPassiveTransMode) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSIVETRANSINFO), + "::", + stringify!(byPassiveTransMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSIVETRANSINFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSIVETRANSINFO), + "::", + stringify!(byDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSIVETRANSINFO), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDataLength) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSIVETRANSINFO), + "::", + stringify!(wDataLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSIVETRANSINFO), + "::", + stringify!(pBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSIVETRANSINFO), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_PASSIVETRANSINFO = tagNET_DVR_PASSIVETRANSINFO; +pub type LPNET_DVR_PASSIVETRANSINFO = *mut tagNET_DVR_PASSIVETRANSINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BASEMAP_CONTROL_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byBaseMapType: BYTE, + pub byBaseMapCircleNo: BYTE, + pub byRes1: BYTE, + pub dwBaseMapNo: DWORD, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BASEMAP_CONTROL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_BASEMAP_CONTROL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BASEMAP_CONTROL_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_CONTROL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_CONTROL_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBaseMapType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_CONTROL_CFG), + "::", + stringify!(byBaseMapType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBaseMapCircleNo) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_CONTROL_CFG), + "::", + stringify!(byBaseMapCircleNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_CONTROL_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBaseMapNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_CONTROL_CFG), + "::", + stringify!(dwBaseMapNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_CONTROL_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_BASEMAP_CONTROL_CFG = tagNET_DVR_BASEMAP_CONTROL_CFG; +pub type LPNET_DVR_BASEMAP_CONTROL_CFG = *mut tagNET_DVR_BASEMAP_CONTROL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIRTUAL_SCREEN_CFG { + pub dwSize: DWORD, + pub dwResolution: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIRTUAL_SCREEN_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIRTUAL_SCREEN_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VIRTUAL_SCREEN_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUAL_SCREEN_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwResolution) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUAL_SCREEN_CFG), + "::", + stringify!(dwResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUAL_SCREEN_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VIRTUAL_SCREEN_CFG = tagNET_DVR_VIRTUAL_SCREEN_CFG; +pub type LPNET_DVR_VIRTUAL_SCREEN_CFG = *mut tagNET_DVR_VIRTUAL_SCREEN_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BASEMAP_WINCFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byWndOperateMode: BYTE, + pub byRes1: [BYTE; 6usize], + pub struWinPosition: NET_DVR_RECTCFG_EX, + pub struResolution: NET_DVR_RECTCFG_EX, + pub dwXCoordinate: DWORD, + pub dwYCoordinate: DWORD, + pub byRes2: [BYTE; 36usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BASEMAP_WINCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 96usize, + concat!("Size of: ", stringify!(tagNET_DVR_BASEMAP_WINCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BASEMAP_WINCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_WINCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_WINCFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWndOperateMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_WINCFG), + "::", + stringify!(byWndOperateMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_WINCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWinPosition) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_WINCFG), + "::", + stringify!(struWinPosition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struResolution) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_WINCFG), + "::", + stringify!(struResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwXCoordinate) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_WINCFG), + "::", + stringify!(dwXCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwYCoordinate) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_WINCFG), + "::", + stringify!(dwYCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_WINCFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_BASEMAP_WINCFG = tagNET_DVR_BASEMAP_WINCFG; +pub type LPNET_DVR_BASEMAP_WINCFG = *mut tagNET_DVR_BASEMAP_WINCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BASEMAP_PIC_INFO { + pub dwSize: DWORD, + pub sPicName: [BYTE; 32usize], + pub byUsed: BYTE, + pub byRes: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BASEMAP_PIC_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_BASEMAP_PIC_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BASEMAP_PIC_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_PIC_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPicName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_PIC_INFO), + "::", + stringify!(sPicName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUsed) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_PIC_INFO), + "::", + stringify!(byUsed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_PIC_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BASEMAP_PIC_INFO = tagNET_DVR_BASEMAP_PIC_INFO; +pub type LPNET_DVR_BASEMAP_PIC_INFO = *mut tagNET_DVR_BASEMAP_PIC_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIX_LOGO_INFO { + pub dwSize: DWORD, + pub dwLogoSize: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_LOGO_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIX_LOGO_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIX_LOGO_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_LOGO_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLogoSize) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_LOGO_INFO), + "::", + stringify!(dwLogoSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_LOGO_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MATRIX_LOGO_INFO = tagNET_DVR_MATRIX_LOGO_INFO; +pub type LPNET_DVR_MATRIX_LOGO_INFO = *mut tagNET_DVR_MATRIX_LOGO_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIX_LOGO_CFG { + pub dwSize: DWORD, + pub byExist: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwLogoSize: DWORD, + pub byLogoName: [BYTE; 32usize], + pub dwLogoNo: DWORD, + pub byRes2: [BYTE; 28usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_LOGO_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIX_LOGO_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIX_LOGO_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_LOGO_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExist) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_LOGO_CFG), + "::", + stringify!(byExist) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_LOGO_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLogoSize) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_LOGO_CFG), + "::", + stringify!(dwLogoSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLogoName) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_LOGO_CFG), + "::", + stringify!(byLogoName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLogoNo) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_LOGO_CFG), + "::", + stringify!(dwLogoNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_LOGO_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_MATRIX_LOGO_CFG = tagNET_DVR_MATRIX_LOGO_CFG; +pub type LPNET_DVR_MATRIX_LOGO_CFG = *mut tagNET_DVR_MATRIX_LOGO_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WIN_LOGO_CFG { + pub dwSize: DWORD, + pub dwLogoNo: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwCoordinateX: DWORD, + pub dwCoordinateY: DWORD, + pub byFlash: BYTE, + pub byTranslucent: BYTE, + pub byRes2: [BYTE; 34usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIN_LOGO_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_WIN_LOGO_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WIN_LOGO_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIN_LOGO_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLogoNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIN_LOGO_CFG), + "::", + stringify!(dwLogoNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIN_LOGO_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIN_LOGO_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCoordinateX) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIN_LOGO_CFG), + "::", + stringify!(dwCoordinateX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCoordinateY) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIN_LOGO_CFG), + "::", + stringify!(dwCoordinateY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlash) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIN_LOGO_CFG), + "::", + stringify!(byFlash) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTranslucent) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIN_LOGO_CFG), + "::", + stringify!(byTranslucent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIN_LOGO_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_WIN_LOGO_CFG = tagNET_DVR_WIN_LOGO_CFG; +pub type LPNET_DVR_WIN_LOGO_CFG = *mut tagNET_DVR_WIN_LOGO_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BIG_SCREEN_AUDIO_CFG { + pub dwSize: DWORD, + pub dwWinIndex: DWORD, + pub byEnable: BYTE, + pub byRes: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BIG_SCREEN_AUDIO_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_BIG_SCREEN_AUDIO_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BIG_SCREEN_AUDIO_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIG_SCREEN_AUDIO_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWinIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIG_SCREEN_AUDIO_CFG), + "::", + stringify!(dwWinIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIG_SCREEN_AUDIO_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BIG_SCREEN_AUDIO_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BIG_SCREEN_AUDIO_CFG = tagNET_DVR_BIG_SCREEN_AUDIO_CFG; +pub type LPNET_DVR_BIG_SCREEN_AUDIO_CFG = *mut tagNET_DVR_BIG_SCREEN_AUDIO_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WIN_ZOOM_STATUS { + pub dwSize: DWORD, + pub byZoomStatus: BYTE, + pub byRes1: [BYTE; 3usize], + pub struPointFrame: NET_DVR_POINT_FRAME, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIN_ZOOM_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 60usize, + concat!("Size of: ", stringify!(tagNET_DVR_WIN_ZOOM_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WIN_ZOOM_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIN_ZOOM_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZoomStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIN_ZOOM_STATUS), + "::", + stringify!(byZoomStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIN_ZOOM_STATUS), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPointFrame) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIN_ZOOM_STATUS), + "::", + stringify!(struPointFrame) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIN_ZOOM_STATUS), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_WIN_ZOOM_STATUS = tagNET_DVR_WIN_ZOOM_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RESUME_INITRACKPOS_CFG { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RESUME_INITRACKPOS_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_DVR_RESUME_INITRACKPOS_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_RESUME_INITRACKPOS_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RESUME_INITRACKPOS_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RESUME_INITRACKPOS_CFG), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RESUME_INITRACKPOS_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RESUME_INITRACKPOS_CFG = tagNET_DVR_RESUME_INITRACKPOS_CFG; +pub type LPNET_DVR_RESUME_INITRACKPOS_CFG = *mut tagNET_DVR_RESUME_INITRACKPOS_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNet_DVR_TEST_SELFCHECK_RESULT { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub bySelfCheckStatus: BYTE, + pub byRes: [BYTE; 23usize], +} +#[test] +fn bindgen_test_layout_tagNet_DVR_TEST_SELFCHECK_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNet_DVR_TEST_SELFCHECK_RESULT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNet_DVR_TEST_SELFCHECK_RESULT) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_TEST_SELFCHECK_RESULT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_TEST_SELFCHECK_RESULT), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySelfCheckStatus) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_TEST_SELFCHECK_RESULT), + "::", + stringify!(bySelfCheckStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNet_DVR_TEST_SELFCHECK_RESULT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TEST_SELFCHECK_RESULT = tagNet_DVR_TEST_SELFCHECK_RESULT; +pub type LPNET_DVR_TEST_SELECHECK_RESULT = *mut tagNet_DVR_TEST_SELFCHECK_RESULT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TEST_COMMAND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byTestCommand: [BYTE; 32usize], + pub wICRIntervalTime: WORD, + pub byElectronicCompassState: BYTE, + pub byRes1: [BYTE; 1usize], + pub fDeviceTem: f32, + pub byTemp: [BYTE; 9usize], + pub byRes: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TEST_COMMAND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 60usize, + concat!("Size of: ", stringify!(tagNET_DVR_TEST_COMMAND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TEST_COMMAND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_COMMAND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_COMMAND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTestCommand) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_COMMAND), + "::", + stringify!(byTestCommand) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wICRIntervalTime) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_COMMAND), + "::", + stringify!(wICRIntervalTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byElectronicCompassState) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_COMMAND), + "::", + stringify!(byElectronicCompassState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 43usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_COMMAND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fDeviceTem) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_COMMAND), + "::", + stringify!(fDeviceTem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTemp) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_COMMAND), + "::", + stringify!(byTemp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 57usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_COMMAND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TEST_COMMAND = tagNET_DVR_TEST_COMMAND; +pub type LPNET_DVR_TEST_COMMAND = *mut tagNET_DVR_TEST_COMMAND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AGING_TRICK_SCAN { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byAging: BYTE, + pub byWriteReadEnalbe: BYTE, + pub byRes: [BYTE; 126usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AGING_TRICK_SCAN() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_AGING_TRICK_SCAN)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AGING_TRICK_SCAN)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AGING_TRICK_SCAN), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AGING_TRICK_SCAN), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAging) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AGING_TRICK_SCAN), + "::", + stringify!(byAging) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWriteReadEnalbe) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AGING_TRICK_SCAN), + "::", + stringify!(byWriteReadEnalbe) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AGING_TRICK_SCAN), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AGING_TRICK_SCAN = tagNET_DVR_AGING_TRICK_SCAN; +pub type LPNET_DVR_AGING_TRICK_SCAN = *mut tagNET_DVR_AGING_TRICK_SCAN; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IPC_PARAM_TYPE { + pub dwSize: DWORD, + pub dwParamType: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPC_PARAM_TYPE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_IPC_PARAM_TYPE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IPC_PARAM_TYPE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPC_PARAM_TYPE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwParamType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPC_PARAM_TYPE), + "::", + stringify!(dwParamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPC_PARAM_TYPE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_IPC_PARAM_TYPE = tagNET_DVR_IPC_PARAM_TYPE; +pub type LPNET_DVR_IPC_PARAM_TYPE = *mut tagNET_DVR_IPC_PARAM_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ECCENTRIC_CORRECT_STATE { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byEccentricCorrectState: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ECCENTRIC_CORRECT_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_ECCENTRIC_CORRECT_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ECCENTRIC_CORRECT_STATE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ECCENTRIC_CORRECT_STATE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ECCENTRIC_CORRECT_STATE), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEccentricCorrectState) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ECCENTRIC_CORRECT_STATE), + "::", + stringify!(byEccentricCorrectState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ECCENTRIC_CORRECT_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ECCENTRIC_CORRECT_STATE = tagNET_DVR_ECCENTRIC_CORRECT_STATE; +pub type LPNET_DVR_ECCENTRIC_CORRECT_STATE = *mut tagNET_DVR_ECCENTRIC_CORRECT_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TEST_DEVMODULE_CFG { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byDevFanModuleType: [BYTE; 8usize], + pub byDevHeaterModuleType: [BYTE; 8usize], + pub byRes: [BYTE; 22usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TEST_DEVMODULE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_DVR_TEST_DEVMODULE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TEST_DEVMODULE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_DEVMODULE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_DEVMODULE_CFG), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevFanModuleType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_DEVMODULE_CFG), + "::", + stringify!(byDevFanModuleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevHeaterModuleType) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_DEVMODULE_CFG), + "::", + stringify!(byDevHeaterModuleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_DEVMODULE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TEST_DEVMODULE_CFG = tagNET_DVR_TEST_DEVMODULE_CFG; +pub type LPNET_DVR_TEST_DEVMODULE_CFG = *mut tagNET_DVR_TEST_DEVMODULE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BARRIERGATE_COND { + pub byLaneNo: BYTE, + pub byRes: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BARRIERGATE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(tagNET_DVR_BARRIERGATE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BARRIERGATE_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BARRIERGATE_COND), + "::", + stringify!(byLaneNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BARRIERGATE_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BARRIERGATE_COND = tagNET_DVR_BARRIERGATE_COND; +pub type LPNET_DVR_BARRIERGATE_COND = *mut tagNET_DVR_BARRIERGATE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VEHICLE_CONTROL { + pub byGateOperateType: BYTE, + pub byRes1: BYTE, + pub wAlarmOperateType: WORD, + pub byRes2: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VEHICLE_CONTROL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_VEHICLE_CONTROL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VEHICLE_CONTROL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGateOperateType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL), + "::", + stringify!(byGateOperateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAlarmOperateType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL), + "::", + stringify!(wAlarmOperateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_VEHICLE_CONTROL = tagNET_DVR_VEHICLE_CONTROL; +pub type LPNET_DVR_VEHICLE_CONTROL = *mut tagNET_DVR_VEHICLE_CONTROL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RELAY_PARAM { + pub byAccessDevInfo: BYTE, + pub byRes: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RELAY_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(tagNET_DVR_RELAY_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RELAY_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAccessDevInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RELAY_PARAM), + "::", + stringify!(byAccessDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RELAY_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RELAY_PARAM = tagNET_DVR_RELAY_PARAM; +pub type LPNET_DVR_RELAY_PARAM = *mut tagNET_DVR_RELAY_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ENTRANCE_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byBarrierGateCtrlMode: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwRelateTriggerMode: DWORD, + pub dwMatchContent: DWORD, + pub struRelayRelateInfo: [NET_DVR_RELAY_PARAM; 12usize], + pub byGateSingleIO: [BYTE; 8usize], + pub struVehicleCtrl: [NET_DVR_VEHICLE_CONTROL; 8usize], + pub byNotCloseCarFollow: BYTE, + pub byParkingDetectEnabled: BYTE, + pub byParkingDetectJudgeTime: BYTE, + pub byRes2: [BYTE; 61usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ENTRANCE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 232usize, + concat!("Size of: ", stringify!(tagNET_DVR_ENTRANCE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ENTRANCE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCE_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBarrierGateCtrlMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCE_CFG), + "::", + stringify!(byBarrierGateCtrlMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCE_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelateTriggerMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCE_CFG), + "::", + stringify!(dwRelateTriggerMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMatchContent) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCE_CFG), + "::", + stringify!(dwMatchContent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRelayRelateInfo) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCE_CFG), + "::", + stringify!(struRelayRelateInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGateSingleIO) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCE_CFG), + "::", + stringify!(byGateSingleIO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVehicleCtrl) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCE_CFG), + "::", + stringify!(struVehicleCtrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNotCloseCarFollow) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCE_CFG), + "::", + stringify!(byNotCloseCarFollow) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParkingDetectEnabled) as usize - ptr as usize }, + 169usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCE_CFG), + "::", + stringify!(byParkingDetectEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParkingDetectJudgeTime) as usize - ptr as usize }, + 170usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCE_CFG), + "::", + stringify!(byParkingDetectJudgeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 171usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCE_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ENTRANCE_CFG = tagNET_DVR_ENTRANCE_CFG; +pub type LPNET_DVR_ENTRANCE_CFG = *mut tagNET_DVR_ENTRANCE_CFG; +#[doc = "����ڲ������� end///////////////////////////////"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BARRIERGATE_CFG { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byLaneNo: BYTE, + pub byBarrierGateCtrl: BYTE, + pub byEntranceNo: BYTE, + pub byUnlock: BYTE, + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BARRIERGATE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_DVR_BARRIERGATE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BARRIERGATE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BARRIERGATE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BARRIERGATE_CFG), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BARRIERGATE_CFG), + "::", + stringify!(byLaneNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBarrierGateCtrl) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BARRIERGATE_CFG), + "::", + stringify!(byBarrierGateCtrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEntranceNo) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BARRIERGATE_CFG), + "::", + stringify!(byEntranceNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUnlock) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BARRIERGATE_CFG), + "::", + stringify!(byUnlock) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BARRIERGATE_CFG), + "::", + stringify!(byRes) + ) + ); +} +#[doc = "����ڲ������� end///////////////////////////////"] +pub type NET_DVR_BARRIERGATE_CFG = tagNET_DVR_BARRIERGATE_CFG; +#[doc = "����ڲ������� end///////////////////////////////"] +pub type LPNET_DVR_BARRIERGATE_CFG = *mut tagNET_DVR_BARRIERGATE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VEHICLE_CONTROL_LIST_INFO { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub dwDataIndex: DWORD, + pub sLicense: [::std::os::raw::c_char; 16usize], + pub byListType: BYTE, + pub byPlateType: BYTE, + pub byPlateColor: BYTE, + pub byRes: [BYTE; 21usize], + pub sCardNo: [::std::os::raw::c_char; 48usize], + pub struStartTime: NET_DVR_TIME_V30, + pub struStopTime: NET_DVR_TIME_V30, + pub sOperateIndex: [::std::os::raw::c_char; 32usize], + pub byRes1: [BYTE; 224usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VEHICLE_CONTROL_LIST_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 380usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_LIST_INFO) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_LIST_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_LIST_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_LIST_INFO), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataIndex) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_LIST_INFO), + "::", + stringify!(dwDataIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLicense) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_LIST_INFO), + "::", + stringify!(sLicense) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byListType) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_LIST_INFO), + "::", + stringify!(byListType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateType) as usize - ptr as usize }, + 29usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_LIST_INFO), + "::", + stringify!(byPlateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateColor) as usize - ptr as usize }, + 30usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_LIST_INFO), + "::", + stringify!(byPlateColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 31usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_LIST_INFO), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCardNo) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_LIST_INFO), + "::", + stringify!(sCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_LIST_INFO), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_LIST_INFO), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sOperateIndex) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_LIST_INFO), + "::", + stringify!(sOperateIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_LIST_INFO), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_VEHICLE_CONTROL_LIST_INFO = tagNET_DVR_VEHICLE_CONTROL_LIST_INFO; +pub type LPNET_DVR_VEHICLE_CONTROL_LIST_INFO = *mut tagNET_DVR_VEHICLE_CONTROL_LIST_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VEHICLE_CONTROL_COND { + pub dwChannel: DWORD, + pub dwOperateType: DWORD, + pub sLicense: [::std::os::raw::c_char; 16usize], + pub sCardNo: [::std::os::raw::c_char; 48usize], + pub byListType: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwDataIndex: DWORD, + pub byRes: [BYTE; 116usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VEHICLE_CONTROL_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 196usize, + concat!("Size of: ", stringify!(tagNET_DVR_VEHICLE_CONTROL_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VEHICLE_CONTROL_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOperateType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_COND), + "::", + stringify!(dwOperateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLicense) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_COND), + "::", + stringify!(sLicense) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCardNo) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_COND), + "::", + stringify!(sCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byListType) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_COND), + "::", + stringify!(byListType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 73usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_COND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataIndex) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_COND), + "::", + stringify!(dwDataIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VEHICLE_CONTROL_COND = tagNET_DVR_VEHICLE_CONTROL_COND; +pub type LPNET_DVR_VEHICLE_CONTROL_COND = *mut tagNET_DVR_VEHICLE_CONTROL_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_VEHICLE_CONTROL_LIST_DSALARM { + pub dwSize: DWORD, + pub dwDataIndex: DWORD, + pub sOperateIndex: [::std::os::raw::c_char; 32usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_VEHICLE_CONTROL_LIST_DSALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!( + "Size of: ", + stringify!(NET_DVR_VEHICLE_CONTROL_LIST_DSALARM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(NET_DVR_VEHICLE_CONTROL_LIST_DSALARM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_CONTROL_LIST_DSALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_CONTROL_LIST_DSALARM), + "::", + stringify!(dwDataIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sOperateIndex) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_CONTROL_LIST_DSALARM), + "::", + stringify!(sOperateIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_CONTROL_LIST_DSALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_VEHICLE_CONTROL_LIST_DSALARM = *mut NET_DVR_VEHICLE_CONTROL_LIST_DSALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VEHICLE_CONTROL_ALARM { + pub dwSize: DWORD, + pub byListType: BYTE, + pub byPlateType: BYTE, + pub byPlateColor: BYTE, + pub byRes1: BYTE, + pub sLicense: [::std::os::raw::c_char; 16usize], + pub sCardNo: [::std::os::raw::c_char; 48usize], + pub struAlarmTime: NET_DVR_TIME_V30, + pub dwChannel: DWORD, + pub dwPicDataLen: DWORD, + pub byPicType: BYTE, + pub byPicTransType: BYTE, + pub byRes3: [BYTE; 2usize], + pub pPicData: *mut ::std::os::raw::c_char, + pub byRes2: [BYTE; 48usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VEHICLE_CONTROL_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 152usize, + concat!("Size of: ", stringify!(tagNET_DVR_VEHICLE_CONTROL_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_ALARM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byListType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_ALARM), + "::", + stringify!(byListType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_ALARM), + "::", + stringify!(byPlateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateColor) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_ALARM), + "::", + stringify!(byPlateColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_ALARM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLicense) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_ALARM), + "::", + stringify!(sLicense) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCardNo) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_ALARM), + "::", + stringify!(sCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_ALARM), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_ALARM), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicDataLen) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_ALARM), + "::", + stringify!(dwPicDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicType) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_ALARM), + "::", + stringify!(byPicType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicTransType) as usize - ptr as usize }, + 93usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_ALARM), + "::", + stringify!(byPicTransType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 94usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_ALARM), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPicData) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_ALARM), + "::", + stringify!(pPicData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CONTROL_ALARM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_VEHICLE_CONTROL_ALARM = tagNET_DVR_VEHICLE_CONTROL_ALARM; +pub type LPNET_DVR_VEHICLE_CONTROL_ALARM = *mut tagNET_DVR_VEHICLE_CONTROL_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FIRE_ALARM { + pub dwSize: DWORD, + pub struAlarmTime: NET_DVR_TIME_V30, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FIRE_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!("Size of: ", stringify!(tagNET_DVR_FIRE_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FIRE_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIRE_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIRE_ALARM), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIRE_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FIRE_ALARM = tagNET_DVR_FIRE_ALARM; +pub type LPNET_DVR_FIRE_ALARM = *mut tagNET_DVR_FIRE_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_VEHICLE_CONTROL_DELINFO { + pub dwSize: DWORD, + pub dwDelType: DWORD, + pub sLicense: [::std::os::raw::c_char; 16usize], + pub sCardNo: [::std::os::raw::c_char; 48usize], + pub byPlateType: BYTE, + pub byPlateColor: BYTE, + pub byOperateType: BYTE, + pub byListType: BYTE, + pub dwDataIndex: DWORD, + pub sOperateIndex: [::std::os::raw::c_char; 32usize], + pub byRes: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_VEHICLE_CONTROL_DELINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(NET_DVR_VEHICLE_CONTROL_DELINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_VEHICLE_CONTROL_DELINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_CONTROL_DELINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDelType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_CONTROL_DELINFO), + "::", + stringify!(dwDelType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLicense) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_CONTROL_DELINFO), + "::", + stringify!(sLicense) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCardNo) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_CONTROL_DELINFO), + "::", + stringify!(sCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateType) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_CONTROL_DELINFO), + "::", + stringify!(byPlateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateColor) as usize - ptr as usize }, + 73usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_CONTROL_DELINFO), + "::", + stringify!(byPlateColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOperateType) as usize - ptr as usize }, + 74usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_CONTROL_DELINFO), + "::", + stringify!(byOperateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byListType) as usize - ptr as usize }, + 75usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_CONTROL_DELINFO), + "::", + stringify!(byListType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataIndex) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_CONTROL_DELINFO), + "::", + stringify!(dwDataIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sOperateIndex) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_CONTROL_DELINFO), + "::", + stringify!(sOperateIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_VEHICLE_CONTROL_DELINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_VEHICLE_CONTROL_DELINFO = *mut NET_DVR_VEHICLE_CONTROL_DELINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GATELAMP_INFO { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byLaneNo: BYTE, + pub byBrightlampCtrl: BYTE, + pub byRes: [BYTE; 14usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GATELAMP_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_DVR_GATELAMP_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GATELAMP_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATELAMP_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATELAMP_INFO), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATELAMP_INFO), + "::", + stringify!(byLaneNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrightlampCtrl) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATELAMP_INFO), + "::", + stringify!(byBrightlampCtrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATELAMP_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GATELAMP_INFO = tagNET_DVR_GATELAMP_INFO; +pub type LPNET_DVR_GATELAMP_INFO = *mut tagNET_DVR_GATELAMP_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIX_BASE_CFG { + pub dwSize: DWORD, + pub dwValidInputNum: DWORD, + pub dwValidOutputNum: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_BASE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIX_BASE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIX_BASE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_BASE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwValidInputNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_BASE_CFG), + "::", + stringify!(dwValidInputNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwValidOutputNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_BASE_CFG), + "::", + stringify!(dwValidOutputNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_BASE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MATRIX_BASE_CFG = tagNET_DVR_MATRIX_BASE_CFG; +pub type LPNET_DVR_MATRIX_BASE_CFG = *mut tagNET_DVR_MATRIX_BASE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIX_SWITCH_INFO { + pub dwSize: DWORD, + pub dwInputChan: DWORD, + pub dwOutputChan: DWORD, + pub dwMatrixID: DWORD, + pub byRes: [BYTE; 28usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_SWITCH_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIX_SWITCH_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIX_SWITCH_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SWITCH_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInputChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SWITCH_INFO), + "::", + stringify!(dwInputChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOutputChan) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SWITCH_INFO), + "::", + stringify!(dwOutputChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMatrixID) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SWITCH_INFO), + "::", + stringify!(dwMatrixID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SWITCH_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MATRIX_SWITCH_INFO = tagNET_DVR_MATRIX_SWITCH_INFO; +pub type LPNET_DVR_MATRIX_SWITCH_INFO = *mut tagNET_DVR_MATRIX_SWITCH_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IO_RELATION_INFO { + pub dwSize: DWORD, + pub dwIORelation: [DWORD; 256usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IO_RELATION_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1284usize, + concat!("Size of: ", stringify!(tagNET_DVR_IO_RELATION_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IO_RELATION_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IO_RELATION_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIORelation) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IO_RELATION_INFO), + "::", + stringify!(dwIORelation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1028usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IO_RELATION_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_IO_RELATION_INFO = tagNET_DVR_IO_RELATION_INFO; +pub type LPNET_DVR_IO_RELATION_INFO = *mut tagNET_DVR_IO_RELATION_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EXTERNAL_DEVCOND { + pub dwSize: DWORD, + pub byExternalDevTpye: BYTE, + pub byRelativeIndex: BYTE, + pub byRes: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXTERNAL_DEVCOND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_EXTERNAL_DEVCOND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EXTERNAL_DEVCOND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCOND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExternalDevTpye) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCOND), + "::", + stringify!(byExternalDevTpye) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelativeIndex) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCOND), + "::", + stringify!(byRelativeIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCOND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EXTERNAL_DEVCOND = tagNET_DVR_EXTERNAL_DEVCOND; +pub type LPNET_DVR_EXTERNAL_DEVCOND = *mut tagNET_DVR_EXTERNAL_DEVCOND; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_EXTERNAL_DEVCFG { + pub dwSize: DWORD, + pub byExternalDevTpye: BYTE, + pub byRes2: [BYTE; 3usize], + pub sDevName: [::std::os::raw::c_char; 32usize], + pub uExternalDevInfo: tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1, + pub byRes: [BYTE; 128usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1 { + pub byUnionLen: [BYTE; 656usize], + pub struRrReader: tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_1, + pub struGateway: tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_2, + pub struLed: tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_3, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_1 { + pub struDevIP: NET_DVR_IPADDR, + pub wDevPort: WORD, + pub byRes: [BYTE; 510usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 656usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(struDevIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevPort) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(wDevPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 146usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_2 { + pub byRs485No: BYTE, + pub byDevCtrlCode: BYTE, + pub byAutoIssuedData: BYTE, + pub byOfflineDetEnable: BYTE, + pub byDetCycle: BYTE, + pub byRes: [BYTE; 651usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 656usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRs485No) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byRs485No) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevCtrlCode) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byDevCtrlCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAutoIssuedData) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byAutoIssuedData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOfflineDetEnable) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byOfflineDetEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetCycle) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byDetCycle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_3 { + pub byExternalMode: BYTE, + pub byRes: [BYTE; 3usize], + pub struDevIP: NET_DVR_IPADDR, + pub wDevPort: WORD, + pub byRs485No: BYTE, + pub byDevCtrlCode: BYTE, + pub byCtrlCardType: BYTE, + pub byLedScreenType: BYTE, + pub byLedScreenUse: BYTE, + pub byLedDisplayMode: BYTE, + pub sLedCustomInfo: [::std::os::raw::c_char; 256usize], + pub dwLedScreenH: DWORD, + pub dwLedScreenW: DWORD, + pub byRes1: [BYTE; 236usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_3() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 656usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExternalMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byExternalMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(struDevIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevPort) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(wDevPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRs485No) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byRs485No) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevCtrlCode) as usize - ptr as usize }, + 151usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byDevCtrlCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCtrlCardType) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byCtrlCardType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLedScreenType) as usize - ptr as usize }, + 153usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byLedScreenType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLedScreenUse) as usize - ptr as usize }, + 154usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byLedScreenUse) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLedDisplayMode) as usize - ptr as usize }, + 155usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byLedDisplayMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLedCustomInfo) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(sLedCustomInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLedScreenH) as usize - ptr as usize }, + 412usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(dwLedScreenH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLedScreenW) as usize - ptr as usize }, + 416usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(dwLedScreenW) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 420usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(byRes1) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 656usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUnionLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1), + "::", + stringify!(byUnionLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRrReader) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1), + "::", + stringify!(struRrReader) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGateway) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1), + "::", + stringify!(struGateway) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLed) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG__bindgen_ty_1), + "::", + stringify!(struLed) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXTERNAL_DEVCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 824usize, + concat!("Size of: ", stringify!(tagNET_DVR_EXTERNAL_DEVCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EXTERNAL_DEVCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExternalDevTpye) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG), + "::", + stringify!(byExternalDevTpye) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDevName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG), + "::", + stringify!(sDevName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uExternalDevInfo) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG), + "::", + stringify!(uExternalDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 696usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EXTERNAL_DEVCFG = tagNET_DVR_EXTERNAL_DEVCFG; +pub type LPNET_DVR_EXTERNAL_DEVCFG = *mut tagNET_DVR_EXTERNAL_DEVCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EXTERNAL_DEVSTATUS { + pub dwSize: DWORD, + pub sDevName: [::std::os::raw::c_char; 32usize], + pub byExternalDevTpye: BYTE, + pub byRelativeIndex: BYTE, + pub byOnline: BYTE, + pub byRes: [BYTE; 125usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXTERNAL_DEVSTATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 164usize, + concat!("Size of: ", stringify!(tagNET_DVR_EXTERNAL_DEVSTATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EXTERNAL_DEVSTATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVSTATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDevName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVSTATUS), + "::", + stringify!(sDevName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExternalDevTpye) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVSTATUS), + "::", + stringify!(byExternalDevTpye) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelativeIndex) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVSTATUS), + "::", + stringify!(byRelativeIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOnline) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVSTATUS), + "::", + stringify!(byOnline) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNAL_DEVSTATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EXTERNAL_DEVSTATUS = tagNET_DVR_EXTERNAL_DEVSTATUS; +pub type LPNET_DVR_EXTERNAL_DEVSTATUS = *mut tagNET_DVR_EXTERNAL_DEVSTATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ENTRANCEDET_CFG { + pub dwSize: DWORD, + pub byOfflineDetEnable: BYTE, + pub byDetCycle: BYTE, + pub byDevCtrlCode: BYTE, + pub byRes: [BYTE; 61usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ENTRANCEDET_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_ENTRANCEDET_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ENTRANCEDET_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCEDET_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOfflineDetEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCEDET_CFG), + "::", + stringify!(byOfflineDetEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetCycle) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCEDET_CFG), + "::", + stringify!(byDetCycle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevCtrlCode) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCEDET_CFG), + "::", + stringify!(byDevCtrlCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCEDET_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ENTRANCEDET_CFG = tagNET_DVR_ENTRANCEDET_CFG; +pub type LPNET_DVR_ENTRANCEDET_CFG = *mut tagNET_DVR_ENTRANCEDET_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ENTRANCEDEV_COMMAND { + pub dwSize: DWORD, + pub byDevCtrlCode: BYTE, + pub byManualIssuedData: BYTE, + pub byRes: [BYTE; 62usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ENTRANCEDEV_COMMAND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_ENTRANCEDEV_COMMAND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ENTRANCEDEV_COMMAND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCEDEV_COMMAND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevCtrlCode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCEDEV_COMMAND), + "::", + stringify!(byDevCtrlCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byManualIssuedData) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCEDEV_COMMAND), + "::", + stringify!(byManualIssuedData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCEDEV_COMMAND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ENTRANCEDEV_COMMAND = tagNET_DVR_ENTRANCEDEV_COMMAND; +pub type LPNET_DVR_ENTRANCEDEV_COMMAND = *mut tagNET_DVR_ENTRANCEDEV_COMMAND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ENISSUED_DATADEL { + pub dwSize: DWORD, + pub byDevCtrlCode: BYTE, + pub byRes: [BYTE; 27usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ENISSUED_DATADEL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_DVR_ENISSUED_DATADEL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ENISSUED_DATADEL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENISSUED_DATADEL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevCtrlCode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENISSUED_DATADEL), + "::", + stringify!(byDevCtrlCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENISSUED_DATADEL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ENISSUED_DATADEL = tagNET_DVR_ENISSUED_DATADEL; +pub type LPNET_DVR_ENISSUED_DATADEL = *mut tagNET_DVR_ENISSUED_DATADEL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _tagNET_ITS_PASSVEHICLE_COST_ITEM { + pub dwSize: DWORD, + pub dwPassVehicleID: DWORD, + pub byIntime: [BYTE; 32usize], + pub byOuttime: [BYTE; 32usize], + pub byCardNo: [BYTE; 24usize], + pub byPlateInfo: [BYTE; 16usize], + pub fPayCost: f32, + pub byOperatorName: [BYTE; 32usize], + pub byVehicleType: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwPayRuleID: DWORD, + pub dwFreeRuleID: DWORD, + pub byRes2: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout__tagNET_ITS_PASSVEHICLE_COST_ITEM() { + const UNINIT: ::std::mem::MaybeUninit<_tagNET_ITS_PASSVEHICLE_COST_ITEM> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_tagNET_ITS_PASSVEHICLE_COST_ITEM>(), + 416usize, + concat!("Size of: ", stringify!(_tagNET_ITS_PASSVEHICLE_COST_ITEM)) + ); + assert_eq!( + ::std::mem::align_of::<_tagNET_ITS_PASSVEHICLE_COST_ITEM>(), + 4usize, + concat!( + "Alignment of ", + stringify!(_tagNET_ITS_PASSVEHICLE_COST_ITEM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PASSVEHICLE_COST_ITEM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPassVehicleID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PASSVEHICLE_COST_ITEM), + "::", + stringify!(dwPassVehicleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIntime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PASSVEHICLE_COST_ITEM), + "::", + stringify!(byIntime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOuttime) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PASSVEHICLE_COST_ITEM), + "::", + stringify!(byOuttime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PASSVEHICLE_COST_ITEM), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateInfo) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PASSVEHICLE_COST_ITEM), + "::", + stringify!(byPlateInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fPayCost) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PASSVEHICLE_COST_ITEM), + "::", + stringify!(fPayCost) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOperatorName) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PASSVEHICLE_COST_ITEM), + "::", + stringify!(byOperatorName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleType) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PASSVEHICLE_COST_ITEM), + "::", + stringify!(byVehicleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 149usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PASSVEHICLE_COST_ITEM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPayRuleID) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PASSVEHICLE_COST_ITEM), + "::", + stringify!(dwPayRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFreeRuleID) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PASSVEHICLE_COST_ITEM), + "::", + stringify!(dwFreeRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_PASSVEHICLE_COST_ITEM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_ITS_PASSVEHICLE_COST_ITEM = _tagNET_ITS_PASSVEHICLE_COST_ITEM; +pub type LPNET_ITS_PASSVEHICLE_COST_ITEM = *mut _tagNET_ITS_PASSVEHICLE_COST_ITEM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _tagNET_ITS_HANDOVER_INFO { + pub dwSize: DWORD, + pub byOperatorName: [BYTE; 32usize], + pub byOperatorCard: [BYTE; 24usize], + pub byStartTime: [BYTE; 32usize], + pub byEndTime: [BYTE; 32usize], + pub fTotal_Pay: f32, + pub dwTotal_Records: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout__tagNET_ITS_HANDOVER_INFO() { + const UNINIT: ::std::mem::MaybeUninit<_tagNET_ITS_HANDOVER_INFO> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_tagNET_ITS_HANDOVER_INFO>(), + 196usize, + concat!("Size of: ", stringify!(_tagNET_ITS_HANDOVER_INFO)) + ); + assert_eq!( + ::std::mem::align_of::<_tagNET_ITS_HANDOVER_INFO>(), + 4usize, + concat!("Alignment of ", stringify!(_tagNET_ITS_HANDOVER_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_HANDOVER_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOperatorName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_HANDOVER_INFO), + "::", + stringify!(byOperatorName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOperatorCard) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_HANDOVER_INFO), + "::", + stringify!(byOperatorCard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartTime) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_HANDOVER_INFO), + "::", + stringify!(byStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEndTime) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_HANDOVER_INFO), + "::", + stringify!(byEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fTotal_Pay) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_HANDOVER_INFO), + "::", + stringify!(fTotal_Pay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotal_Records) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_HANDOVER_INFO), + "::", + stringify!(dwTotal_Records) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_ITS_HANDOVER_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ITS_HANDOVER_INFO = _tagNET_ITS_HANDOVER_INFO; +pub type LPNET_ITS_HANDOVER_INFO = *mut _tagNET_ITS_HANDOVER_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CURTRIGGERMODE { + pub dwSize: DWORD, + pub dwTriggerType: DWORD, + pub byRes: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CURTRIGGERMODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_DVR_CURTRIGGERMODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CURTRIGGERMODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CURTRIGGERMODE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTriggerType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CURTRIGGERMODE), + "::", + stringify!(dwTriggerType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CURTRIGGERMODE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CURTRIGGERMODE = tagNET_DVR_CURTRIGGERMODE; +pub type LPNET_DVR_CURTRIGGERMODE = *mut tagNET_DVR_CURTRIGGERMODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TEMP_HUMI { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub iHumidity: ::std::os::raw::c_int, + pub iTemp: ::std::os::raw::c_int, + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TEMP_HUMI() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_DVR_TEMP_HUMI)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TEMP_HUMI)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMP_HUMI), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMP_HUMI), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iHumidity) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMP_HUMI), + "::", + stringify!(iHumidity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTemp) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMP_HUMI), + "::", + stringify!(iTemp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMP_HUMI), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TEMP_HUMI = tagNET_DVR_TEMP_HUMI; +pub type LPNET_DVR_TEMP_HUMI = *mut tagNET_DVR_TEMP_HUMI; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMSOUNDMODE_CFG { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub dwSoundMode: DWORD, + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMSOUNDMODE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMSOUNDMODE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMSOUNDMODE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSOUNDMODE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSOUNDMODE_CFG), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSoundMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSOUNDMODE_CFG), + "::", + stringify!(dwSoundMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSOUNDMODE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMSOUNDMODE_CFG = tagNET_DVR_ALARMSOUNDMODE_CFG; +pub type LPNET_DVR_ALARMSOUNDMODE_CFG = *mut tagNET_DVR_ALARMSOUNDMODE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SECURITYMODE { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub dwMode: DWORD, + pub szRandCode: [::std::os::raw::c_char; 6usize], + pub byRes: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SECURITYMODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_DVR_SECURITYMODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SECURITYMODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SECURITYMODE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SECURITYMODE), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SECURITYMODE), + "::", + stringify!(dwMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szRandCode) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SECURITYMODE), + "::", + stringify!(szRandCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SECURITYMODE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SECURITYMODE = tagNET_DVR_SECURITYMODE; +pub type LPNET_DVR_SECURITYMODE = *mut tagNET_DVR_SECURITYMODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MOBILE_CAPTUREPIC_CFG { + pub dwSize: DWORD, + pub byPreviewFpsAdjMode: BYTE, + pub bySelPeccType: BYTE, + pub byOptHabit: BYTE, + pub byEnablePeccRec: BYTE, + pub byPicSize: BYTE, + pub byPicQuality: BYTE, + pub byRes: [BYTE; 62usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MOBILE_CAPTUREPIC_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_MOBILE_CAPTUREPIC_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MOBILE_CAPTUREPIC_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_CAPTUREPIC_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPreviewFpsAdjMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_CAPTUREPIC_CFG), + "::", + stringify!(byPreviewFpsAdjMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySelPeccType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_CAPTUREPIC_CFG), + "::", + stringify!(bySelPeccType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOptHabit) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_CAPTUREPIC_CFG), + "::", + stringify!(byOptHabit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnablePeccRec) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_CAPTUREPIC_CFG), + "::", + stringify!(byEnablePeccRec) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicSize) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_CAPTUREPIC_CFG), + "::", + stringify!(byPicSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicQuality) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_CAPTUREPIC_CFG), + "::", + stringify!(byPicQuality) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_CAPTUREPIC_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MOBILE_CAPTUREPIC_CFG = tagNET_DVR_MOBILE_CAPTUREPIC_CFG; +pub type LPNET_DVR_MOBILE_CAPTUREPIC_CFG = *mut tagNET_DVR_MOBILE_CAPTUREPIC_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CMS_PARAM { + pub dwSize: DWORD, + pub struAddr: NET_DVR_IPADDR, + pub wServerPort: WORD, + pub bySeverProtocolType: BYTE, + pub byStatus: BYTE, + pub sDeviceId: [BYTE; 32usize], + pub sPassWord: [::std::os::raw::c_char; 16usize], + #[doc = " IPC5.1.7 �������� Begin 2014-03-21"] + pub sPlatformEhomeVersion: [BYTE; 32usize], + #[doc = " IPC5.1.7 �������� end 2014-03-21"] + pub byNetWork: BYTE, + pub byAddressType: BYTE, + pub byProtocolVersion: BYTE, + pub byRes1: BYTE, + pub sDomainName: [BYTE; 64usize], + pub byEnable: BYTE, + pub byRes: [BYTE; 139usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CMS_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 440usize, + concat!("Size of: ", stringify!(tagNET_DVR_CMS_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CMS_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMS_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAddr) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMS_PARAM), + "::", + stringify!(struAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wServerPort) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMS_PARAM), + "::", + stringify!(wServerPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySeverProtocolType) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMS_PARAM), + "::", + stringify!(bySeverProtocolType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 151usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMS_PARAM), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDeviceId) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMS_PARAM), + "::", + stringify!(sDeviceId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassWord) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMS_PARAM), + "::", + stringify!(sPassWord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPlatformEhomeVersion) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMS_PARAM), + "::", + stringify!(sPlatformEhomeVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetWork) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMS_PARAM), + "::", + stringify!(byNetWork) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddressType) as usize - ptr as usize }, + 233usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMS_PARAM), + "::", + stringify!(byAddressType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProtocolVersion) as usize - ptr as usize }, + 234usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMS_PARAM), + "::", + stringify!(byProtocolVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 235usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMS_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDomainName) as usize - ptr as usize }, + 236usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMS_PARAM), + "::", + stringify!(sDomainName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 300usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMS_PARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 301usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CMS_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CMS_PARAM = tagNET_DVR_CMS_PARAM; +pub type LPNET_DVR_CMS_PARAM = *mut tagNET_DVR_CMS_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HEATMAP_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byDetSceneID: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HEATMAP_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_HEATMAP_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HEATMAP_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetSceneID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_COND), + "::", + stringify!(byDetSceneID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_HEATMAP_COND = tagNET_DVR_HEATMAP_COND; +pub type LPNET_DVR_HEATMAP_COND = *mut tagNET_DVR_HEATMAP_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HEATMAP_PARAM { + pub byTargetTrackEnable: BYTE, + pub bySensitivity: BYTE, + pub byBackgroundUpdateRate: BYTE, + pub bySceneChangeLevel: BYTE, + pub byMinTargetSize: BYTE, + pub byUploadHeatMapResultType: BYTE, + pub byDayReport: BYTE, + pub byWeekReport: BYTE, + pub fConfidence: f32, + pub byMonthReport: BYTE, + pub byYearReport: BYTE, + pub byRes: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HEATMAP_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_HEATMAP_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HEATMAP_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTargetTrackEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_PARAM), + "::", + stringify!(byTargetTrackEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_PARAM), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBackgroundUpdateRate) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_PARAM), + "::", + stringify!(byBackgroundUpdateRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySceneChangeLevel) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_PARAM), + "::", + stringify!(bySceneChangeLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMinTargetSize) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_PARAM), + "::", + stringify!(byMinTargetSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUploadHeatMapResultType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_PARAM), + "::", + stringify!(byUploadHeatMapResultType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDayReport) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_PARAM), + "::", + stringify!(byDayReport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWeekReport) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_PARAM), + "::", + stringify!(byWeekReport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fConfidence) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_PARAM), + "::", + stringify!(fConfidence) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonthReport) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_PARAM), + "::", + stringify!(byMonthReport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byYearReport) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_PARAM), + "::", + stringify!(byYearReport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_HEATMAP_PARAM = tagNET_DVR_HEATMAP_PARAM; +pub type LPNET_DVR_HEATMAP_PARAM = *mut tagNET_DVR_HEATMAP_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HEATMAP_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes: [BYTE; 3usize], + pub struRegion: [NET_VCA_POLYGON; 8usize], + pub struHeatMap: NET_DVR_HEATMAP_PARAM, + pub struHandleException: NET_DVR_HANDLEEXCEPTION_V40, + pub struAlarmSched: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub byRes1: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HEATMAP_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1768usize, + concat!("Size of: ", stringify!(tagNET_DVR_HEATMAP_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HEATMAP_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_CFG), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHeatMap) as usize - ptr as usize }, + 680usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_CFG), + "::", + stringify!(struHeatMap) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHandleException) as usize - ptr as usize }, + 700usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_CFG), + "::", + stringify!(struHandleException) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmSched) as usize - ptr as usize }, + 1032usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_CFG), + "::", + stringify!(struAlarmSched) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_CFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_HEATMAP_CFG = tagNET_DVR_HEATMAP_CFG; +pub type LPNET_DVR_HEATMAP_CFG = *mut tagNET_DVR_HEATMAP_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HEATMAP_RESULT { + pub dwSize: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub struStartTime: NET_DVR_TIME_EX, + pub struEndTime: NET_DVR_TIME_EX, + pub dwMaxHeatMapValue: DWORD, + pub dwMinHeatMapValue: DWORD, + pub dwTimeHeatMapValue: DWORD, + pub wArrayLine: WORD, + pub wArrayColumn: WORD, + pub pBuffer: *mut BYTE, + pub byDetSceneID: BYTE, + pub byBrokenNetHttp: BYTE, + pub wDevInfoIvmsChannelEx: WORD, + pub byTimeDiffFlag: BYTE, + pub cStartTimeDifferenceH: ::std::os::raw::c_char, + pub cStartTimeDifferenceM: ::std::os::raw::c_char, + pub cStopTimeDifferenceH: ::std::os::raw::c_char, + pub cStopTimeDifferenceM: ::std::os::raw::c_char, + pub byArrayUnitType: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwTotalTime: DWORD, + pub byRes: [BYTE; 112usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HEATMAP_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 320usize, + concat!("Size of: ", stringify!(tagNET_DVR_HEATMAP_RESULT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HEATMAP_RESULT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxHeatMapValue) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT), + "::", + stringify!(dwMaxHeatMapValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMinHeatMapValue) as usize - ptr as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT), + "::", + stringify!(dwMinHeatMapValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTimeHeatMapValue) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT), + "::", + stringify!(dwTimeHeatMapValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wArrayLine) as usize - ptr as usize }, + 180usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT), + "::", + stringify!(wArrayLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wArrayColumn) as usize - ptr as usize }, + 182usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT), + "::", + stringify!(wArrayColumn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT), + "::", + stringify!(pBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetSceneID) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT), + "::", + stringify!(byDetSceneID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrokenNetHttp) as usize - ptr as usize }, + 193usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT), + "::", + stringify!(byBrokenNetHttp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevInfoIvmsChannelEx) as usize - ptr as usize }, + 194usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT), + "::", + stringify!(wDevInfoIvmsChannelEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeDiffFlag) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT), + "::", + stringify!(byTimeDiffFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStartTimeDifferenceH) as usize - ptr as usize }, + 197usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT), + "::", + stringify!(cStartTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStartTimeDifferenceM) as usize - ptr as usize }, + 198usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT), + "::", + stringify!(cStartTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStopTimeDifferenceH) as usize - ptr as usize }, + 199usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT), + "::", + stringify!(cStopTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStopTimeDifferenceM) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT), + "::", + stringify!(cStopTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byArrayUnitType) as usize - ptr as usize }, + 201usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT), + "::", + stringify!(byArrayUnitType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 202usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotalTime) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT), + "::", + stringify!(dwTotalTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_HEATMAP_RESULT = tagNET_DVR_HEATMAP_RESULT; +pub type LPNET_DVR_HEATMAP_RESULT = *mut tagNET_DVR_HEATMAP_RESULT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HEATMAP_QUERY_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub struStartTime: NET_DVR_TIME_EX, + pub struEndTime: NET_DVR_TIME_EX, + pub byReportType: BYTE, + pub byDetSceneID: BYTE, + pub byHeatMapInfoType: BYTE, + pub byStatisticalModel: BYTE, + pub byRes: [BYTE; 124usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HEATMAP_QUERY_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 152usize, + concat!("Size of: ", stringify!(tagNET_DVR_HEATMAP_QUERY_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HEATMAP_QUERY_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_QUERY_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_QUERY_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_QUERY_COND), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_QUERY_COND), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReportType) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_QUERY_COND), + "::", + stringify!(byReportType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetSceneID) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_QUERY_COND), + "::", + stringify!(byDetSceneID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHeatMapInfoType) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_QUERY_COND), + "::", + stringify!(byHeatMapInfoType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatisticalModel) as usize - ptr as usize }, + 27usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_QUERY_COND), + "::", + stringify!(byStatisticalModel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_QUERY_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_HEATMAP_QUERY_COND = tagNET_DVR_HEATMAP_QUERY_COND; +pub type LPNET_DVR_HEATMAP_QUERY_COND = *mut tagNET_DVR_HEATMAP_QUERY_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HEATMAP_INFO { + pub dwSize: DWORD, + pub struStartTime: NET_DVR_TIME_EX, + pub struEndTime: NET_DVR_TIME_EX, + pub dwHeatMapPicLen: DWORD, + pub pBuffer: *mut BYTE, + pub dwTimeHeatMapValue: DWORD, + pub dwHeatMapMaxValue: DWORD, + pub dwHeatMapMinValue: DWORD, + pub wArrayLine: WORD, + pub wArrayColumn: WORD, + pub pArrayBuffer: *mut BYTE, + pub byArrayUnitType: BYTE, + pub byRes: [BYTE; 107usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HEATMAP_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 168usize, + concat!("Size of: ", stringify!(tagNET_DVR_HEATMAP_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HEATMAP_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_INFO), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_INFO), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHeatMapPicLen) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_INFO), + "::", + stringify!(dwHeatMapPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_INFO), + "::", + stringify!(pBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTimeHeatMapValue) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_INFO), + "::", + stringify!(dwTimeHeatMapValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHeatMapMaxValue) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_INFO), + "::", + stringify!(dwHeatMapMaxValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHeatMapMinValue) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_INFO), + "::", + stringify!(dwHeatMapMinValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wArrayLine) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_INFO), + "::", + stringify!(wArrayLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wArrayColumn) as usize - ptr as usize }, + 46usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_INFO), + "::", + stringify!(wArrayColumn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pArrayBuffer) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_INFO), + "::", + stringify!(pArrayBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byArrayUnitType) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_INFO), + "::", + stringify!(byArrayUnitType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 57usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_HEATMAP_INFO = tagNET_DVR_HEATMAP_INFO; +pub type LPNET_DVR_HEATMAP_INFO = *mut tagNET_DVR_HEATMAP_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PDC_QUERY_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub struStartTime: NET_DVR_TIME_EX, + pub struEndTime: NET_DVR_TIME_EX, + pub byReportType: BYTE, + pub byEnableProgramStatistics: BYTE, + pub byTriggerPeopleCountingData: BYTE, + pub byMultiChannelSearch: BYTE, + pub dwPlayScheduleNo: DWORD, + pub byISO8601: BYTE, + pub cStartTimeDifferenceH: ::std::os::raw::c_char, + pub cStartTimeDifferenceM: ::std::os::raw::c_char, + pub cStopTimeDifferenceH: ::std::os::raw::c_char, + pub cStopTimeDifferenceM: ::std::os::raw::c_char, + pub byRes1: [BYTE; 3usize], + pub dwSearchChannelNum: DWORD, + pub pSearchChannel: *mut ::std::os::raw::c_char, + pub byChild: BYTE, + pub byMinTimeInterva: BYTE, + pub byStatisticType: BYTE, + pub byFaceExpression: BYTE, + pub byGender: BYTE, + pub byMask: BYTE, + pub byAgeGroup: BYTE, + pub byGlasses: BYTE, + pub byRes: [BYTE; 96usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PDC_QUERY_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 160usize, + concat!("Size of: ", stringify!(tagNET_DVR_PDC_QUERY_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PDC_QUERY_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY_COND), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY_COND), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReportType) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY_COND), + "::", + stringify!(byReportType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableProgramStatistics) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY_COND), + "::", + stringify!(byEnableProgramStatistics) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTriggerPeopleCountingData) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY_COND), + "::", + stringify!(byTriggerPeopleCountingData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMultiChannelSearch) as usize - ptr as usize }, + 27usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY_COND), + "::", + stringify!(byMultiChannelSearch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlayScheduleNo) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY_COND), + "::", + stringify!(dwPlayScheduleNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byISO8601) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY_COND), + "::", + stringify!(byISO8601) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStartTimeDifferenceH) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY_COND), + "::", + stringify!(cStartTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStartTimeDifferenceM) as usize - ptr as usize }, + 34usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY_COND), + "::", + stringify!(cStartTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStopTimeDifferenceH) as usize - ptr as usize }, + 35usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY_COND), + "::", + stringify!(cStopTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStopTimeDifferenceM) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY_COND), + "::", + stringify!(cStopTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY_COND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSearchChannelNum) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY_COND), + "::", + stringify!(dwSearchChannelNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pSearchChannel) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY_COND), + "::", + stringify!(pSearchChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChild) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY_COND), + "::", + stringify!(byChild) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMinTimeInterva) as usize - ptr as usize }, + 57usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY_COND), + "::", + stringify!(byMinTimeInterva) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatisticType) as usize - ptr as usize }, + 58usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY_COND), + "::", + stringify!(byStatisticType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaceExpression) as usize - ptr as usize }, + 59usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY_COND), + "::", + stringify!(byFaceExpression) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGender) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY_COND), + "::", + stringify!(byGender) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMask) as usize - ptr as usize }, + 61usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY_COND), + "::", + stringify!(byMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAgeGroup) as usize - ptr as usize }, + 62usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY_COND), + "::", + stringify!(byAgeGroup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGlasses) as usize - ptr as usize }, + 63usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY_COND), + "::", + stringify!(byGlasses) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_QUERY_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PDC_QUERY_COND = tagNET_DVR_PDC_QUERY_COND; +pub type LPNET_DVR_PDC_QUERY_COND = *mut tagNET_DVR_PDC_QUERY_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PROGRAM_INFO { + pub dwProgramNo: DWORD, + pub sProgramName: [BYTE; 32usize], + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PROGRAM_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 52usize, + concat!("Size of: ", stringify!(tagNET_DVR_PROGRAM_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PROGRAM_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwProgramNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PROGRAM_INFO), + "::", + stringify!(dwProgramNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sProgramName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PROGRAM_INFO), + "::", + stringify!(sProgramName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PROGRAM_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PROGRAM_INFO = tagNET_DVR_PROGRAM_INFO; +pub type LPNET_DVR_PROGRAM_INFO = *mut tagNET_DVR_PROGRAM_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_POSINFO_OVERLAY { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byBackpackEnanble: BYTE, + pub bySexEnanble: BYTE, + pub byCarryEnanble: BYTE, + pub byRideEnanble: BYTE, + pub byMaskEnanble: BYTE, + pub byHatEnanble: BYTE, + pub bySleeveEnanble: BYTE, + pub byPantsTypeEnanble: BYTE, + pub byHairEnanble: BYTE, + pub byGlassesEnanble: BYTE, + pub byAgeEnanble: BYTE, + pub byHeightEnanble: BYTE, + pub byRes: [BYTE; 511usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_POSINFO_OVERLAY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 528usize, + concat!("Size of: ", stringify!(tagNET_DVR_POSINFO_OVERLAY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_POSINFO_OVERLAY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSINFO_OVERLAY), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSINFO_OVERLAY), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBackpackEnanble) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSINFO_OVERLAY), + "::", + stringify!(byBackpackEnanble) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySexEnanble) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSINFO_OVERLAY), + "::", + stringify!(bySexEnanble) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCarryEnanble) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSINFO_OVERLAY), + "::", + stringify!(byCarryEnanble) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRideEnanble) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSINFO_OVERLAY), + "::", + stringify!(byRideEnanble) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMaskEnanble) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSINFO_OVERLAY), + "::", + stringify!(byMaskEnanble) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHatEnanble) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSINFO_OVERLAY), + "::", + stringify!(byHatEnanble) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySleeveEnanble) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSINFO_OVERLAY), + "::", + stringify!(bySleeveEnanble) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPantsTypeEnanble) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSINFO_OVERLAY), + "::", + stringify!(byPantsTypeEnanble) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHairEnanble) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSINFO_OVERLAY), + "::", + stringify!(byHairEnanble) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGlassesEnanble) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSINFO_OVERLAY), + "::", + stringify!(byGlassesEnanble) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAgeEnanble) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSINFO_OVERLAY), + "::", + stringify!(byAgeEnanble) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHeightEnanble) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSINFO_OVERLAY), + "::", + stringify!(byHeightEnanble) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSINFO_OVERLAY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_POSINFO_OVERLAY = tagNET_DVR_POSINFO_OVERLAY; +pub type LPNET_DVR_POSINFO_OVERLAY = *mut tagNET_DVR_POSINFO_OVERLAY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PDC_RESULT { + pub dwSize: DWORD, + pub struStartTime: NET_DVR_TIME_EX, + pub struEndTime: NET_DVR_TIME_EX, + pub dwEnterNum: DWORD, + pub dwLeaveNum: DWORD, + pub struProgramInfo: NET_DVR_PROGRAM_INFO, + pub dwPeoplePassing: DWORD, + pub byRes1: [BYTE; 8usize], + pub byISO8601: BYTE, + pub cStartTimeDifferenceH: ::std::os::raw::c_char, + pub cStartTimeDifferenceM: ::std::os::raw::c_char, + pub cStopTimeDifferenceH: ::std::os::raw::c_char, + pub cStopTimeDifferenceM: ::std::os::raw::c_char, + pub byRes3: [BYTE; 3usize], + pub dwDuplicatePeople: DWORD, + pub dwExpressionUnknown: DWORD, + pub dwPokerFace: DWORD, + pub dwHappy: DWORD, + pub dwSurprised: DWORD, + pub dwDisgusted: DWORD, + pub dwSad: DWORD, + pub dwAngry: DWORD, + pub dwContemptuous: DWORD, + pub dwPanic: DWORD, + pub dwGenderUnknown: DWORD, + pub dwFemale: DWORD, + pub dwMale: DWORD, + pub dwMaskUnknown: DWORD, + pub dwMaskYes: DWORD, + pub dwMaskNo: DWORD, + pub dwGlassUnknown: DWORD, + pub dwGlassYes: DWORD, + pub dwGlassNo: DWORD, + pub dwSunglasses: DWORD, + pub dwAgeGroupUnknown: DWORD, + pub dwChild: DWORD, + pub dwYoung: DWORD, + pub dwMiddle: DWORD, + pub dwOld: DWORD, + pub dwInfant: DWORD, + pub dwKid: DWORD, + pub dwTeenager: DWORD, + pub dwPrime: DWORD, + pub dwMiddleAged: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PDC_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 284usize, + concat!("Size of: ", stringify!(tagNET_DVR_PDC_RESULT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PDC_RESULT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnterNum) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwEnterNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLeaveNum) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwLeaveNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struProgramInfo) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(struProgramInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPeoplePassing) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwPeoplePassing) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byISO8601) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(byISO8601) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStartTimeDifferenceH) as usize - ptr as usize }, + 93usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(cStartTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStartTimeDifferenceM) as usize - ptr as usize }, + 94usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(cStartTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStopTimeDifferenceH) as usize - ptr as usize }, + 95usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(cStopTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStopTimeDifferenceM) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(cStopTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 97usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDuplicatePeople) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwDuplicatePeople) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwExpressionUnknown) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwExpressionUnknown) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPokerFace) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwPokerFace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHappy) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwHappy) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSurprised) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwSurprised) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDisgusted) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwDisgusted) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSad) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwSad) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAngry) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwAngry) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwContemptuous) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwContemptuous) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPanic) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwPanic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGenderUnknown) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwGenderUnknown) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFemale) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwFemale) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMale) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwMale) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaskUnknown) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwMaskUnknown) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaskYes) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwMaskYes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaskNo) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwMaskNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGlassUnknown) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwGlassUnknown) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGlassYes) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwGlassYes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGlassNo) as usize - ptr as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwGlassNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSunglasses) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwSunglasses) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAgeGroupUnknown) as usize - ptr as usize }, + 180usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwAgeGroupUnknown) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChild) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwChild) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwYoung) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwYoung) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMiddle) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwMiddle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOld) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwOld) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInfant) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwInfant) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwKid) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwKid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTeenager) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwTeenager) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPrime) as usize - ptr as usize }, + 212usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwPrime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMiddleAged) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(dwMiddleAged) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RESULT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PDC_RESULT = tagNET_DVR_PDC_RESULT; +pub type LPNET_DVR_PDC_RESULT = *mut tagNET_DVR_PDC_RESULT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MOBILE_PLATE_RECOGCFG { + pub dwSize: DWORD, + pub byDefaultCHN: [BYTE; 3usize], + pub byTimeOsd: BYTE, + pub byRecogResultOsd: BYTE, + pub byRecogHint: BYTE, + pub byRecogDir: BYTE, + pub byRecogEnv: BYTE, + pub byRecogPlateType: BYTE, + pub byUploadPlate: BYTE, + pub byRes: [BYTE; 62usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MOBILE_PLATE_RECOGCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_MOBILE_PLATE_RECOGCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MOBILE_PLATE_RECOGCFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_PLATE_RECOGCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDefaultCHN) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_PLATE_RECOGCFG), + "::", + stringify!(byDefaultCHN) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeOsd) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_PLATE_RECOGCFG), + "::", + stringify!(byTimeOsd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecogResultOsd) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_PLATE_RECOGCFG), + "::", + stringify!(byRecogResultOsd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecogHint) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_PLATE_RECOGCFG), + "::", + stringify!(byRecogHint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecogDir) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_PLATE_RECOGCFG), + "::", + stringify!(byRecogDir) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecogEnv) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_PLATE_RECOGCFG), + "::", + stringify!(byRecogEnv) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecogPlateType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_PLATE_RECOGCFG), + "::", + stringify!(byRecogPlateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUploadPlate) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_PLATE_RECOGCFG), + "::", + stringify!(byUploadPlate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_PLATE_RECOGCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MOBILE_PLATE_RECOGCFG = tagNET_DVR_MOBILE_PLATE_RECOGCFG; +pub type LPNET_DVR_MOBILE_PLATE_RECOGCFG = *mut tagNET_DVR_MOBILE_PLATE_RECOGCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MOBILE_RADAR_CFG { + pub dwSize: DWORD, + pub byEnableRadar: BYTE, + pub byEnableAlarm: BYTE, + pub wOverSpeed: WORD, + pub bySpeedUnits: BYTE, + pub bydirection: BYTE, + pub byMeasureMode: BYTE, + pub byTargetType: BYTE, + pub bySensitivity: BYTE, + pub byCaptureNum: BYTE, + pub byUploadPlate: BYTE, + pub byRes: [BYTE; 61usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MOBILE_RADAR_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_MOBILE_RADAR_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MOBILE_RADAR_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_RADAR_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableRadar) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_RADAR_CFG), + "::", + stringify!(byEnableRadar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableAlarm) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_RADAR_CFG), + "::", + stringify!(byEnableAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wOverSpeed) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_RADAR_CFG), + "::", + stringify!(wOverSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpeedUnits) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_RADAR_CFG), + "::", + stringify!(bySpeedUnits) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bydirection) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_RADAR_CFG), + "::", + stringify!(bydirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMeasureMode) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_RADAR_CFG), + "::", + stringify!(byMeasureMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTargetType) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_RADAR_CFG), + "::", + stringify!(byTargetType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_RADAR_CFG), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaptureNum) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_RADAR_CFG), + "::", + stringify!(byCaptureNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUploadPlate) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_RADAR_CFG), + "::", + stringify!(byUploadPlate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_RADAR_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MOBILE_RADAR_CFG = tagNET_DVR_MOBILE_RADAR_CFG; +pub type LPNET_DVR_MOBILE_RADAR_CFG = *mut tagNET_DVR_MOBILE_RADAR_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MOBILE_LOCALPLATECHK_CFG { + pub dwSize: DWORD, + pub byCheck: BYTE, + pub byCheckAlarm: BYTE, + pub byCheckHint: BYTE, + pub byUploadUnlicensedCar: BYTE, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MOBILE_LOCALPLATECHK_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_MOBILE_LOCALPLATECHK_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MOBILE_LOCALPLATECHK_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_LOCALPLATECHK_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCheck) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_LOCALPLATECHK_CFG), + "::", + stringify!(byCheck) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCheckAlarm) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_LOCALPLATECHK_CFG), + "::", + stringify!(byCheckAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCheckHint) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_LOCALPLATECHK_CFG), + "::", + stringify!(byCheckHint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUploadUnlicensedCar) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_LOCALPLATECHK_CFG), + "::", + stringify!(byUploadUnlicensedCar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOBILE_LOCALPLATECHK_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MOBILE_LOCALPLATECHK_CFG = tagNET_DVR_MOBILE_LOCALPLATECHK_CFG; +pub type LPNET_DVR_MOBILE_LOCALPLATECHK_CFG = *mut tagNET_DVR_MOBILE_LOCALPLATECHK_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VEHICLE_CHECK { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub struPlateInfo: NET_DVR_PLATE_INFO, + pub wIllegalType: WORD, + pub byRes: [BYTE; 2usize], + pub sIllegalTypeInfo: [::std::os::raw::c_char; 128usize], + pub struIllegalTime: NET_DVR_TIME_V30, + pub byIllegalVehicleNum: BYTE, + pub byRes1: [BYTE; 3usize], + pub sCustomInfo: [::std::os::raw::c_char; 64usize], + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VEHICLE_CHECK() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 448usize, + concat!("Size of: ", stringify!(tagNET_DVR_VEHICLE_CHECK)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VEHICLE_CHECK)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CHECK), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CHECK), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CHECK), + "::", + stringify!(struPlateInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wIllegalType) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CHECK), + "::", + stringify!(wIllegalType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 106usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CHECK), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sIllegalTypeInfo) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CHECK), + "::", + stringify!(sIllegalTypeInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIllegalTime) as usize - ptr as usize }, + 236usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CHECK), + "::", + stringify!(struIllegalTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIllegalVehicleNum) as usize - ptr as usize }, + 248usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CHECK), + "::", + stringify!(byIllegalVehicleNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 249usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CHECK), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCustomInfo) as usize - ptr as usize }, + 252usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CHECK), + "::", + stringify!(sCustomInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 316usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_CHECK), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_VEHICLE_CHECK = tagNET_DVR_VEHICLE_CHECK; +pub type LPNET_DVR_VEHICLE_CHECK = *mut tagNET_DVR_VEHICLE_CHECK; +pub const _LONG_CFG_SEND_DATA_TYPE_ENUM__ENUM_DVR_VEHICLE_CHECK: _LONG_CFG_SEND_DATA_TYPE_ENUM_ = 1; +pub const _LONG_CFG_SEND_DATA_TYPE_ENUM__ENUM_MSC_SEND_DATA: _LONG_CFG_SEND_DATA_TYPE_ENUM_ = 2; +pub const _LONG_CFG_SEND_DATA_TYPE_ENUM__ENUM_ACS_SEND_DATA: _LONG_CFG_SEND_DATA_TYPE_ENUM_ = 3; +pub const _LONG_CFG_SEND_DATA_TYPE_ENUM__ENUM_TME_CARD_SEND_DATA: _LONG_CFG_SEND_DATA_TYPE_ENUM_ = + 4; +pub const _LONG_CFG_SEND_DATA_TYPE_ENUM__ENUM_TME_VEHICLE_SEND_DATA: + _LONG_CFG_SEND_DATA_TYPE_ENUM_ = 5; +pub const _LONG_CFG_SEND_DATA_TYPE_ENUM__ENUM_DVR_DEBUG_CMD: _LONG_CFG_SEND_DATA_TYPE_ENUM_ = 6; +pub const _LONG_CFG_SEND_DATA_TYPE_ENUM__ENUM_DVR_SCREEN_CTRL_CMD: _LONG_CFG_SEND_DATA_TYPE_ENUM_ = + 7; +pub const _LONG_CFG_SEND_DATA_TYPE_ENUM__ENUM_CVR_PASSBACK_SEND_DATA: + _LONG_CFG_SEND_DATA_TYPE_ENUM_ = 8; +pub const _LONG_CFG_SEND_DATA_TYPE_ENUM__ENUM_ACS_INTELLIGENT_IDENTITY_DATA: + _LONG_CFG_SEND_DATA_TYPE_ENUM_ = 9; +pub const _LONG_CFG_SEND_DATA_TYPE_ENUM__ENUM_VIDEO_INTERCOM_SEND_DATA: + _LONG_CFG_SEND_DATA_TYPE_ENUM_ = 10; +pub const _LONG_CFG_SEND_DATA_TYPE_ENUM__ENUM_SEND_JSON_DATA: _LONG_CFG_SEND_DATA_TYPE_ENUM_ = 11; +pub type _LONG_CFG_SEND_DATA_TYPE_ENUM_ = ::std::os::raw::c_uint; +pub use self::_LONG_CFG_SEND_DATA_TYPE_ENUM_ as LONG_CFG_SEND_DATA_TYPE_ENUM; +pub const _LONG_CFG_RECV_DATA_TYPE_ENUM__ENUM_DVR_ERROR_CODE: _LONG_CFG_RECV_DATA_TYPE_ENUM_ = 1; +pub const _LONG_CFG_RECV_DATA_TYPE_ENUM__ENUM_MSC_RECV_DATA: _LONG_CFG_RECV_DATA_TYPE_ENUM_ = 2; +pub const _LONG_CFG_RECV_DATA_TYPE_ENUM__ENUM_ACS_RECV_DATA: _LONG_CFG_RECV_DATA_TYPE_ENUM_ = 3; +pub type _LONG_CFG_RECV_DATA_TYPE_ENUM_ = ::std::os::raw::c_uint; +pub use self::_LONG_CFG_RECV_DATA_TYPE_ENUM_ as LONG_CFG_RECV_DATA_TYPE_ENUM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WIPER_CONTINUEWORK_PARAM { + pub byWorkTimeInterval: BYTE, + pub byRes: [BYTE; 3usize], + pub dwContinueWorkTime: DWORD, + pub byRes1: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIPER_CONTINUEWORK_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_WIPER_CONTINUEWORK_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_WIPER_CONTINUEWORK_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkTimeInterval) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIPER_CONTINUEWORK_PARAM), + "::", + stringify!(byWorkTimeInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIPER_CONTINUEWORK_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwContinueWorkTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIPER_CONTINUEWORK_PARAM), + "::", + stringify!(dwContinueWorkTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIPER_CONTINUEWORK_PARAM), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_WIPER_CONTINUEWORK_PARAM = tagNET_DVR_WIPER_CONTINUEWORK_PARAM; +pub type LPNET_DVR_WIPER_CONTINUEWORK_PARAM = *mut tagNET_DVR_WIPER_CONTINUEWORK_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_WIPERMODE_PARAM_UNION { + pub uLen: [BYTE; 16usize], + pub struWiperContinueWorkParam: NET_DVR_WIPER_CONTINUEWORK_PARAM, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIPERMODE_PARAM_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_WIPERMODE_PARAM_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_WIPERMODE_PARAM_UNION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIPERMODE_PARAM_UNION), + "::", + stringify!(uLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWiperContinueWorkParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIPERMODE_PARAM_UNION), + "::", + stringify!(struWiperContinueWorkParam) + ) + ); +} +pub type NET_DVR_WIPERMODE_PARAM_UNION = tagNET_DVR_WIPERMODE_PARAM_UNION; +pub type LPNET_DVR_WIPERMODE_PARAM_UNION = *mut tagNET_DVR_WIPERMODE_PARAM_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_WIPERINFO_CFG { + pub dwSize: DWORD, + pub byWiperWorkMode: BYTE, + pub byRes1: BYTE, + pub wSensitivity: WORD, + pub byRes: [BYTE; 20usize], + pub ustruWiperModeParam: NET_DVR_WIPERMODE_PARAM_UNION, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIPERINFO_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_WIPERINFO_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WIPERINFO_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIPERINFO_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWiperWorkMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIPERINFO_CFG), + "::", + stringify!(byWiperWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIPERINFO_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSensitivity) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIPERINFO_CFG), + "::", + stringify!(wSensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIPERINFO_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ustruWiperModeParam) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIPERINFO_CFG), + "::", + stringify!(ustruWiperModeParam) + ) + ); +} +pub type NET_DVR_WIPERINFO_CFG = tagNET_DVR_WIPERINFO_CFG; +pub type LPNET_DVR_WIPERINFO_CFG = *mut tagNET_DVR_WIPERINFO_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUTOFOCUS_TESTCFG { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRes: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUTOFOCUS_TESTCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUTOFOCUS_TESTCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AUTOFOCUS_TESTCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTOFOCUS_TESTCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTOFOCUS_TESTCFG), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTOFOCUS_TESTCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AUTOFOCUS_TESTCFG = tagNET_DVR_AUTOFOCUS_TESTCFG; +pub type LPNET_DVR_AUTOFOCUS_TESTCFG = *mut tagNET_DVR_AUTOFOCUS_TESTCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIDEO_OUT_CFG { + pub byDisplayMode: BYTE, + pub byBrightnessLevel: BYTE, + pub byContrastLevel: BYTE, + pub bySharpnessLevel: BYTE, + pub bySaturationLevel: BYTE, + pub byHueLevel: BYTE, + pub byImageMode: BYTE, + pub byRes: [BYTE; 5usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEO_OUT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEO_OUT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VIDEO_OUT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDisplayMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_OUT_CFG), + "::", + stringify!(byDisplayMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrightnessLevel) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_OUT_CFG), + "::", + stringify!(byBrightnessLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byContrastLevel) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_OUT_CFG), + "::", + stringify!(byContrastLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySharpnessLevel) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_OUT_CFG), + "::", + stringify!(bySharpnessLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySaturationLevel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_OUT_CFG), + "::", + stringify!(bySaturationLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHueLevel) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_OUT_CFG), + "::", + stringify!(byHueLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byImageMode) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_OUT_CFG), + "::", + stringify!(byImageMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_OUT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VIDEO_OUT_CFG = tagNET_DVR_VIDEO_OUT_CFG; +pub type LPNET_DVR_VIDEO_OUT_CFG = *mut tagNET_DVR_VIDEO_OUT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_COLOR_TEMPERATURE_CFG { + pub byRed: BYTE, + pub byGreen: BYTE, + pub byBlue: BYTE, + pub byRedOffset: BYTE, + pub byGreenOffset: BYTE, + pub byBlueOffset: BYTE, + pub byRes: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_COLOR_TEMPERATURE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_COLOR_TEMPERATURE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_COLOR_TEMPERATURE_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRed) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COLOR_TEMPERATURE_CFG), + "::", + stringify!(byRed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGreen) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COLOR_TEMPERATURE_CFG), + "::", + stringify!(byGreen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBlue) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COLOR_TEMPERATURE_CFG), + "::", + stringify!(byBlue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRedOffset) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COLOR_TEMPERATURE_CFG), + "::", + stringify!(byRedOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGreenOffset) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COLOR_TEMPERATURE_CFG), + "::", + stringify!(byGreenOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBlueOffset) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COLOR_TEMPERATURE_CFG), + "::", + stringify!(byBlueOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COLOR_TEMPERATURE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_COLOR_TEMPERATURE_CFG = tagNET_DVR_COLOR_TEMPERATURE_CFG; +pub type LPNET_DVR_COLOR_TEMPERATURE_CFG = *mut tagNET_DVR_COLOR_TEMPERATURE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ADC_CFG { + pub byGainR: BYTE, + pub byGainG: BYTE, + pub byGainB: BYTE, + pub byOffsetR: BYTE, + pub byOffsetG: BYTE, + pub byOffsetB: BYTE, + pub byRes: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ADC_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_ADC_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ADC_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGainR) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADC_CFG), + "::", + stringify!(byGainR) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGainG) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADC_CFG), + "::", + stringify!(byGainG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGainB) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADC_CFG), + "::", + stringify!(byGainB) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOffsetR) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADC_CFG), + "::", + stringify!(byOffsetR) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOffsetG) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADC_CFG), + "::", + stringify!(byOffsetG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOffsetB) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADC_CFG), + "::", + stringify!(byOffsetB) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADC_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ADC_CFG = tagNET_DVR_ADC_CFG; +pub type LPNET_DVR_ADC_CFG = *mut tagNET_DVR_ADC_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCREEN_EDGE_CFG { + pub byEnable: BYTE, + pub byLeftEdge: BYTE, + pub byRightEdge: BYTE, + pub byTopEdge: BYTE, + pub byLowerEdge: BYTE, + pub byRes: [BYTE; 7usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEN_EDGE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEN_EDGE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREEN_EDGE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_EDGE_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLeftEdge) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_EDGE_CFG), + "::", + stringify!(byLeftEdge) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRightEdge) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_EDGE_CFG), + "::", + stringify!(byRightEdge) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTopEdge) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_EDGE_CFG), + "::", + stringify!(byTopEdge) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLowerEdge) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_EDGE_CFG), + "::", + stringify!(byLowerEdge) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_EDGE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCREEN_EDGE_CFG = tagNET_DVR_SCREEN_EDGE_CFG; +pub type LPNET_DVR_SCREEN_EDGE_CFG = *mut tagNET_DVR_SCREEN_EDGE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCREEN_DISPLAY_CFG { + pub dwSize: DWORD, + pub byCfgType: BYTE, + pub byBackLight: BYTE, + pub byRes1: [BYTE; 2usize], + pub struVideoOutCfg: NET_DVR_VIDEO_OUT_CFG, + pub struColorTempCfg: NET_DVR_COLOR_TEMPERATURE_CFG, + pub struAdcCfg: NET_DVR_ADC_CFG, + pub struScreenEdgeCfg: NET_DVR_SCREEN_EDGE_CFG, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEN_DISPLAY_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEN_DISPLAY_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREEN_DISPLAY_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_DISPLAY_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCfgType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_DISPLAY_CFG), + "::", + stringify!(byCfgType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBackLight) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_DISPLAY_CFG), + "::", + stringify!(byBackLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_DISPLAY_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVideoOutCfg) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_DISPLAY_CFG), + "::", + stringify!(struVideoOutCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struColorTempCfg) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_DISPLAY_CFG), + "::", + stringify!(struColorTempCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAdcCfg) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_DISPLAY_CFG), + "::", + stringify!(struAdcCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struScreenEdgeCfg) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_DISPLAY_CFG), + "::", + stringify!(struScreenEdgeCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_DISPLAY_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCREEN_DISPLAY_CFG = tagNET_DVR_SCREEN_DISPLAY_CFG; +pub type LPNET_DVR_SCREEN_DISPLAY_CFG = *mut tagNET_DVR_SCREEN_DISPLAY_CFG; +pub const tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE_REMOTE_CTRL_POWERSUPPLY_OPEN: + tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE = 1; +pub const tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE_REMOTE_CTRL_POWERSUPPLY_CLOSE: + tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE = 2; +pub const tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE_REMOTE_CTRL_SIGNALSOURCE: + tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE = 3; +pub const tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE_REMOTE_CTRL_MENU: tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE = + 4; +pub const tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE_REMOTE_CTRL_DETERMINATION: + tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE = 5; +pub const tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE_REMOTE_CTRL_ON: tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE = 6; +pub const tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE_REMOTE_CTRL_UNDER: tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE = + 7; +pub const tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE_REMOTE_CTRL_LEFT: tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE = + 8; +pub const tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE_REMOTE_CTRL_RIGHT: tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE = + 9; +pub const tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE_REMOTE_CTRL_INFO: tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE = + 10; +pub const tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE_REMOTE_CTRL_RETURN: + tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE = 11; +pub const tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE_REMOTE_CTRL_NUM: tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE = + 12; +pub type tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE = ::std::os::raw::c_uint; +pub use self::tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE as SCREEN_REMOTE_CTRL_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SIMULATE_SCREEN_REMOTE_CTRL { + pub dwSize: DWORD, + pub byControlType: BYTE, + pub byControlParam: BYTE, + pub byRes: [BYTE; 14usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SIMULATE_SCREEN_REMOTE_CTRL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SIMULATE_SCREEN_REMOTE_CTRL) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SIMULATE_SCREEN_REMOTE_CTRL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIMULATE_SCREEN_REMOTE_CTRL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byControlType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIMULATE_SCREEN_REMOTE_CTRL), + "::", + stringify!(byControlType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byControlParam) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIMULATE_SCREEN_REMOTE_CTRL), + "::", + stringify!(byControlParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIMULATE_SCREEN_REMOTE_CTRL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SIMULATE_SCREEN_REMOTE_CTRL = tagNET_DVR_SIMULATE_SCREEN_REMOTE_CTRL; +pub type LPNET_DVR_SIMULATE_SCREEN_REMOTE_CTRL = *mut tagNET_DVR_SIMULATE_SCREEN_REMOTE_CTRL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCREEN_SIGNAL_CFG { + pub dwSize: DWORD, + pub bySignalSourceType: BYTE, + pub byNoSignalPic: BYTE, + pub byRes: [BYTE; 14usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEN_SIGNAL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEN_SIGNAL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREEN_SIGNAL_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_SIGNAL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySignalSourceType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_SIGNAL_CFG), + "::", + stringify!(bySignalSourceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNoSignalPic) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_SIGNAL_CFG), + "::", + stringify!(byNoSignalPic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_SIGNAL_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCREEN_SIGNAL_CFG = tagNET_DVR_SCREEN_SIGNAL_CFG; +pub type LPNET_DVR_SCREEN_SIGNAL_CFG = *mut tagNET_DVR_SCREEN_SIGNAL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVRSCREEN_SPLICE_CFG { + pub dwSize: DWORD, + pub bySpliceIndex: BYTE, + pub bySpliceX: BYTE, + pub bySpliceY: BYTE, + pub byWidth: BYTE, + pub byHeight: BYTE, + pub byRes: [BYTE; 11usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVRSCREEN_SPLICE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVRSCREEN_SPLICE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVRSCREEN_SPLICE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVRSCREEN_SPLICE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpliceIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVRSCREEN_SPLICE_CFG), + "::", + stringify!(bySpliceIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpliceX) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVRSCREEN_SPLICE_CFG), + "::", + stringify!(bySpliceX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpliceY) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVRSCREEN_SPLICE_CFG), + "::", + stringify!(bySpliceY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWidth) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVRSCREEN_SPLICE_CFG), + "::", + stringify!(byWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHeight) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVRSCREEN_SPLICE_CFG), + "::", + stringify!(byHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVRSCREEN_SPLICE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCREEN_SPLICE_CFG = tagNET_DVRSCREEN_SPLICE_CFG; +pub type LPNET_DVR_SCREEN_SPLICE_CFG = *mut tagNET_DVRSCREEN_SPLICE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCREEN_FAN_WORK_MODE_CFG { + pub dwSize: DWORD, + pub byWorkMode: BYTE, + pub byTemperatureLimitValue: BYTE, + pub byRes: [BYTE; 14usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEN_FAN_WORK_MODE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEN_FAN_WORK_MODE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SCREEN_FAN_WORK_MODE_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_FAN_WORK_MODE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_FAN_WORK_MODE_CFG), + "::", + stringify!(byWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTemperatureLimitValue) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_FAN_WORK_MODE_CFG), + "::", + stringify!(byTemperatureLimitValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_FAN_WORK_MODE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCREEN_FAN_WORK_MODE_CFG = tagNET_DVR_SCREEN_FAN_WORK_MODE_CFG; +pub type LPNET_DVR_SCREEN_FAN_WORK_MODE_CFG = *mut tagNET_DVR_SCREEN_FAN_WORK_MODE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCREEN_VGA_CFG { + pub dwSize: DWORD, + pub byEnableAutoAdjust: BYTE, + pub byHorizontalPosition: BYTE, + pub byVerticalPosition: BYTE, + pub byClock: BYTE, + pub byPhase: BYTE, + pub byRes: [BYTE; 11usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEN_VGA_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEN_VGA_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREEN_VGA_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_VGA_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableAutoAdjust) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_VGA_CFG), + "::", + stringify!(byEnableAutoAdjust) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHorizontalPosition) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_VGA_CFG), + "::", + stringify!(byHorizontalPosition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVerticalPosition) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_VGA_CFG), + "::", + stringify!(byVerticalPosition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byClock) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_VGA_CFG), + "::", + stringify!(byClock) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPhase) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_VGA_CFG), + "::", + stringify!(byPhase) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_VGA_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCREEN_VGA_CFG = tagNET_DVR_SCREEN_VGA_CFG; +pub type LPNET_DVR_SCREEN_VGA_CFG = *mut tagNET_DVR_SCREEN_VGA_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCREEN_MENU_CFG { + pub dwSize: DWORD, + pub byMenuLanguage: BYTE, + pub byTransparency: BYTE, + pub byDuration: BYTE, + pub byRes: [BYTE; 13usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEN_MENU_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEN_MENU_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREEN_MENU_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_MENU_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMenuLanguage) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_MENU_CFG), + "::", + stringify!(byMenuLanguage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransparency) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_MENU_CFG), + "::", + stringify!(byTransparency) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDuration) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_MENU_CFG), + "::", + stringify!(byDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_MENU_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCREEN_MENU_CFG = tagNET_DVR_SCREEN_MENU_CFG; +pub type LPNET_DVR_SCREEN_MENU_CFG = *mut tagNET_DVR_SCREEN_MENU_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PIP_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub bySubWindowSource: BYTE, + pub bySubWindowBorderColor: BYTE, + pub byRes1: BYTE, + pub struPosition: NET_DVR_RECTCFG, + pub byRes2: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PIP_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28usize, + concat!("Size of: ", stringify!(tagNET_DVR_PIP_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PIP_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIP_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIP_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubWindowSource) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIP_CFG), + "::", + stringify!(bySubWindowSource) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubWindowBorderColor) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIP_CFG), + "::", + stringify!(bySubWindowBorderColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIP_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPosition) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIP_CFG), + "::", + stringify!(struPosition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIP_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PIP_CFG = tagNET_DVR_PIP_CFG; +pub type LPNET_DVR_PIP_CFG = *mut tagNET_DVR_PIP_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEFOG_LCD { + pub dwSize: DWORD, + pub byDefogEnable: BYTE, + pub byDefogModel: BYTE, + pub byDefogLevel: BYTE, + pub byRes: [BYTE; 33usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEFOG_LCD() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEFOG_LCD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEFOG_LCD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEFOG_LCD), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDefogEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEFOG_LCD), + "::", + stringify!(byDefogEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDefogModel) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEFOG_LCD), + "::", + stringify!(byDefogModel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDefogLevel) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEFOG_LCD), + "::", + stringify!(byDefogLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEFOG_LCD), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DEFOG_LCD = tagNET_DVR_DEFOG_LCD; +pub type LPNET_DVR_DEFOG_LCD = *mut tagNET_DVR_DEFOG_LCD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCREEN_WALL_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes: [BYTE; 35usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEN_WALL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEN_WALL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREEN_WALL_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_WALL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_WALL_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_WALL_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCREEN_WALL_CFG = tagNET_DVR_SCREEN_WALL_CFG; +pub type LPNET_DVR_SCREEN_WALL_CFG = *mut tagNET_DVR_SCREEN_WALL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCREEN_POS_CFG { + pub dwSize: DWORD, + pub byScreenRowNum: BYTE, + pub byScreenColNum: BYTE, + pub byRes: [BYTE; 34usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEN_POS_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEN_POS_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREEN_POS_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_POS_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScreenRowNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_POS_CFG), + "::", + stringify!(byScreenRowNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScreenColNum) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_POS_CFG), + "::", + stringify!(byScreenColNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_POS_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCREEN_POS_CFG = tagNET_DVR_SCREEN_POS_CFG; +pub type LPNET_DVR_SCREEN_POS_CFG = *mut tagNET_DVR_SCREEN_POS_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIDEO_AUDIOIN_CFG { + pub dwSize: DWORD, + pub dwChanNo: DWORD, + pub byEnable: BYTE, + pub byRes: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEO_AUDIOIN_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEO_AUDIOIN_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VIDEO_AUDIOIN_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_AUDIOIN_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChanNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_AUDIOIN_CFG), + "::", + stringify!(dwChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_AUDIOIN_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_AUDIOIN_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VIDEO_AUDIOIN_CFG = tagNET_DVR_VIDEO_AUDIOIN_CFG; +pub type LPNET_DVR_VIDEO_AUDIOIN_CFG = *mut tagNET_DVR_VIDEO_AUDIOIN_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_VCA_DETION_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub struAlarmSched: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub struHandleException: NET_DVR_HANDLEEXCEPTION_V40, + pub dwMaxRelRecordChanNum: DWORD, + pub dwRelRecordChanNum: DWORD, + pub dwRelRecordChan: [DWORD; 64usize], + pub byEnablePreset: [BYTE; 64usize], + pub byPresetNo: [BYTE; 64usize], + pub byEnableCruise: [BYTE; 64usize], + pub byCruiseNo: [BYTE; 64usize], + pub byEnablePtzTrack: [BYTE; 64usize], + pub byPTZTrack: [BYTE; 64usize], + pub struHolidayTime: [NET_DVR_SCHEDTIME; 8usize], + pub byRes: [BYTE; 224usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_VCA_DETION_CFG() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_VCA_DETION_CFG> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_VCA_DETION_CFG>(), + 1468usize, + concat!("Size of: ", stringify!(_NET_DVR_VCA_DETION_CFG)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_VCA_DETION_CFG>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_VCA_DETION_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_VCA_DETION_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_VCA_DETION_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_VCA_DETION_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmSched) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_VCA_DETION_CFG), + "::", + stringify!(struAlarmSched) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHandleException) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_VCA_DETION_CFG), + "::", + stringify!(struHandleException) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxRelRecordChanNum) as usize - ptr as usize }, + 564usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_VCA_DETION_CFG), + "::", + stringify!(dwMaxRelRecordChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelRecordChanNum) as usize - ptr as usize }, + 568usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_VCA_DETION_CFG), + "::", + stringify!(dwRelRecordChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelRecordChan) as usize - ptr as usize }, + 572usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_VCA_DETION_CFG), + "::", + stringify!(dwRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnablePreset) as usize - ptr as usize }, + 828usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_VCA_DETION_CFG), + "::", + stringify!(byEnablePreset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPresetNo) as usize - ptr as usize }, + 892usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_VCA_DETION_CFG), + "::", + stringify!(byPresetNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableCruise) as usize - ptr as usize }, + 956usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_VCA_DETION_CFG), + "::", + stringify!(byEnableCruise) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCruiseNo) as usize - ptr as usize }, + 1020usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_VCA_DETION_CFG), + "::", + stringify!(byCruiseNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnablePtzTrack) as usize - ptr as usize }, + 1084usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_VCA_DETION_CFG), + "::", + stringify!(byEnablePtzTrack) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPTZTrack) as usize - ptr as usize }, + 1148usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_VCA_DETION_CFG), + "::", + stringify!(byPTZTrack) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHolidayTime) as usize - ptr as usize }, + 1212usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_VCA_DETION_CFG), + "::", + stringify!(struHolidayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1244usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_VCA_DETION_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VCA_DETION_CFG = _NET_DVR_VCA_DETION_CFG; +pub type LPNET_DVR_VCA_DETION_CFG = *mut _NET_DVR_VCA_DETION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VCA_DETECTION_CFG_V40 { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub struAlarmSched: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub dwHandleType: DWORD, + pub dwMaxRelAlarmOutChanNum: DWORD, + pub dwRelAlarmOut: [DWORD; 4128usize], + pub dwMaxRecordChanNum: DWORD, + pub dwRelRecordChan: [DWORD; 512usize], + pub dwEnablePresetChanNum: DWORD, + pub struPresetChanInfo: [NET_DVR_PRESETCHAN_INFO; 512usize], + pub byRes2: [BYTE; 516usize], + pub dwEnableCruiseChanNum: DWORD, + pub struCruiseChanInfo: [NET_DVR_CRUISECHAN_INFO; 512usize], + pub dwEnablePtzTrackChanNum: DWORD, + pub struPtzTrackInfo: [NET_DVR_PTZTRACKCHAN_INFO; 512usize], + pub struHolidayTime: [NET_DVR_SCHEDTIME; 8usize], + pub byRes: [BYTE; 224usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VCA_DETECTION_CFG_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 31876usize, + concat!("Size of: ", stringify!(tagNET_DVR_VCA_DETECTION_CFG_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VCA_DETECTION_CFG_V40) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_DETECTION_CFG_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_DETECTION_CFG_V40), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_DETECTION_CFG_V40), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmSched) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_DETECTION_CFG_V40), + "::", + stringify!(struAlarmSched) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHandleType) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_DETECTION_CFG_V40), + "::", + stringify!(dwHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxRelAlarmOutChanNum) as usize - ptr as usize }, + 236usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_DETECTION_CFG_V40), + "::", + stringify!(dwMaxRelAlarmOutChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelAlarmOut) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_DETECTION_CFG_V40), + "::", + stringify!(dwRelAlarmOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxRecordChanNum) as usize - ptr as usize }, + 16752usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_DETECTION_CFG_V40), + "::", + stringify!(dwMaxRecordChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelRecordChan) as usize - ptr as usize }, + 16756usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_DETECTION_CFG_V40), + "::", + stringify!(dwRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnablePresetChanNum) as usize - ptr as usize }, + 18804usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_DETECTION_CFG_V40), + "::", + stringify!(dwEnablePresetChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPresetChanInfo) as usize - ptr as usize }, + 18808usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_DETECTION_CFG_V40), + "::", + stringify!(struPresetChanInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 22904usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_DETECTION_CFG_V40), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnableCruiseChanNum) as usize - ptr as usize }, + 23420usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_DETECTION_CFG_V40), + "::", + stringify!(dwEnableCruiseChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCruiseChanInfo) as usize - ptr as usize }, + 23424usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_DETECTION_CFG_V40), + "::", + stringify!(struCruiseChanInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnablePtzTrackChanNum) as usize - ptr as usize }, + 27520usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_DETECTION_CFG_V40), + "::", + stringify!(dwEnablePtzTrackChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPtzTrackInfo) as usize - ptr as usize }, + 27524usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_DETECTION_CFG_V40), + "::", + stringify!(struPtzTrackInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHolidayTime) as usize - ptr as usize }, + 31620usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_DETECTION_CFG_V40), + "::", + stringify!(struHolidayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 31652usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_DETECTION_CFG_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VCA_DETECTION_CFG_V40 = tagNET_DVR_VCA_DETECTION_CFG_V40; +pub type LPNET_DVR_VCA_DETECTION_CFG_V40 = *mut tagNET_DVR_VCA_DETECTION_CFG_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CLOUD_STORAGE_CFG { + pub dwSize: DWORD, + pub byEnableCS: BYTE, + pub byRes: [BYTE; 511usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CLOUD_STORAGE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 516usize, + concat!("Size of: ", stringify!(tagNET_DVR_CLOUD_STORAGE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CLOUD_STORAGE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_STORAGE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableCS) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_STORAGE_CFG), + "::", + stringify!(byEnableCS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_STORAGE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CLOUD_STORAGE_CFG = tagNET_DVR_CLOUD_STORAGE_CFG; +pub type LPNET_DVR_CLOUD_STORAGE_CFG = *mut tagNET_DVR_CLOUD_STORAGE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CHANS_RECORD_STATUS_CFG { + pub dwSize: DWORD, + pub byValid: BYTE, + pub byRecord: BYTE, + pub dwRelatedHD: DWORD, + pub byOffLineRecord: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CHANS_RECORD_STATUS_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_CHANS_RECORD_STATUS_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_CHANS_RECORD_STATUS_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANS_RECORD_STATUS_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANS_RECORD_STATUS_CFG), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecord) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANS_RECORD_STATUS_CFG), + "::", + stringify!(byRecord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelatedHD) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANS_RECORD_STATUS_CFG), + "::", + stringify!(dwRelatedHD) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOffLineRecord) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANS_RECORD_STATUS_CFG), + "::", + stringify!(byOffLineRecord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHANS_RECORD_STATUS_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CHAN_RECORD_STATUS_CFG = tagNET_DVR_CHANS_RECORD_STATUS_CFG; +pub type LPNET_DVR_CHAN_RECORD_STATUS_CFG = *mut tagNET_DVR_CHANS_RECORD_STATUS_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_UPLOAD_RECORD_INFO { + pub dwSize: DWORD, + pub dwRecordType: DWORD, + pub sCameraID: [BYTE; 64usize], + pub struStartTime: NET_DVR_TIME_EX, + pub struStopTime: NET_DVR_TIME_EX, + pub dwStoragePoolID: DWORD, + pub byFormatType: BYTE, + pub byVideoEncType: BYTE, + pub byAudioEncType: BYTE, + pub byISO8601: BYTE, + pub cStartTimeDifferenceH: ::std::os::raw::c_char, + pub cStartTimeDifferenceM: ::std::os::raw::c_char, + pub cStopTimeDifferenceH: ::std::os::raw::c_char, + pub cStopTimeDifferenceM: ::std::os::raw::c_char, + pub byRes: [BYTE; 120usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_UPLOAD_RECORD_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 220usize, + concat!("Size of: ", stringify!(tagNET_DVR_UPLOAD_RECORD_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_UPLOAD_RECORD_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_RECORD_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_RECORD_INFO), + "::", + stringify!(dwRecordType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCameraID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_RECORD_INFO), + "::", + stringify!(sCameraID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_RECORD_INFO), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_RECORD_INFO), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStoragePoolID) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_RECORD_INFO), + "::", + stringify!(dwStoragePoolID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFormatType) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_RECORD_INFO), + "::", + stringify!(byFormatType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoEncType) as usize - ptr as usize }, + 93usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_RECORD_INFO), + "::", + stringify!(byVideoEncType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioEncType) as usize - ptr as usize }, + 94usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_RECORD_INFO), + "::", + stringify!(byAudioEncType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byISO8601) as usize - ptr as usize }, + 95usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_RECORD_INFO), + "::", + stringify!(byISO8601) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStartTimeDifferenceH) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_RECORD_INFO), + "::", + stringify!(cStartTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStartTimeDifferenceM) as usize - ptr as usize }, + 97usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_RECORD_INFO), + "::", + stringify!(cStartTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStopTimeDifferenceH) as usize - ptr as usize }, + 98usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_RECORD_INFO), + "::", + stringify!(cStopTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStopTimeDifferenceM) as usize - ptr as usize }, + 99usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_RECORD_INFO), + "::", + stringify!(cStopTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_RECORD_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_UPLOAD_RECORD_INFO = tagNET_DVR_UPLOAD_RECORD_INFO; +pub type LPNET_DVR_UPLOAD_RECORD_INFO = *mut tagNET_DVR_UPLOAD_RECORD_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IOOUT_COND { + pub dwSize: DWORD, + pub bySyncOutputNo: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IOOUT_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_IOOUT_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IOOUT_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IOOUT_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySyncOutputNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IOOUT_COND), + "::", + stringify!(bySyncOutputNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IOOUT_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_IOOUT_COND = tagNET_DVR_IOOUT_COND; +pub type LPNET_DVR_IOOUT_COND = *mut tagNET_DVR_IOOUT_COND; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_IOOUT_CFG { + pub dwSize: DWORD, + pub byWorkMode: BYTE, + pub byRes1: [BYTE; 3usize], + pub uWorkModeInfo: tagNET_DVR_IOOUT_CFG__bindgen_ty_1, + pub byRes2: [BYTE; 128usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_IOOUT_CFG__bindgen_ty_1 { + pub byUnionLen: [BYTE; 128usize], + pub struStrobeLamp: tagNET_DVR_IOOUT_CFG__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IOOUT_CFG__bindgen_ty_1__bindgen_ty_1 { + pub byDefaultState: BYTE, + pub byWorkState: BYTE, + pub byFreqMulti: BYTE, + pub byDutyRatio: BYTE, + pub byRes: [BYTE; 3usize], + pub byFlashLightEnable: BYTE, + pub struFlashLightTime: NET_DVR_SCHEDTIME, + pub byRes1: [BYTE; 116usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IOOUT_CFG__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_IOOUT_CFG__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_IOOUT_CFG__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDefaultState) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IOOUT_CFG__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byDefaultState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkState) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IOOUT_CFG__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byWorkState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFreqMulti) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IOOUT_CFG__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byFreqMulti) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDutyRatio) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IOOUT_CFG__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byDutyRatio) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IOOUT_CFG__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlashLightEnable) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IOOUT_CFG__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byFlashLightEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFlashLightTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IOOUT_CFG__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(struFlashLightTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IOOUT_CFG__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes1) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IOOUT_CFG__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_DVR_IOOUT_CFG__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_IOOUT_CFG__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUnionLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IOOUT_CFG__bindgen_ty_1), + "::", + stringify!(byUnionLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStrobeLamp) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IOOUT_CFG__bindgen_ty_1), + "::", + stringify!(struStrobeLamp) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IOOUT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_DVR_IOOUT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IOOUT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IOOUT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IOOUT_CFG), + "::", + stringify!(byWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IOOUT_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uWorkModeInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IOOUT_CFG), + "::", + stringify!(uWorkModeInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IOOUT_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_IOOUT_CFG = tagNET_DVR_IOOUT_CFG; +pub type LPNET_DVR_IOOUT_CFG = *mut tagNET_DVR_IOOUT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SIGNAL_SYNCCFG { + pub dwSize: DWORD, + pub wPhase: WORD, + pub byLineLock: BYTE, + pub byRes: [BYTE; 125usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SIGNAL_SYNCCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_SIGNAL_SYNCCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SIGNAL_SYNCCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNAL_SYNCCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPhase) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNAL_SYNCCFG), + "::", + stringify!(wPhase) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLineLock) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNAL_SYNCCFG), + "::", + stringify!(byLineLock) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNAL_SYNCCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SIGNAL_SYNCCFG = tagNET_DVR_SIGNAL_SYNCCFG; +pub type LPNET_DVR_SIGNAL_SYNCCFG = *mut tagNET_DVR_SIGNAL_SYNCCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_EZVIZ_ACCESS_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + #[doc = " IPC5.1.7 �������� Begin 2014-03-21"] + pub byDeviceStatus: BYTE, + pub byAllowRedirect: BYTE, + pub byDomainName: [BYTE; 64usize], + pub byRes1: BYTE, + pub byVerificationCode: [BYTE; 32usize], + pub byNetMode: BYTE, + pub byOfflineStatus: BYTE, + pub byEnableTiming: BYTE, + pub byRes2: BYTE, + pub byOperateCode: [BYTE; 64usize], + pub byRes: [BYTE; 344usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_EZVIZ_ACCESS_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 516usize, + concat!("Size of: ", stringify!(NET_DVR_EZVIZ_ACCESS_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_EZVIZ_ACCESS_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EZVIZ_ACCESS_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EZVIZ_ACCESS_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceStatus) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EZVIZ_ACCESS_CFG), + "::", + stringify!(byDeviceStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAllowRedirect) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EZVIZ_ACCESS_CFG), + "::", + stringify!(byAllowRedirect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDomainName) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EZVIZ_ACCESS_CFG), + "::", + stringify!(byDomainName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 71usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EZVIZ_ACCESS_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVerificationCode) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EZVIZ_ACCESS_CFG), + "::", + stringify!(byVerificationCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetMode) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EZVIZ_ACCESS_CFG), + "::", + stringify!(byNetMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOfflineStatus) as usize - ptr as usize }, + 105usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EZVIZ_ACCESS_CFG), + "::", + stringify!(byOfflineStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableTiming) as usize - ptr as usize }, + 106usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EZVIZ_ACCESS_CFG), + "::", + stringify!(byEnableTiming) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 107usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EZVIZ_ACCESS_CFG), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOperateCode) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EZVIZ_ACCESS_CFG), + "::", + stringify!(byOperateCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_EZVIZ_ACCESS_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_EZVIZ_ACCESS_CFG = *mut NET_DVR_EZVIZ_ACCESS_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARM_RELATE_COND { + pub dwSize: DWORD, + pub byAlarmType: BYTE, + pub byRelateActType: BYTE, + pub byRes: [BYTE; 2usize], + pub dwChannel: DWORD, + pub byRes1: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARM_RELATE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARM_RELATE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARM_RELATE_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RELATE_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RELATE_COND), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelateActType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RELATE_COND), + "::", + stringify!(byRelateActType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RELATE_COND), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RELATE_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RELATE_COND), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_ALARM_RELATE_COND = tagNET_DVR_ALARM_RELATE_COND; +pub type LPNET_DVR_ALARM_RELATE_COND = *mut tagNET_DVR_ALARM_RELATE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARM_RELATE_CFG { + pub dwSize: DWORD, + pub dwMaxRelateChanNum: DWORD, + pub dwRelateChan: [DWORD; 512usize], + pub byRes1: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARM_RELATE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2312usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARM_RELATE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARM_RELATE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RELATE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxRelateChanNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RELATE_CFG), + "::", + stringify!(dwMaxRelateChanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelateChan) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RELATE_CFG), + "::", + stringify!(dwRelateChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2056usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RELATE_CFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_ALARM_RELATE_CFG = tagNET_DVR_ALARM_RELATE_CFG; +pub type LPNET_DVR_ALARM_RELATE_CFG = *mut tagNET_DVR_ALARM_RELATE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZ_BASICPARAMCFG { + pub dwSize: DWORD, + pub byProportionalPan: BYTE, + pub byPresetFreezing: BYTE, + pub byPresetSpeed: BYTE, + pub byKeyboardCtrlSpeed: BYTE, + pub byAutoScanSpeed: BYTE, + pub byZoomingSpeed: BYTE, + pub byManualControlSpeed: BYTE, + pub byPTZMotionTrack: BYTE, + pub byRes: [BYTE; 124usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZ_BASICPARAMCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZ_BASICPARAMCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZ_BASICPARAMCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_BASICPARAMCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProportionalPan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_BASICPARAMCFG), + "::", + stringify!(byProportionalPan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPresetFreezing) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_BASICPARAMCFG), + "::", + stringify!(byPresetFreezing) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPresetSpeed) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_BASICPARAMCFG), + "::", + stringify!(byPresetSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byKeyboardCtrlSpeed) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_BASICPARAMCFG), + "::", + stringify!(byKeyboardCtrlSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAutoScanSpeed) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_BASICPARAMCFG), + "::", + stringify!(byAutoScanSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZoomingSpeed) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_BASICPARAMCFG), + "::", + stringify!(byZoomingSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byManualControlSpeed) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_BASICPARAMCFG), + "::", + stringify!(byManualControlSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPTZMotionTrack) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_BASICPARAMCFG), + "::", + stringify!(byPTZMotionTrack) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_BASICPARAMCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PTZ_BASICPARAMCFG = tagNET_DVR_PTZ_BASICPARAMCFG; +pub type LPNET_DVR_PTZ_BASICPARAMCFG = *mut tagNET_DVR_PTZ_BASICPARAMCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZ_OSDCFG { + pub dwSize: DWORD, + pub byZoomStatus: BYTE, + pub byPtStatus: BYTE, + pub byPresetStatus: BYTE, + pub byPositionDisplayFormat: BYTE, + pub byRes: [BYTE; 124usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZ_OSDCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZ_OSDCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZ_OSDCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_OSDCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZoomStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_OSDCFG), + "::", + stringify!(byZoomStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPtStatus) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_OSDCFG), + "::", + stringify!(byPtStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPresetStatus) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_OSDCFG), + "::", + stringify!(byPresetStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPositionDisplayFormat) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_OSDCFG), + "::", + stringify!(byPositionDisplayFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_OSDCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PTZ_OSDCFG = tagNET_DVR_PTZ_OSDCFG; +pub type LPNET_DVR_PTZ_OSDCFG = *mut tagNET_DVR_PTZ_OSDCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZ_POWEROFFMEMCFG { + pub dwSize: DWORD, + pub byResumeTimePoint: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZ_POWEROFFMEMCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZ_POWEROFFMEMCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZ_POWEROFFMEMCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_POWEROFFMEMCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byResumeTimePoint) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_POWEROFFMEMCFG), + "::", + stringify!(byResumeTimePoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_POWEROFFMEMCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PTZ_POWEROFFMEMCFG = tagNET_DVR_PTZ_POWEROFFMEMCFG; +pub type LPNET_DVR_PTZ_POWEROFFMEMCFG = *mut tagNET_DVR_PTZ_POWEROFFMEMCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZ_LIMITCOND { + pub dwSize: DWORD, + pub dwChan: DWORD, + pub byLimitMode: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZ_LIMITCOND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZ_LIMITCOND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZ_LIMITCOND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_LIMITCOND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_LIMITCOND), + "::", + stringify!(dwChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLimitMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_LIMITCOND), + "::", + stringify!(byLimitMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_LIMITCOND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PTZ_LIMITCOND = tagNET_DVR_PTZ_LIMITCOND; +pub type LPNET_DVR_PTZ_LIMITCOND = *mut tagNET_DVR_PTZ_LIMITCOND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZ_LIMITCFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byLimitStatus: BYTE, + pub byRes: [BYTE; 122usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZ_LIMITCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZ_LIMITCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZ_LIMITCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_LIMITCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_LIMITCFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLimitStatus) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_LIMITCFG), + "::", + stringify!(byLimitStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_LIMITCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PTZ_LIMITCFG = tagNET_DVR_PTZ_LIMITCFG; +pub type LPNET_DVR_PTZ_LIMITCFG = *mut tagNET_DVR_PTZ_LIMITCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZ_LIMITCTRL { + pub dwSize: DWORD, + pub dwChan: DWORD, + pub byLimitMode: BYTE, + pub byWorkMode: BYTE, + pub byRes: [BYTE; 122usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZ_LIMITCTRL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZ_LIMITCTRL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZ_LIMITCTRL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_LIMITCTRL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_LIMITCTRL), + "::", + stringify!(dwChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLimitMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_LIMITCTRL), + "::", + stringify!(byLimitMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkMode) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_LIMITCTRL), + "::", + stringify!(byWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_LIMITCTRL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PTZ_LIMITCTRL = tagNET_DVR_PTZ_LIMITCTRL; +pub type LPNET_DVR_PTZ_LIMITCTRL = *mut tagNET_DVR_PTZ_LIMITCTRL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZ_LOCKCFG { + pub dwSize: DWORD, + pub byWorkMode: BYTE, + pub byRes: [BYTE; 123usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZ_LOCKCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZ_LOCKCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZ_LOCKCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_LOCKCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_LOCKCFG), + "::", + stringify!(byWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_LOCKCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PTZ_LOCKCFG = tagNET_DVR_PTZ_LOCKCFG; +pub type LPNET_DVR_PTZ_LOCKCFG = *mut tagNET_DVR_PTZ_LOCKCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZLOCKINFO_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZLOCKINFO_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZLOCKINFO_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZLOCKINFO_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZLOCKINFO_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZLOCKINFO_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZLOCKINFO_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PTZLOCKINFO_COND = tagNET_DVR_PTZLOCKINFO_COND; +pub type LPNET_DVR_PTZLOCKINFO_COND = *mut tagNET_DVR_PTZLOCKINFO_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZLOCKINFO { + pub dwSize: DWORD, + pub dwRemainingSec: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZLOCKINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZLOCKINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZLOCKINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZLOCKINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRemainingSec) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZLOCKINFO), + "::", + stringify!(dwRemainingSec) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZLOCKINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PTZLOCKINFO = tagNET_DVR_PTZLOCKINFO; +pub type LPNET_DVR_PTZLOCKINFO = *mut tagNET_DVR_PTZLOCKINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CRUISEPOINT_COND { + pub dwSize: DWORD, + pub dwChan: DWORD, + pub wRouteNo: WORD, + pub byRes: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CRUISEPOINT_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_CRUISEPOINT_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CRUISEPOINT_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CRUISEPOINT_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CRUISEPOINT_COND), + "::", + stringify!(dwChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRouteNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CRUISEPOINT_COND), + "::", + stringify!(wRouteNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CRUISEPOINT_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CRUISEPOINT_COND = tagNET_DVR_CRUISEPOINT_COND; +pub type LPNET_DVR_CRUISEPOINT_COND = *mut tagNET_DVR_CRUISEPOINT_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_CRUISEPOINT_PARAM { + pub wPresetNo: WORD, + pub wDwell: WORD, + pub bySpeed: BYTE, + pub bySupport256PresetNo: BYTE, + pub byRes: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_CRUISEPOINT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(NET_DVR_CRUISEPOINT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_CRUISEPOINT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPresetNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CRUISEPOINT_PARAM), + "::", + stringify!(wPresetNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDwell) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CRUISEPOINT_PARAM), + "::", + stringify!(wDwell) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpeed) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CRUISEPOINT_PARAM), + "::", + stringify!(bySpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupport256PresetNo) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CRUISEPOINT_PARAM), + "::", + stringify!(bySupport256PresetNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CRUISEPOINT_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_CRUISEPOINT_PARAM = *mut NET_DVR_CRUISEPOINT_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_CRUISEPOINT_V40 { + pub dwSize: DWORD, + pub struCruisePoint: [NET_DVR_CRUISEPOINT_PARAM; 128usize], + pub Res: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_CRUISEPOINT_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1604usize, + concat!("Size of: ", stringify!(NET_DVR_CRUISEPOINT_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_CRUISEPOINT_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CRUISEPOINT_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCruisePoint) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CRUISEPOINT_V40), + "::", + stringify!(struCruisePoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Res) as usize - ptr as usize }, + 1540usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CRUISEPOINT_V40), + "::", + stringify!(Res) + ) + ); +} +pub type LPNET_DVR_CRUISEPOINT_V40 = *mut NET_DVR_CRUISEPOINT_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_CRUISEPOINT_V50 { + pub dwSize: DWORD, + pub struCruisePoint: [NET_DVR_CRUISEPOINT_PARAM; 256usize], + pub Res: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_CRUISEPOINT_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 3140usize, + concat!("Size of: ", stringify!(NET_DVR_CRUISEPOINT_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_CRUISEPOINT_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CRUISEPOINT_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCruisePoint) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CRUISEPOINT_V50), + "::", + stringify!(struCruisePoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Res) as usize - ptr as usize }, + 3076usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_CRUISEPOINT_V50), + "::", + stringify!(Res) + ) + ); +} +pub type LPNET_DVR_CRUISEPOINT_V50 = *mut NET_DVR_CRUISEPOINT_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TEST_VERSION_HEAD { + pub dwSize: DWORD, + pub dwParam1: DWORD, + pub byParam2: BYTE, + pub byRes: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TEST_VERSION_HEAD() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_TEST_VERSION_HEAD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TEST_VERSION_HEAD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_VERSION_HEAD), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwParam1) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_VERSION_HEAD), + "::", + stringify!(dwParam1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParam2) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_VERSION_HEAD), + "::", + stringify!(byParam2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_VERSION_HEAD), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TEST_VERSION_HEAD = tagNET_DVR_TEST_VERSION_HEAD; +pub type LPNET_DVR_TEST_VERSION_HEAD = *mut tagNET_DVR_TEST_VERSION_HEAD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TEST_VERSION_HEAD_V1 { + pub dwSize: DWORD, + pub dwParam1: DWORD, + pub byParam2: BYTE, + pub byRes: [BYTE; 31usize], + pub dwParam1_1: DWORD, + pub byParam1_2: BYTE, + pub byRes1: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TEST_VERSION_HEAD_V1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_TEST_VERSION_HEAD_V1)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TEST_VERSION_HEAD_V1)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_VERSION_HEAD_V1), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwParam1) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_VERSION_HEAD_V1), + "::", + stringify!(dwParam1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParam2) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_VERSION_HEAD_V1), + "::", + stringify!(byParam2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_VERSION_HEAD_V1), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwParam1_1) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_VERSION_HEAD_V1), + "::", + stringify!(dwParam1_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParam1_2) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_VERSION_HEAD_V1), + "::", + stringify!(byParam1_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 45usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_VERSION_HEAD_V1), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_TEST_VERSION_HEAD_V1 = tagNET_DVR_TEST_VERSION_HEAD_V1; +pub type LPNET_DVR_TEST_VERSION_HEAD_V1 = *mut tagNET_DVR_TEST_VERSION_HEAD_V1; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TEST_VERSION_HEAD_V2 { + pub dwSize: DWORD, + pub dwParam1: DWORD, + pub byParam2: BYTE, + pub byRes: [BYTE; 31usize], + pub dwParam1_1: DWORD, + pub byParam1_2: BYTE, + pub byRes1: [BYTE; 31usize], + pub dwParam2_1: DWORD, + pub byParam2_2: BYTE, + pub byRes2: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TEST_VERSION_HEAD_V2() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 112usize, + concat!("Size of: ", stringify!(tagNET_DVR_TEST_VERSION_HEAD_V2)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TEST_VERSION_HEAD_V2)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_VERSION_HEAD_V2), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwParam1) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_VERSION_HEAD_V2), + "::", + stringify!(dwParam1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParam2) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_VERSION_HEAD_V2), + "::", + stringify!(byParam2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_VERSION_HEAD_V2), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwParam1_1) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_VERSION_HEAD_V2), + "::", + stringify!(dwParam1_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParam1_2) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_VERSION_HEAD_V2), + "::", + stringify!(byParam1_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 45usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_VERSION_HEAD_V2), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwParam2_1) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_VERSION_HEAD_V2), + "::", + stringify!(dwParam2_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParam2_2) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_VERSION_HEAD_V2), + "::", + stringify!(byParam2_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 81usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEST_VERSION_HEAD_V2), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_TEST_VERSION_HEAD_V2 = tagNET_DVR_TEST_VERSION_HEAD_V2; +pub type LPNET_DVR_TEST_VERSION_HEAD_V2 = *mut tagNET_DVR_TEST_VERSION_HEAD_V2; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIDEOWALLDISPLAYMODE { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub struRect: NET_DVR_RECTCFG_EX, + pub sName: [BYTE; 32usize], + pub byRes2: [BYTE; 100usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEOWALLDISPLAYMODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 160usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEOWALLDISPLAYMODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VIDEOWALLDISPLAYMODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLDISPLAYMODE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLDISPLAYMODE), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLDISPLAYMODE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRect) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLDISPLAYMODE), + "::", + stringify!(struRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sName) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLDISPLAYMODE), + "::", + stringify!(sName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLDISPLAYMODE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_VIDEOWALLDISPLAYMODE = tagNET_DVR_VIDEOWALLDISPLAYMODE; +pub type LPNET_DVR_VIDEOWALLDISPLAYMODE = *mut tagNET_DVR_VIDEOWALLDISPLAYMODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DISPLAYPARAM { + pub dwDisplayNo: DWORD, + pub byDispChanType: BYTE, + pub byRes: [BYTE; 11usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DISPLAYPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_DISPLAYPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DISPLAYPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDisplayNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPLAYPARAM), + "::", + stringify!(dwDisplayNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispChanType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPLAYPARAM), + "::", + stringify!(byDispChanType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPLAYPARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DISPLAYPARAM = tagNET_DVR_DISPLAYPARAM; +pub type LPNET_DVR_DISPLAYPARAM = *mut tagNET_DVR_DISPLAYPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DISPLAYCFG { + pub dwSize: DWORD, + pub struDisplayParam: [NET_DVR_DISPLAYPARAM; 512usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DISPLAYCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8324usize, + concat!("Size of: ", stringify!(tagNET_DVR_DISPLAYCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DISPLAYCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPLAYCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDisplayParam) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPLAYCFG), + "::", + stringify!(struDisplayParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPLAYCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DISPLAYCFG = tagNET_DVR_DISPLAYCFG; +pub type LPNET_DVR_DISPLAYCFG = *mut tagNET_DVR_DISPLAYCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIDEOWALLDISPLAYPOSITION { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byCoordinateType: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwVideoWallNo: DWORD, + pub dwDisplayNo: DWORD, + pub struRectCfg: NET_DVR_RECTCFG_EX, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEOWALLDISPLAYPOSITION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 100usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEOWALLDISPLAYPOSITION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VIDEOWALLDISPLAYPOSITION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLDISPLAYPOSITION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLDISPLAYPOSITION), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCoordinateType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLDISPLAYPOSITION), + "::", + stringify!(byCoordinateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLDISPLAYPOSITION), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoWallNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLDISPLAYPOSITION), + "::", + stringify!(dwVideoWallNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDisplayNo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLDISPLAYPOSITION), + "::", + stringify!(dwDisplayNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRectCfg) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLDISPLAYPOSITION), + "::", + stringify!(struRectCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLDISPLAYPOSITION), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_VIDEOWALLDISPLAYPOSITION = tagNET_DVR_VIDEOWALLDISPLAYPOSITION; +pub type LPNET_DVR_VIDEOWALLDISPLAYPOSITION = *mut tagNET_DVR_VIDEOWALLDISPLAYPOSITION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIDEOWALLWINDOWPOSITION { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byWndOperateMode: BYTE, + pub byRes1: [BYTE; 6usize], + pub dwWindowNo: DWORD, + pub dwLayerIndex: DWORD, + pub struRect: NET_DVR_RECTCFG_EX, + pub struResolution: NET_DVR_RECTCFG_EX, + pub dwXCoordinate: DWORD, + pub dwYCoordinate: DWORD, + pub byRes2: [BYTE; 36usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEOWALLWINDOWPOSITION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 104usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEOWALLWINDOWPOSITION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VIDEOWALLWINDOWPOSITION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLWINDOWPOSITION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLWINDOWPOSITION), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWndOperateMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLWINDOWPOSITION), + "::", + stringify!(byWndOperateMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLWINDOWPOSITION), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWindowNo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLWINDOWPOSITION), + "::", + stringify!(dwWindowNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLayerIndex) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLWINDOWPOSITION), + "::", + stringify!(dwLayerIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRect) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLWINDOWPOSITION), + "::", + stringify!(struRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struResolution) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLWINDOWPOSITION), + "::", + stringify!(struResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwXCoordinate) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLWINDOWPOSITION), + "::", + stringify!(dwXCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwYCoordinate) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLWINDOWPOSITION), + "::", + stringify!(dwYCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLWINDOWPOSITION), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_VIDEOWALLWINDOWPOSITION = tagNET_DVR_VIDEOWALLWINDOWPOSITION; +pub type LPNET_DVR_VIDEOWALLWINDOWPOSITION = *mut tagNET_DVR_VIDEOWALLWINDOWPOSITION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIDEO_WALL_INFO { + pub dwSize: DWORD, + pub dwWindowNo: DWORD, + pub dwSceneNo: DWORD, + pub dwDestWallNo: DWORD, + pub dwDestSceneNo: DWORD, + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEO_WALL_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEO_WALL_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VIDEO_WALL_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_WALL_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWindowNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_WALL_INFO), + "::", + stringify!(dwWindowNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSceneNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_WALL_INFO), + "::", + stringify!(dwSceneNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDestWallNo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_WALL_INFO), + "::", + stringify!(dwDestWallNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDestSceneNo) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_WALL_INFO), + "::", + stringify!(dwDestSceneNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_WALL_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VIDEO_WALL_INFO = tagNET_DVR_VIDEO_WALL_INFO; +pub type LPNET_DVR_VIDEO_WALL_INFO = *mut tagNET_DVR_VIDEO_WALL_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIRTUALLED_PARAM { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byDispMode: BYTE, + pub byWndOperateMode: BYTE, + pub byType: BYTE, + pub byDirection: BYTE, + pub byTimeType: BYTE, + pub byDateFormat: BYTE, + pub byTimeFormat: BYTE, + pub struContentColor: NET_DVR_RGB_COLOR, + pub struBackColor: NET_DVR_RGB_COLOR, + pub struRect: NET_DVR_RECTCFG_EX, + pub dwContentNum: DWORD, + pub byLedContent: [BYTE; 512usize], + pub byMoveMode: BYTE, + pub byFontSize: BYTE, + pub byMoveDirection: BYTE, + pub byMoveSpeed: BYTE, + pub struResolution: NET_DVR_RECTCFG_EX, + pub dwXCoordinate: DWORD, + pub dwYCoordinate: DWORD, + pub byHourFormat: BYTE, + pub byAMFormat: BYTE, + pub byPMFormat: BYTE, + pub byAlignmentX: BYTE, + pub byAlignmentY: BYTE, + pub byFontType: BYTE, + pub byRes2: [BYTE; 90usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIRTUALLED_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 684usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIRTUALLED_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VIRTUALLED_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(byDispMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWndOperateMode) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(byWndOperateMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDirection) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(byDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeType) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(byTimeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDateFormat) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(byDateFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeFormat) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(byTimeFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struContentColor) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(struContentColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBackColor) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(struBackColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRect) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(struRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwContentNum) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(dwContentNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLedContent) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(byLedContent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMoveMode) as usize - ptr as usize }, + 556usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(byMoveMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFontSize) as usize - ptr as usize }, + 557usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(byFontSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMoveDirection) as usize - ptr as usize }, + 558usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(byMoveDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMoveSpeed) as usize - ptr as usize }, + 559usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(byMoveSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struResolution) as usize - ptr as usize }, + 560usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(struResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwXCoordinate) as usize - ptr as usize }, + 580usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(dwXCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwYCoordinate) as usize - ptr as usize }, + 584usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(dwYCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHourFormat) as usize - ptr as usize }, + 588usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(byHourFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAMFormat) as usize - ptr as usize }, + 589usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(byAMFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPMFormat) as usize - ptr as usize }, + 590usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(byPMFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlignmentX) as usize - ptr as usize }, + 591usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(byAlignmentX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlignmentY) as usize - ptr as usize }, + 592usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(byAlignmentY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFontType) as usize - ptr as usize }, + 593usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(byFontType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 594usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIRTUALLED_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_VIRTUALLED_PARAM = tagNET_DVR_VIRTUALLED_PARAM; +pub type LPNET_DVR_VIRTUALLED_PARAM = *mut tagNET_DVR_VIRTUALLED_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IMAGE_CUT_MODE { + pub dwSize: DWORD, + pub byCutMode: BYTE, + pub byRes: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IMAGE_CUT_MODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_IMAGE_CUT_MODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IMAGE_CUT_MODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGE_CUT_MODE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCutMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGE_CUT_MODE), + "::", + stringify!(byCutMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGE_CUT_MODE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_IMAGE_CUT_MODE = tagNET_DVR_IMAGE_CUT_MODE; +pub type LPNET_DVR_IMAGE_CUT_MODE = *mut tagNET_DVR_IMAGE_CUT_MODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_USING_SERIALPORT { + pub dwSize: DWORD, + pub dwSerialPort: DWORD, + pub byProtocolType: BYTE, + pub byRes: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_USING_SERIALPORT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_USING_SERIALPORT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_USING_SERIALPORT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USING_SERIALPORT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSerialPort) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USING_SERIALPORT), + "::", + stringify!(dwSerialPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProtocolType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USING_SERIALPORT), + "::", + stringify!(byProtocolType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_USING_SERIALPORT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_USING_SERIALPORT = tagNET_DVR_USING_SERIALPORT; +pub type LPNET_DVR_USING_SERIALPORT = *mut tagNET_DVR_USING_SERIALPORT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIDEOWALLSCENECFG { + pub dwSize: DWORD, + pub sSceneName: [BYTE; 32usize], + pub byEnable: BYTE, + pub bySceneIndex: BYTE, + pub byRes: [BYTE; 78usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEOWALLSCENECFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 116usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEOWALLSCENECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VIDEOWALLSCENECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLSCENECFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSceneName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLSCENECFG), + "::", + stringify!(sSceneName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLSCENECFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySceneIndex) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLSCENECFG), + "::", + stringify!(bySceneIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALLSCENECFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VIDEOWALLSCENECFG = tagNET_DVR_VIDEOWALLSCENECFG; +pub type LPNET_DVR_VIDEOWALLSCENECFG = *mut tagNET_DVR_VIDEOWALLSCENECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCENE_CONTROL_INFO { + pub dwSize: DWORD, + pub struVideoWallInfo: NET_DVR_VIDEO_WALL_INFO, + pub dwCmd: DWORD, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCENE_CONTROL_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCENE_CONTROL_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCENE_CONTROL_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENE_CONTROL_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVideoWallInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENE_CONTROL_INFO), + "::", + stringify!(struVideoWallInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCmd) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENE_CONTROL_INFO), + "::", + stringify!(dwCmd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCENE_CONTROL_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCENE_CONTROL_INFO = tagNET_DVR_SCENE_CONTROL_INFO; +pub type LPNET_DVR_SCENE_CONTROL_INFO = *mut tagNET_DVR_SCENE_CONTROL_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SHOW_CONTROL_INFO { + pub dwSize: DWORD, + pub dwDisplayNo: DWORD, + pub byEnable: BYTE, + pub byChanType: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwWallNo: DWORD, + pub byRes2: [BYTE; 56usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SHOW_CONTROL_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_SHOW_CONTROL_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SHOW_CONTROL_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHOW_CONTROL_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDisplayNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHOW_CONTROL_INFO), + "::", + stringify!(dwDisplayNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHOW_CONTROL_INFO), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanType) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHOW_CONTROL_INFO), + "::", + stringify!(byChanType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHOW_CONTROL_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWallNo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHOW_CONTROL_INFO), + "::", + stringify!(dwWallNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHOW_CONTROL_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SHOW_CONTROL_INFO = tagNET_DVR_SHOW_CONTROL_INFO; +pub type LPNET_DVR_SHOW_CONTROL_INFO = *mut tagNET_DVR_SHOW_CONTROL_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BUF_INFO { + pub pBuf: *mut ::std::os::raw::c_void, + pub nLen: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BUF_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_BUF_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BUF_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuf) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BUF_INFO), + "::", + stringify!(pBuf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nLen) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BUF_INFO), + "::", + stringify!(nLen) + ) + ); +} +pub type NET_DVR_BUF_INFO = tagNET_DVR_BUF_INFO; +pub type LPNET_DVR_BUF_INFO = *mut tagNET_DVR_BUF_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IN_PARAM { + pub struCondBuf: NET_DVR_BUF_INFO, + pub struInParamBuf: NET_DVR_BUF_INFO, + pub dwRecvTimeout: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IN_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_IN_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IN_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCondBuf) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IN_PARAM), + "::", + stringify!(struCondBuf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInParamBuf) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IN_PARAM), + "::", + stringify!(struInParamBuf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecvTimeout) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IN_PARAM), + "::", + stringify!(dwRecvTimeout) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IN_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_IN_PARAM = tagNET_DVR_IN_PARAM; +pub type LPNET_DVR_IN_PARAM = tagNET_DVR_IN_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OUT_PARAM { + pub struOutBuf: NET_DVR_BUF_INFO, + pub lpStatusList: *mut ::std::os::raw::c_void, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OUT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_OUT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OUT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOutBuf) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUT_PARAM), + "::", + stringify!(struOutBuf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpStatusList) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUT_PARAM), + "::", + stringify!(lpStatusList) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUT_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_OUT_PARAM = tagNET_DVR_OUT_PARAM; +pub type LPNET_DVR_OUT_PARAM = tagNET_DVR_OUT_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUDIO_CHAN_INFO { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRes: [BYTE; 48usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUDIO_CHAN_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUDIO_CHAN_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AUDIO_CHAN_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_CHAN_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_CHAN_INFO), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_CHAN_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AUDIO_CHAN_INFO = tagNET_DVR_AUDIO_CHAN_INFO; +pub type LPNET_DVR_AUDIO_CHAN_INFO = *mut tagNET_DVR_AUDIO_CHAN_INFO; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_AUDIO_CHAN_CFG { + pub dwSize: DWORD, + pub sChanName: [BYTE; 32usize], + pub byEnable: BYTE, + pub byAudioSwitchType: BYTE, + pub byRes: [BYTE; 2usize], + pub struAudioSrcInfo: NET_DVR_PU_STREAM_CFG_V41, + pub dwWindowNo: DWORD, + pub byRes2: [BYTE; 28usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUDIO_CHAN_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 444usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUDIO_CHAN_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AUDIO_CHAN_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_CHAN_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sChanName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_CHAN_CFG), + "::", + stringify!(sChanName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_CHAN_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioSwitchType) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_CHAN_CFG), + "::", + stringify!(byAudioSwitchType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_CHAN_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAudioSrcInfo) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_CHAN_CFG), + "::", + stringify!(struAudioSrcInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWindowNo) as usize - ptr as usize }, + 412usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_CHAN_CFG), + "::", + stringify!(dwWindowNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 416usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_CHAN_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_AUDIO_CHAN_CFG = tagNET_DVR_AUDIO_CHAN_CFG; +pub type LPNET_DVR_AUDIO_CHAN_CFG = *mut tagNET_DVR_AUDIO_CHAN_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MAINBOARD_SERIAL_CFG { + pub dwSize: DWORD, + pub bySerialWorkMode: BYTE, + pub byFunType: BYTE, + pub byDataBit: BYTE, + pub byStopBit: BYTE, + pub dwBaudRate: DWORD, + pub byParity: BYTE, + pub byFlowcontrol: BYTE, + pub wProtocol: WORD, + pub byVariable: BYTE, + pub byGateWayEnable: BYTE, + pub byRes: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MAINBOARD_SERIAL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_DVR_MAINBOARD_SERIAL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MAINBOARD_SERIAL_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MAINBOARD_SERIAL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySerialWorkMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MAINBOARD_SERIAL_CFG), + "::", + stringify!(bySerialWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFunType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MAINBOARD_SERIAL_CFG), + "::", + stringify!(byFunType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataBit) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MAINBOARD_SERIAL_CFG), + "::", + stringify!(byDataBit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStopBit) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MAINBOARD_SERIAL_CFG), + "::", + stringify!(byStopBit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBaudRate) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MAINBOARD_SERIAL_CFG), + "::", + stringify!(dwBaudRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParity) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MAINBOARD_SERIAL_CFG), + "::", + stringify!(byParity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlowcontrol) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MAINBOARD_SERIAL_CFG), + "::", + stringify!(byFlowcontrol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wProtocol) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MAINBOARD_SERIAL_CFG), + "::", + stringify!(wProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVariable) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MAINBOARD_SERIAL_CFG), + "::", + stringify!(byVariable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGateWayEnable) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MAINBOARD_SERIAL_CFG), + "::", + stringify!(byGateWayEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MAINBOARD_SERIAL_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MAINBOARD_SERIAL_CFG = tagNET_DVR_MAINBOARD_SERIAL_CFG; +pub type LPNET_DVR_MAINBOARD_SERIAL_CFG = *mut tagNET_DVR_MAINBOARD_SERIAL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SUBBOARD_INFO { + pub dwSize: DWORD, + pub byBoardType: BYTE, + pub byInterfaceNum: BYTE, + pub byStatus: BYTE, + pub bySyncStatus: BYTE, + pub dwSlotNo: DWORD, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUBBOARD_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_SUBBOARD_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SUBBOARD_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBBOARD_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBoardType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBBOARD_INFO), + "::", + stringify!(byBoardType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInterfaceNum) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBBOARD_INFO), + "::", + stringify!(byInterfaceNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBBOARD_INFO), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySyncStatus) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBBOARD_INFO), + "::", + stringify!(bySyncStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSlotNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBBOARD_INFO), + "::", + stringify!(dwSlotNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBBOARD_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SUBBOARD_INFO = tagNET_DVR_SUBBOARD_INFO; +pub type LPNET_DVR_SUBBOARD_INFO = *mut tagNET_DVR_SUBBOARD_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEVICE_SUBBOARD_INFO { + pub dwSize: DWORD, + pub byBackBoardType: BYTE, + pub bySoltNum: BYTE, + pub byBoardNum: BYTE, + pub byRes1: [BYTE; 1usize], + pub struSubBoadInfo: [NET_DVR_SUBBOARD_INFO; 42usize], + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEVICE_SUBBOARD_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1888usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEVICE_SUBBOARD_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEVICE_SUBBOARD_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_SUBBOARD_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBackBoardType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_SUBBOARD_INFO), + "::", + stringify!(byBackBoardType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySoltNum) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_SUBBOARD_INFO), + "::", + stringify!(bySoltNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBoardNum) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_SUBBOARD_INFO), + "::", + stringify!(byBoardNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_SUBBOARD_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSubBoadInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_SUBBOARD_INFO), + "::", + stringify!(struSubBoadInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1856usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_SUBBOARD_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DEVICE_SUBBOARD_INFO = tagNET_DVR_DEVICE_SUBBOARD_INFO; +pub type LPNET_DVR_DEVICE_SUBBOARD_INFO = *mut tagNET_DVR_DEVICE_SUBBOARD_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEVICE_BOARD_EXCEPINFO { + pub dwSize: DWORD, + pub byExceptNum: BYTE, + pub byRes1: [BYTE; 3usize], + pub byMajor: [BYTE; 16usize], + pub wMinor: [WORD; 16usize], + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEVICE_BOARD_EXCEPINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEVICE_BOARD_EXCEPINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_DEVICE_BOARD_EXCEPINFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_BOARD_EXCEPINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExceptNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_BOARD_EXCEPINFO), + "::", + stringify!(byExceptNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_BOARD_EXCEPINFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMajor) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_BOARD_EXCEPINFO), + "::", + stringify!(byMajor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMinor) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_BOARD_EXCEPINFO), + "::", + stringify!(wMinor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_BOARD_EXCEPINFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DEVICE_BOARD_EXCEPINFO = tagNET_DVR_DEVICE_BOARD_EXCEPINFO; +pub type LPNET_DVR_DEVICE_BOARD_EXCEPINFO = *mut tagNET_DVR_DEVICE_BOARD_EXCEPINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LINEARSCAN { + pub dwSize: DWORD, + pub dwChan: DWORD, + pub byLinearScanType: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LINEARSCAN() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_LINEARSCAN)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LINEARSCAN)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINEARSCAN), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINEARSCAN), + "::", + stringify!(dwChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLinearScanType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINEARSCAN), + "::", + stringify!(byLinearScanType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINEARSCAN), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LINEARSCAN = tagNET_DVR_LINEARSCAN; +pub type LPNET_DVR_LINEARSCAN = *mut tagNET_DVR_LINEARSCAN; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_STREAM_ATTACHINFO_CFG { + pub dwSize: DWORD, + pub byStreamWithVca: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STREAM_ATTACHINFO_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_STREAM_ATTACHINFO_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_STREAM_ATTACHINFO_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_ATTACHINFO_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamWithVca) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_ATTACHINFO_CFG), + "::", + stringify!(byStreamWithVca) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_ATTACHINFO_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_STREAM_ATTACHINFO_CFG = tagNET_DVR_STREAM_ATTACHINFO_CFG; +pub type LPNET_DVR_STREAM_ATTACHINFO_CFG = *mut tagNET_DVR_STREAM_ATTACHINFO_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SUBSYSTEM_NETCFG { + pub dwSize: DWORD, + pub byDefaultRoute: BYTE, + pub byNetworkCardNum: BYTE, + pub byRes1: [BYTE; 2usize], + pub struEtherNet: [NET_DVR_ETHERNET_MULTI; 4usize], + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUBSYSTEM_NETCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 3096usize, + concat!("Size of: ", stringify!(tagNET_DVR_SUBSYSTEM_NETCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SUBSYSTEM_NETCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_NETCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDefaultRoute) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_NETCFG), + "::", + stringify!(byDefaultRoute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetworkCardNum) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_NETCFG), + "::", + stringify!(byNetworkCardNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_NETCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEtherNet) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_NETCFG), + "::", + stringify!(struEtherNet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 2968usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_NETCFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SUBSYSTEM_NETCFG = tagNET_DVR_SUBSYSTEM_NETCFG; +pub type LPNET_DVR_SUBSYSTEM_NETCFG = *mut tagNET_DVR_SUBSYSTEM_NETCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CLEARCTRL { + pub dwSize: DWORD, + pub dwChan: DWORD, + pub byAllPreset: BYTE, + pub byAllPatrols: BYTE, + pub byAllPatterms: BYTE, + pub byAllPrivacyMasks: BYTE, + pub byAllPTZLimited: BYTE, + pub byAllScheduledTasks: BYTE, + pub byAllParkAction: BYTE, + pub byRes: [BYTE; 125usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CLEARCTRL() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 140usize, + concat!("Size of: ", stringify!(tagNET_DVR_CLEARCTRL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CLEARCTRL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLEARCTRL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLEARCTRL), + "::", + stringify!(dwChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAllPreset) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLEARCTRL), + "::", + stringify!(byAllPreset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAllPatrols) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLEARCTRL), + "::", + stringify!(byAllPatrols) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAllPatterms) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLEARCTRL), + "::", + stringify!(byAllPatterms) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAllPrivacyMasks) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLEARCTRL), + "::", + stringify!(byAllPrivacyMasks) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAllPTZLimited) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLEARCTRL), + "::", + stringify!(byAllPTZLimited) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAllScheduledTasks) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLEARCTRL), + "::", + stringify!(byAllScheduledTasks) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAllParkAction) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLEARCTRL), + "::", + stringify!(byAllParkAction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLEARCTRL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CLEARCTRL = tagNET_DVR_CLEARCTRL; +pub type LPNET_DVR_CLEARCTRL = *mut tagNET_DVR_CLEARCTRL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZ_PRIORITIZECFG { + pub dwSize: DWORD, + pub byPTZPrioritize: BYTE, + pub byRes: [BYTE; 3usize], + pub dwDelay: DWORD, + pub byRes1: [BYTE; 124usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZ_PRIORITIZECFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZ_PRIORITIZECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZ_PRIORITIZECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_PRIORITIZECFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPTZPrioritize) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_PRIORITIZECFG), + "::", + stringify!(byPTZPrioritize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_PRIORITIZECFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDelay) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_PRIORITIZECFG), + "::", + stringify!(dwDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_PRIORITIZECFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_PTZ_PRIORITIZECFG = tagNET_DVR_PTZ_PRIORITIZECFG; +pub type LPNET_DVR_PTZ_PRIORITIZECFG = *mut tagNET_DVR_PTZ_PRIORITIZECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INITIALPOSITIONCTRL { + pub dwSize: DWORD, + pub dwChan: DWORD, + pub byWorkMode: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INITIALPOSITIONCTRL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_INITIALPOSITIONCTRL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INITIALPOSITIONCTRL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INITIALPOSITIONCTRL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INITIALPOSITIONCTRL), + "::", + stringify!(dwChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INITIALPOSITIONCTRL), + "::", + stringify!(byWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INITIALPOSITIONCTRL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INITIALPOSITIONCTRL = tagNET_DVR_INITIALPOSITIONCTRL; +pub type LPNET_DVR_INITIALPOSITIONCTRL = *mut tagNET_DVR_INITIALPOSITIONCTRL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PRIVACY_MASKS_COND { + pub dwSize: DWORD, + pub dwChan: DWORD, + pub byRegionalID: BYTE, + pub byDelPrivacyMaskCfg: BYTE, + pub byRes: [BYTE; 62usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PRIVACY_MASKS_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_PRIVACY_MASKS_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PRIVACY_MASKS_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVACY_MASKS_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVACY_MASKS_COND), + "::", + stringify!(dwChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRegionalID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVACY_MASKS_COND), + "::", + stringify!(byRegionalID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDelPrivacyMaskCfg) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVACY_MASKS_COND), + "::", + stringify!(byDelPrivacyMaskCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVACY_MASKS_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PRIVACY_MASKS_COND = tagNET_DVR_PRIVACY_MASKS_COND; +pub type LPNET_DVR_PRIVACY_MASKS_COND = *mut tagNET_DVR_PRIVACY_MASKS_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PRIVACY_MASKS_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byPrivacyMaskCfgEnable: BYTE, + pub byColorType: BYTE, + pub byActiveZoomRatio: BYTE, + pub sPrivacyMaskName: [::std::os::raw::c_char; 32usize], + pub struRegion: NET_VCA_POLYGON, + pub byCurrentRegionEnable: BYTE, + pub byCurZoomRatio: BYTE, + pub byRes: [BYTE; 2usize], + pub fActiveZoomRatio: f32, + pub byRes1: [BYTE; 120usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PRIVACY_MASKS_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 252usize, + concat!("Size of: ", stringify!(tagNET_DVR_PRIVACY_MASKS_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PRIVACY_MASKS_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVACY_MASKS_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVACY_MASKS_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPrivacyMaskCfgEnable) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVACY_MASKS_CFG), + "::", + stringify!(byPrivacyMaskCfgEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byColorType) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVACY_MASKS_CFG), + "::", + stringify!(byColorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byActiveZoomRatio) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVACY_MASKS_CFG), + "::", + stringify!(byActiveZoomRatio) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPrivacyMaskName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVACY_MASKS_CFG), + "::", + stringify!(sPrivacyMaskName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVACY_MASKS_CFG), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCurrentRegionEnable) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVACY_MASKS_CFG), + "::", + stringify!(byCurrentRegionEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCurZoomRatio) as usize - ptr as usize }, + 125usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVACY_MASKS_CFG), + "::", + stringify!(byCurZoomRatio) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 126usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVACY_MASKS_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fActiveZoomRatio) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVACY_MASKS_CFG), + "::", + stringify!(fActiveZoomRatio) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVACY_MASKS_CFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_PRIVACY_MASKS_CFG = tagNET_DVR_PRIVACY_MASKS_CFG; +pub type LPNET_DVR_PRIVACY_MASKS_CFG = *mut tagNET_DVR_PRIVACY_MASKS_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PRIVACY_MASKS_ENABLECFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PRIVACY_MASKS_ENABLECFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_PRIVACY_MASKS_ENABLECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PRIVACY_MASKS_ENABLECFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVACY_MASKS_ENABLECFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVACY_MASKS_ENABLECFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVACY_MASKS_ENABLECFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PRIVACY_MASKS_ENABLECFG = tagNET_DVR_PRIVACY_MASKS_ENABLECFG; +pub type LPNET_DVR_PRIVACY_MASKS_ENABLECFG = *mut tagNET_DVR_PRIVACY_MASKS_ENABLECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SMARTTRACKCFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes: [BYTE; 3usize], + pub dwDuration: DWORD, + pub byRes1: [BYTE; 124usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SMARTTRACKCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_SMARTTRACKCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SMARTTRACKCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTTRACKCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTTRACKCFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTTRACKCFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDuration) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTTRACKCFG), + "::", + stringify!(dwDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTTRACKCFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_SMARTTRACKCFG = tagNET_DVR_SMARTTRACKCFG; +pub type LPNET_DVR_SMARTTRACKCFG = *mut tagNET_DVR_SMARTTRACKCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ZOOMRATIOCTRL { + pub dwSize: DWORD, + pub dwChan: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ZOOMRATIOCTRL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_ZOOMRATIOCTRL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ZOOMRATIOCTRL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ZOOMRATIOCTRL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ZOOMRATIOCTRL), + "::", + stringify!(dwChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ZOOMRATIOCTRL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ZOOMRATIOCTRL = tagNET_DVR_ZOOMRATIOCTRL; +pub type LPNET_DVR_ZOOMRATIOCTRL = *mut tagNET_DVR_ZOOMRATIOCTRL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DIAL_SWITCH_CFG { + pub dwSize: DWORD, + pub dwSwitchState: DWORD, + pub byRes: [BYTE; 28usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DIAL_SWITCH_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_DIAL_SWITCH_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DIAL_SWITCH_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAL_SWITCH_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSwitchState) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAL_SWITCH_CFG), + "::", + stringify!(dwSwitchState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIAL_SWITCH_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DIAL_SWITCH_CFG = tagNET_DVR_DIAL_SWITCH_CFG; +pub type LPNET_DVR_DIAL_SWITCH_CFG = *mut tagNET_DVR_DIAL_SWITCH_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ALARM_RECORDFILE_LOSS { + pub struInspectStart: NET_DVR_TIME_EX, + pub struInspectEnd: NET_DVR_TIME_EX, + pub struIP: NET_DVR_IPADDR, + pub dwChanNo: DWORD, + pub dwIDIndex: DWORD, + pub sName: [BYTE; 32usize], + pub struLossStartTime: NET_DVR_TIME_EX, + pub struLossEndTime: NET_DVR_TIME_EX, + pub dwLostNum: DWORD, + pub byRes: [BYTE; 240usize], +} +#[test] +fn bindgen_test_layout_tagNET_ALARM_RECORDFILE_LOSS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 460usize, + concat!("Size of: ", stringify!(tagNET_ALARM_RECORDFILE_LOSS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ALARM_RECORDFILE_LOSS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInspectStart) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_RECORDFILE_LOSS), + "::", + stringify!(struInspectStart) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInspectEnd) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_RECORDFILE_LOSS), + "::", + stringify!(struInspectEnd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_RECORDFILE_LOSS), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChanNo) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_RECORDFILE_LOSS), + "::", + stringify!(dwChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIDIndex) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_RECORDFILE_LOSS), + "::", + stringify!(dwIDIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sName) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_RECORDFILE_LOSS), + "::", + stringify!(sName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLossStartTime) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_RECORDFILE_LOSS), + "::", + stringify!(struLossStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLossEndTime) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_RECORDFILE_LOSS), + "::", + stringify!(struLossEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLostNum) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_RECORDFILE_LOSS), + "::", + stringify!(dwLostNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_RECORDFILE_LOSS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ALARM_RECORDFILE_LOSS = tagNET_ALARM_RECORDFILE_LOSS; +pub type LPNET_ALARM_RECORDFILE_LOSS = *mut tagNET_ALARM_RECORDFILE_LOSS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ALARM_STREAM_EXCEPTION { + pub struIP: NET_DVR_IPADDR, + pub dwChanNo: DWORD, + pub dwIDIndex: DWORD, + pub sName: [BYTE; 32usize], + pub byExceptionCase: BYTE, + pub byRes: [BYTE; 307usize], +} +#[test] +fn bindgen_test_layout_tagNET_ALARM_STREAM_EXCEPTION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 492usize, + concat!("Size of: ", stringify!(tagNET_ALARM_STREAM_EXCEPTION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ALARM_STREAM_EXCEPTION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_STREAM_EXCEPTION), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChanNo) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_STREAM_EXCEPTION), + "::", + stringify!(dwChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIDIndex) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_STREAM_EXCEPTION), + "::", + stringify!(dwIDIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sName) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_STREAM_EXCEPTION), + "::", + stringify!(sName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExceptionCase) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_STREAM_EXCEPTION), + "::", + stringify!(byExceptionCase) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 185usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_STREAM_EXCEPTION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ALARM_STREAM_EXCEPTION = tagNET_ALARM_STREAM_EXCEPTION; +pub type LPNET_ALARM_STREAM_EXCEPTION = *mut tagNET_ALARM_STREAM_EXCEPTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ALARM_RESOURCE_USAGE { + pub byLevel: BYTE, + pub byRes: [BYTE; 491usize], +} +#[test] +fn bindgen_test_layout_tagNET_ALARM_RESOURCE_USAGE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 492usize, + concat!("Size of: ", stringify!(tagNET_ALARM_RESOURCE_USAGE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_ALARM_RESOURCE_USAGE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLevel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_RESOURCE_USAGE), + "::", + stringify!(byLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_RESOURCE_USAGE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ALARM_RESOURCE_USAGE = tagNET_ALARM_RESOURCE_USAGE; +pub type LPNET_ALARM_RESOURCE_USAGE = *mut tagNET_ALARM_RESOURCE_USAGE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ALARM_RECORD_EXCEPTION { + pub byReason: BYTE, + pub byRes1: [BYTE; 3usize], + pub sVolumeName: [BYTE; 32usize], + pub dwVolumeID: DWORD, + pub byRes: [BYTE; 452usize], +} +#[test] +fn bindgen_test_layout_tagNET_ALARM_RECORD_EXCEPTION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 492usize, + concat!("Size of: ", stringify!(tagNET_ALARM_RECORD_EXCEPTION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ALARM_RECORD_EXCEPTION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReason) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_RECORD_EXCEPTION), + "::", + stringify!(byReason) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_RECORD_EXCEPTION), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sVolumeName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_RECORD_EXCEPTION), + "::", + stringify!(sVolumeName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVolumeID) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_RECORD_EXCEPTION), + "::", + stringify!(dwVolumeID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_RECORD_EXCEPTION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_ALARM_RECORD_EXCEPTION = tagNET_ALARM_RECORD_EXCEPTION; +pub type LPNET_ALARM_RECORD_EXCEPTION = *mut tagNET_ALARM_RECORD_EXCEPTION; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_ALARM_CVR_SUBINFO_UNION { + pub byLen: [BYTE; 492usize], + pub struRecordLost: NET_ALARM_RECORDFILE_LOSS, + pub struStreamException: NET_ALARM_STREAM_EXCEPTION, + pub struResourceUsage: NET_ALARM_RESOURCE_USAGE, + pub struRecordException: NET_ALARM_RECORD_EXCEPTION, +} +#[test] +fn bindgen_test_layout_tagNET_ALARM_CVR_SUBINFO_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 492usize, + concat!("Size of: ", stringify!(tagNET_ALARM_CVR_SUBINFO_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ALARM_CVR_SUBINFO_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_CVR_SUBINFO_UNION), + "::", + stringify!(byLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRecordLost) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_CVR_SUBINFO_UNION), + "::", + stringify!(struRecordLost) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamException) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_CVR_SUBINFO_UNION), + "::", + stringify!(struStreamException) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struResourceUsage) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_CVR_SUBINFO_UNION), + "::", + stringify!(struResourceUsage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRecordException) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_CVR_SUBINFO_UNION), + "::", + stringify!(struRecordException) + ) + ); +} +pub type NET_ALARM_CVR_SUBINFO_UNION = tagNET_ALARM_CVR_SUBINFO_UNION; +pub type LPNET_ALARM_CVR_SUBINFO_UNION = *mut tagNET_ALARM_CVR_SUBINFO_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_ALARMINFO_DEV_V40 { + pub dwAlarmType: DWORD, + pub struTime: NET_DVR_TIME, + pub uSubAlarmInfo: NET_ALARM_CVR_SUBINFO_UNION, + pub byRes: [BYTE; 256usize], + pub dwNumber: DWORD, + pub pNO: *mut WORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMINFO_DEV_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 792usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMINFO_DEV_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMINFO_DEV_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_DEV_V40), + "::", + stringify!(dwAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_DEV_V40), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uSubAlarmInfo) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_DEV_V40), + "::", + stringify!(uSubAlarmInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 520usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_DEV_V40), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNumber) as usize - ptr as usize }, + 776usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_DEV_V40), + "::", + stringify!(dwNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pNO) as usize - ptr as usize }, + 784usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMINFO_DEV_V40), + "::", + stringify!(pNO) + ) + ); +} +pub type NET_DVR_ALARMINFO_DEV_V40 = tagNET_DVR_ALARMINFO_DEV_V40; +pub type LPNET_DVR_ALARMINFO_DEV_V40 = *mut tagNET_DVR_ALARMINFO_DEV_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CONTROL_START_CFG { + pub byUseDefine: BYTE, + pub byRes1: BYTE, + pub wCourseIndex: WORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CONTROL_START_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_CONTROL_START_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CONTROL_START_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseDefine) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_START_CFG), + "::", + stringify!(byUseDefine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_START_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCourseIndex) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_START_CFG), + "::", + stringify!(wCourseIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_START_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CONTROL_START_CFG = tagNET_DVR_CONTROL_START_CFG; +pub type LPNET_DVR_CONTROL_START_CFG = *mut tagNET_DVR_CONTROL_START_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CONTROL_DELAY_CFG { + pub byUseDefine: BYTE, + pub byRes1: BYTE, + pub wDelayTime: WORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CONTROL_DELAY_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_CONTROL_DELAY_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CONTROL_DELAY_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseDefine) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_DELAY_CFG), + "::", + stringify!(byUseDefine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_DELAY_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDelayTime) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_DELAY_CFG), + "::", + stringify!(wDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_DELAY_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CONTROL_DELAY_CFG = tagNET_DVR_CONTROL_DELAY_CFG; +pub type LPNET_DVR_CONTROL_DELAY_CFG = *mut tagNET_DVR_CONTROL_DELAY_CFG; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_CONTROL_INFO_UNION { + pub byLen: [BYTE; 132usize], + pub struStartCfg: NET_DVR_CONTROL_START_CFG, + pub struDelayCfg: NET_DVR_CONTROL_DELAY_CFG, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CONTROL_INFO_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_CONTROL_INFO_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CONTROL_INFO_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_INFO_UNION), + "::", + stringify!(byLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartCfg) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_INFO_UNION), + "::", + stringify!(struStartCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDelayCfg) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_INFO_UNION), + "::", + stringify!(struDelayCfg) + ) + ); +} +pub type NET_DVR_CONTROL_INFO_UNION = tagNET_DVR_CONTROL_INFO_UNION; +pub type LPNET_DVR_CONTROL_INFO_UNION = *mut tagNET_DVR_CONTROL_INFO_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_RECORDING_CONTROL_CFG_ { + pub dwSize: DWORD, + pub wCmdType: WORD, + pub byRes1: [BYTE; 2usize], + pub struControlInfo: NET_DVR_CONTROL_INFO_UNION, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECORDING_CONTROL_CFG_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 396usize, + concat!("Size of: ", stringify!(tagNET_DVR_RECORDING_CONTROL_CFG_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_RECORDING_CONTROL_CFG_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_CONTROL_CFG_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCmdType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_CONTROL_CFG_), + "::", + stringify!(wCmdType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_CONTROL_CFG_), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struControlInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_CONTROL_CFG_), + "::", + stringify!(struControlInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_CONTROL_CFG_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RECORDING_CONTROL_CFG = tagNET_DVR_RECORDING_CONTROL_CFG_; +pub type LPNET_DVR_RECORDING_CONTROL_CFG = *mut tagNET_DVR_RECORDING_CONTROL_CFG_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECORDING_HOST_CFG { + pub dwSize: DWORD, + pub dwOneKeyDelayTime: DWORD, + pub byDirectedMode: BYTE, + pub byClassroomType: BYTE, + pub byCourseDataStorageEnabled: BYTE, + pub byElectronicEnlargeMode: BYTE, + pub byRes: [BYTE; 124usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECORDING_HOST_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_RECORDING_HOST_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RECORDING_HOST_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_HOST_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOneKeyDelayTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_HOST_CFG), + "::", + stringify!(dwOneKeyDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDirectedMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_HOST_CFG), + "::", + stringify!(byDirectedMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byClassroomType) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_HOST_CFG), + "::", + stringify!(byClassroomType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCourseDataStorageEnabled) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_HOST_CFG), + "::", + stringify!(byCourseDataStorageEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byElectronicEnlargeMode) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_HOST_CFG), + "::", + stringify!(byElectronicEnlargeMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_HOST_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RECORDING_HOST_CFG = tagNET_DVR_RECORDING_HOST_CFG; +pub type LPNET_DVR_RECORDING_HOST_CFG = *mut tagNET_DVR_RECORDING_HOST_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_STATISTIC_DATA_COND { + pub dwSize: DWORD, + pub dwTypeTarget: DWORD, + pub struStartTime: NET_DVR_TIME, + pub struStopTime: NET_DVR_TIME, + pub byRes: [BYTE; 280usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STATISTIC_DATA_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 336usize, + concat!("Size of: ", stringify!(tagNET_DVR_STATISTIC_DATA_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_STATISTIC_DATA_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STATISTIC_DATA_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTypeTarget) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STATISTIC_DATA_COND), + "::", + stringify!(dwTypeTarget) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STATISTIC_DATA_COND), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STATISTIC_DATA_COND), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STATISTIC_DATA_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_STATISTIC_DATA_COND = tagNET_DVR_STATISTIC_DATA_COND; +pub type LPNET_DVR_STATISTIC_DATA_COND = *mut tagNET_DVR_STATISTIC_DATA_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_STATISTIC_DATA_CFG { + pub dwSize: DWORD, + pub dwTypeTarget: DWORD, + pub struStartTime: NET_DVR_TIME, + pub struStopTime: NET_DVR_TIME, + pub byRes: [BYTE; 300usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STATISTIC_DATA_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 356usize, + concat!("Size of: ", stringify!(tagNET_DVR_STATISTIC_DATA_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_STATISTIC_DATA_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STATISTIC_DATA_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTypeTarget) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STATISTIC_DATA_CFG), + "::", + stringify!(dwTypeTarget) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STATISTIC_DATA_CFG), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STATISTIC_DATA_CFG), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STATISTIC_DATA_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_STATISTIC_DATA_CFG = tagNET_DVR_STATISTIC_DATA_CFG; +pub type LPNET_DVR_STATISTIC_DATA_CFG = *mut tagNET_DVR_STATISTIC_DATA_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUTO_TRACK_CFG { + pub dwSize: DWORD, + pub struSDIInfo: [NET_DVR_DIRECT_CONNECT_CHAN_INFO; 64usize], + pub byCameraType: [BYTE; 64usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUTO_TRACK_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 19076usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUTO_TRACK_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AUTO_TRACK_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTO_TRACK_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSDIInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTO_TRACK_CFG), + "::", + stringify!(struSDIInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCameraType) as usize - ptr as usize }, + 18948usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTO_TRACK_CFG), + "::", + stringify!(byCameraType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 19012usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTO_TRACK_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AUTO_TRACK_CFG = tagNET_DVR_AUTO_TRACK_CFG; +pub type LPNET_DVR_AUTO_TRACK_CFG = *mut tagNET_DVR_AUTO_TRACK_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PUBLISH_FTP_CFG { + pub byProtocolType: BYTE, + pub byRes1: BYTE, + pub wFTPPort: WORD, + pub byAddress: [BYTE; 64usize], + pub szUserName: [BYTE; 32usize], + pub szPassWord: [BYTE; 16usize], + pub szCustomDir: [BYTE; 128usize], + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PUBLISH_FTP_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_PUBLISH_FTP_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PUBLISH_FTP_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProtocolType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_FTP_CFG), + "::", + stringify!(byProtocolType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_FTP_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFTPPort) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_FTP_CFG), + "::", + stringify!(wFTPPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddress) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_FTP_CFG), + "::", + stringify!(byAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szUserName) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_FTP_CFG), + "::", + stringify!(szUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szPassWord) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_FTP_CFG), + "::", + stringify!(szPassWord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szCustomDir) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_FTP_CFG), + "::", + stringify!(szCustomDir) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 244usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_FTP_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PUBLISH_FTP_CFG = tagNET_DVR_PUBLISH_FTP_CFG; +pub type LPNET_DVR_PUBLISH_FTP_CFG = *mut tagNET_DVR_PUBLISH_FTP_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PUBLISH_HTTP_CFG { + pub strUrl: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PUBLISH_HTTP_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_PUBLISH_HTTP_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PUBLISH_HTTP_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strUrl) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_HTTP_CFG), + "::", + stringify!(strUrl) + ) + ); +} +pub type NET_DVR_PUBLISH_HTTP_CFG = tagNET_DVR_PUBLISH_HTTP_CFG; +pub type LPNET_DVR_PUBLISH_HTTP_CFG = *mut tagNET_DVR_PUBLISH_HTTP_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PUBLISH_FTP_CFG_DIR { + pub byProtocolType: BYTE, + pub byRes1: BYTE, + pub wFTPPort: WORD, + pub byAddress: [BYTE; 64usize], + pub szUserName: [BYTE; 32usize], + pub szPassWord: [BYTE; 16usize], + pub byDirLevel: BYTE, + pub byTopDirMode: BYTE, + pub bySubDirMode: BYTE, + pub byRes2: BYTE, + pub byTopCustomDir: [BYTE; 32usize], + pub bySubCustomDir: [BYTE; 32usize], + pub byRes: [BYTE; 72usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PUBLISH_FTP_CFG_DIR() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_PUBLISH_FTP_CFG_DIR)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PUBLISH_FTP_CFG_DIR)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProtocolType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_FTP_CFG_DIR), + "::", + stringify!(byProtocolType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_FTP_CFG_DIR), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFTPPort) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_FTP_CFG_DIR), + "::", + stringify!(wFTPPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddress) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_FTP_CFG_DIR), + "::", + stringify!(byAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szUserName) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_FTP_CFG_DIR), + "::", + stringify!(szUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szPassWord) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_FTP_CFG_DIR), + "::", + stringify!(szPassWord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDirLevel) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_FTP_CFG_DIR), + "::", + stringify!(byDirLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTopDirMode) as usize - ptr as usize }, + 117usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_FTP_CFG_DIR), + "::", + stringify!(byTopDirMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubDirMode) as usize - ptr as usize }, + 118usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_FTP_CFG_DIR), + "::", + stringify!(bySubDirMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 119usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_FTP_CFG_DIR), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTopCustomDir) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_FTP_CFG_DIR), + "::", + stringify!(byTopCustomDir) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubCustomDir) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_FTP_CFG_DIR), + "::", + stringify!(bySubCustomDir) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_FTP_CFG_DIR), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PUBLISH_FTP_CFG_DIR = tagNET_DVR_PUBLISH_FTP_CFG_DIR; +pub type LPNET_DVR_PUBLISH_FTP_CFG_DIR = *mut tagNET_DVR_PUBLISH_FTP_CFG_DIR; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_PUBLISH_ADD_UNION { + pub byLen: [BYTE; 256usize], + pub struHttpCfg: NET_DVR_PUBLISH_HTTP_CFG, + pub struFtpCfg: NET_DVR_PUBLISH_FTP_CFG, + pub struDirFtpCfg: NET_DVR_PUBLISH_FTP_CFG_DIR, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PUBLISH_ADD_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_PUBLISH_ADD_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PUBLISH_ADD_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_ADD_UNION), + "::", + stringify!(byLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHttpCfg) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_ADD_UNION), + "::", + stringify!(struHttpCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFtpCfg) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_ADD_UNION), + "::", + stringify!(struFtpCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDirFtpCfg) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_ADD_UNION), + "::", + stringify!(struDirFtpCfg) + ) + ); +} +pub type NET_DVR_PUBLISH_ADD_UNION = tagNET_DVR_PUBLISH_ADD_UNION; +pub type LPNET_DVR_PUBLISH_ADD_UNION = *mut tagNET_DVR_PUBLISH_ADD_UNION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CHAN_RECORD_PUBLISH_INFO { + pub byPublish: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwStreamType: DWORD, + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CHAN_RECORD_PUBLISH_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_CHAN_RECORD_PUBLISH_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_CHAN_RECORD_PUBLISH_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPublish) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_RECORD_PUBLISH_INFO), + "::", + stringify!(byPublish) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_RECORD_PUBLISH_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStreamType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_RECORD_PUBLISH_INFO), + "::", + stringify!(dwStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_RECORD_PUBLISH_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RECORD_PUBLISH_INFO = tagNET_DVR_CHAN_RECORD_PUBLISH_INFO; +pub type LPNET_DVR_RECORD_PUBLISH_INFO = *mut tagNET_DVR_CHAN_RECORD_PUBLISH_INFO; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_PUBLISH_CFG { + pub dwSize: DWORD, + pub byPublishType: BYTE, + pub byRes1: [BYTE; 3usize], + pub struPublishAddr: NET_DVR_PUBLISH_ADD_UNION, + pub struChanPublish: [NET_DVR_RECORD_PUBLISH_INFO; 64usize], + pub struDirectChanPublish: NET_DVR_RECORD_PUBLISH_INFO, + pub byUploadTime: BYTE, + pub byTimerMode: BYTE, + pub byUploadStartHour: BYTE, + pub byUoploadStartMin: BYTE, + pub byRes: [BYTE; 1020usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PUBLISH_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2588usize, + concat!("Size of: ", stringify!(tagNET_DVR_PUBLISH_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PUBLISH_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPublishType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_CFG), + "::", + stringify!(byPublishType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPublishAddr) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_CFG), + "::", + stringify!(struPublishAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struChanPublish) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_CFG), + "::", + stringify!(struChanPublish) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDirectChanPublish) as usize - ptr as usize }, + 1544usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_CFG), + "::", + stringify!(struDirectChanPublish) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUploadTime) as usize - ptr as usize }, + 1564usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_CFG), + "::", + stringify!(byUploadTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimerMode) as usize - ptr as usize }, + 1565usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_CFG), + "::", + stringify!(byTimerMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUploadStartHour) as usize - ptr as usize }, + 1566usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_CFG), + "::", + stringify!(byUploadStartHour) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUoploadStartMin) as usize - ptr as usize }, + 1567usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_CFG), + "::", + stringify!(byUoploadStartMin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1568usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PUBLISH_CFG = tagNET_DVR_PUBLISH_CFG; +pub type LPNET_DVR_PUBLISH_CFG = *mut tagNET_DVR_PUBLISH_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ONEKEY_PUBLISH_CFG { + pub dwSize: DWORD, + pub byUseDefine: BYTE, + pub byRes1: [BYTE; 3usize], + pub struChanPublish: [NET_DVR_RECORD_PUBLISH_INFO; 64usize], + pub struDirectChanPublish: NET_DVR_RECORD_PUBLISH_INFO, + pub struStartTime: NET_DVR_TIME_EX, + pub struEndTime: NET_DVR_TIME_EX, + pub bySchedulePublish: BYTE, + pub sFileName: [BYTE; 32usize], + pub byRes: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ONEKEY_PUBLISH_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1388usize, + concat!("Size of: ", stringify!(tagNET_DVR_ONEKEY_PUBLISH_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ONEKEY_PUBLISH_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONEKEY_PUBLISH_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseDefine) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONEKEY_PUBLISH_CFG), + "::", + stringify!(byUseDefine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONEKEY_PUBLISH_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struChanPublish) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONEKEY_PUBLISH_CFG), + "::", + stringify!(struChanPublish) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDirectChanPublish) as usize - ptr as usize }, + 1288usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONEKEY_PUBLISH_CFG), + "::", + stringify!(struDirectChanPublish) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 1308usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONEKEY_PUBLISH_CFG), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 1316usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONEKEY_PUBLISH_CFG), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySchedulePublish) as usize - ptr as usize }, + 1324usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONEKEY_PUBLISH_CFG), + "::", + stringify!(bySchedulePublish) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 1325usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONEKEY_PUBLISH_CFG), + "::", + stringify!(sFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1357usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONEKEY_PUBLISH_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ONEKEY_PUBLISH_CFG = tagNET_DVR_ONEKEY_PUBLISH_CFG; +pub type LPNET_DVR_ONEKEY_PUBLISH_CFG = *mut tagNET_DVR_ONEKEY_PUBLISH_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_COURSE_RECORDING_INFO { + pub dwSize: DWORD, + pub sCourseName: [::std::os::raw::c_char; 32usize], + pub sInstructorName: [::std::os::raw::c_char; 16usize], + pub sCourseDescription: [::std::os::raw::c_char; 256usize], + pub byIndex: BYTE, + pub byRes: [BYTE; 15usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_COURSE_RECORDING_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 324usize, + concat!("Size of: ", stringify!(tagNET_DVR_COURSE_RECORDING_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_COURSE_RECORDING_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COURSE_RECORDING_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCourseName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COURSE_RECORDING_INFO), + "::", + stringify!(sCourseName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sInstructorName) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COURSE_RECORDING_INFO), + "::", + stringify!(sInstructorName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCourseDescription) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COURSE_RECORDING_INFO), + "::", + stringify!(sCourseDescription) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIndex) as usize - ptr as usize }, + 308usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COURSE_RECORDING_INFO), + "::", + stringify!(byIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 309usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COURSE_RECORDING_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_COURSE_RECORDING_INFO = tagNET_DVR_COURSE_RECORDING_INFO; +pub type LPNET_DVR_COURSE_RECORDING_INFO = *mut tagNET_DVR_COURSE_RECORDING_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EACH_LESSON_INFO_ { + pub struSchedTime: NET_DVR_SCHEDTIME, + pub wCourseIndex: WORD, + pub wSessionIndex: WORD, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EACH_LESSON_INFO_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_EACH_LESSON_INFO_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EACH_LESSON_INFO_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSchedTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EACH_LESSON_INFO_), + "::", + stringify!(struSchedTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCourseIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EACH_LESSON_INFO_), + "::", + stringify!(wCourseIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSessionIndex) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EACH_LESSON_INFO_), + "::", + stringify!(wSessionIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EACH_LESSON_INFO_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EACH_LESSON_INFO = tagNET_DVR_EACH_LESSON_INFO_; +pub type LPNET_DVR_EACH_LESSON_INFO = *mut tagNET_DVR_EACH_LESSON_INFO_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CURRICULUM_CFG { + pub dwSize: DWORD, + pub struLessonInfo: [NET_DVR_EACH_LESSON_INFO; 16usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CURRICULUM_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 452usize, + concat!("Size of: ", stringify!(tagNET_DVR_CURRICULUM_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CURRICULUM_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CURRICULUM_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLessonInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CURRICULUM_CFG), + "::", + stringify!(struLessonInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CURRICULUM_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CURRICULUM_CFG = tagNET_DVR_CURRICULUM_CFG; +pub type LPNET_DVR_CURRICULUM_CFG = *mut tagNET_DVR_CURRICULUM_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DATE_ { + pub wYear: WORD, + pub byMonth: BYTE, + pub byDay: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DATE_() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(tagNET_DVR_DATE_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DATE_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wYear) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DATE_), + "::", + stringify!(wYear) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonth) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DATE_), + "::", + stringify!(byMonth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDay) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DATE_), + "::", + stringify!(byDay) + ) + ); +} +pub type NET_DVR_DATE = tagNET_DVR_DATE_; +pub type LPNET_DVR_DATE = *mut tagNET_DVR_DATE_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_PPT_DETECT_CFG_ { + pub dwSize: DWORD, + pub byEnablePPTDetect: BYTE, + pub byPptDetLevel: BYTE, + pub byEnablePartScreen: BYTE, + pub byRes1: BYTE, + pub wX: WORD, + pub wY: WORD, + pub wWidth: WORD, + pub wHeight: WORD, + pub dwChangePixelNum: DWORD, + pub byRes: [BYTE; 28usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_PPT_DETECT_CFG_() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_PPT_DETECT_CFG_> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_PPT_DETECT_CFG_>(), + 48usize, + concat!("Size of: ", stringify!(_NET_DVR_PPT_DETECT_CFG_)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_PPT_DETECT_CFG_>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_PPT_DETECT_CFG_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PPT_DETECT_CFG_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnablePPTDetect) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PPT_DETECT_CFG_), + "::", + stringify!(byEnablePPTDetect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPptDetLevel) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PPT_DETECT_CFG_), + "::", + stringify!(byPptDetLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnablePartScreen) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PPT_DETECT_CFG_), + "::", + stringify!(byEnablePartScreen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PPT_DETECT_CFG_), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wX) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PPT_DETECT_CFG_), + "::", + stringify!(wX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wY) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PPT_DETECT_CFG_), + "::", + stringify!(wY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wWidth) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PPT_DETECT_CFG_), + "::", + stringify!(wWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHeight) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PPT_DETECT_CFG_), + "::", + stringify!(wHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChangePixelNum) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PPT_DETECT_CFG_), + "::", + stringify!(dwChangePixelNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PPT_DETECT_CFG_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PPT_DETECT_CFG = _NET_DVR_PPT_DETECT_CFG_; +pub type LPNET_DVR_PPT_DETECT_CFG = *mut _NET_DVR_PPT_DETECT_CFG_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_SCREEN_SWITCH_ { + pub dwSize: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_SCREEN_SWITCH_() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_SCREEN_SWITCH_> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_SCREEN_SWITCH_>(), + 68usize, + concat!("Size of: ", stringify!(_NET_DVR_SCREEN_SWITCH_)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_SCREEN_SWITCH_>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_SCREEN_SWITCH_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_SCREEN_SWITCH_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_SCREEN_SWITCH_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCREEN_SWITCH = _NET_DVR_SCREEN_SWITCH_; +pub type LPNET_DVR_SCREEN_SWITCH = *mut _NET_DVR_SCREEN_SWITCH_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_PPT_CHANNEL_CFG_ { + pub dwSize: DWORD, + pub byChan: [BYTE; 128usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_PPT_CHANNEL_CFG_() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_PPT_CHANNEL_CFG_> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_PPT_CHANNEL_CFG_>(), + 164usize, + concat!("Size of: ", stringify!(_NET_DVR_PPT_CHANNEL_CFG_)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_PPT_CHANNEL_CFG_>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_PPT_CHANNEL_CFG_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PPT_CHANNEL_CFG_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PPT_CHANNEL_CFG_), + "::", + stringify!(byChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PPT_CHANNEL_CFG_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PPT_CHANNEL_CFG = _NET_DVR_PPT_CHANNEL_CFG_; +pub type LPNET_DVR_PPT_CHANNEL_CFG = *mut _NET_DVR_PPT_CHANNEL_CFG_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BACKUP_RECORD_INFO { + pub byEnable: BYTE, + pub byRes: [BYTE; 11usize], + pub dwStreamType: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BACKUP_RECORD_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_BACKUP_RECORD_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BACKUP_RECORD_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_RECORD_INFO), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_RECORD_INFO), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStreamType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_RECORD_INFO), + "::", + stringify!(dwStreamType) + ) + ); +} +pub type NET_DVR_BACKUP_RECORD_INFO = tagNET_DVR_BACKUP_RECORD_INFO; +pub type LPNET_DVR_BACKUP_RECORD_INFO = *mut tagNET_DVR_BACKUP_RECORD_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BACKUP_RECORD_PARAM { + pub dwSize: DWORD, + pub struChanBackUp: [NET_DVR_BACKUP_RECORD_INFO; 64usize], + pub struDirectedChanBackUp: NET_DVR_BACKUP_RECORD_INFO, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BACKUP_RECORD_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1300usize, + concat!("Size of: ", stringify!(tagNET_DVR_BACKUP_RECORD_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BACKUP_RECORD_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_RECORD_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struChanBackUp) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_RECORD_PARAM), + "::", + stringify!(struChanBackUp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDirectedChanBackUp) as usize - ptr as usize }, + 1028usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_RECORD_PARAM), + "::", + stringify!(struDirectedChanBackUp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1044usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKUP_RECORD_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BACKUP_RECORD_PARAM = tagNET_DVR_BACKUP_RECORD_PARAM; +pub type LPNET_DVR_BACKUP_RECORD_PARAM = *mut tagNET_DVR_BACKUP_RECORD_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INDOOR_UNIT_DEVICEID { + pub wFloorNumber: SHORT, + pub wRoomNumber: WORD, + pub wDevIndex: WORD, + pub byRes: [BYTE; 122usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INDOOR_UNIT_DEVICEID() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_DVR_INDOOR_UNIT_DEVICEID)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INDOOR_UNIT_DEVICEID)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFloorNumber) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INDOOR_UNIT_DEVICEID), + "::", + stringify!(wFloorNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRoomNumber) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INDOOR_UNIT_DEVICEID), + "::", + stringify!(wRoomNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INDOOR_UNIT_DEVICEID), + "::", + stringify!(wDevIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INDOOR_UNIT_DEVICEID), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INDOOR_UNIT_DEVICEID = tagNET_DVR_INDOOR_UNIT_DEVICEID; +pub type LPNET_DVR_INDOOR_UNIT_DEVICEID = *mut tagNET_DVR_INDOOR_UNIT_DEVICEID; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OUTDOOR_UNIT_DEVICEID { + pub wPeriod: WORD, + pub wBuildingNumber: WORD, + pub wUnitNumber: WORD, + pub wFloorNumber: SHORT, + pub wDevIndex: WORD, + pub byRes: [BYTE; 118usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OUTDOOR_UNIT_DEVICEID() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_DVR_OUTDOOR_UNIT_DEVICEID)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_OUTDOOR_UNIT_DEVICEID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPeriod) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTDOOR_UNIT_DEVICEID), + "::", + stringify!(wPeriod) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBuildingNumber) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTDOOR_UNIT_DEVICEID), + "::", + stringify!(wBuildingNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wUnitNumber) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTDOOR_UNIT_DEVICEID), + "::", + stringify!(wUnitNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFloorNumber) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTDOOR_UNIT_DEVICEID), + "::", + stringify!(wFloorNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevIndex) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTDOOR_UNIT_DEVICEID), + "::", + stringify!(wDevIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTDOOR_UNIT_DEVICEID), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_OUTDOOR_UNIT_DEVICEID = tagNET_DVR_OUTDOOR_UNIT_DEVICEID; +pub type LPNET_DVR_OUTDOOR_UNIT_DEVICEID = *mut tagNET_DVR_OUTDOOR_UNIT_DEVICEID; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OUTDOOR_FENCE_DEVICEID { + pub wPeriod: WORD, + pub wDevIndex: WORD, + pub byRes: [BYTE; 124usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OUTDOOR_FENCE_DEVICEID() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_DVR_OUTDOOR_FENCE_DEVICEID)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_OUTDOOR_FENCE_DEVICEID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPeriod) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTDOOR_FENCE_DEVICEID), + "::", + stringify!(wPeriod) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevIndex) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTDOOR_FENCE_DEVICEID), + "::", + stringify!(wDevIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTDOOR_FENCE_DEVICEID), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_OUTDOOR_FENCE_DEVICEID = tagNET_DVR_OUTDOOR_FENCE_DEVICEID; +pub type LPNET_DVR_OUTDOOR_FENCE_DEVICEID = *mut tagNET_DVR_OUTDOOR_FENCE_DEVICEID; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MANAGE_UNIT_DEVICEID { + pub wPeriod: WORD, + pub wDevIndex: WORD, + pub byRes: [BYTE; 124usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MANAGE_UNIT_DEVICEID() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_DVR_MANAGE_UNIT_DEVICEID)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MANAGE_UNIT_DEVICEID)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPeriod) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANAGE_UNIT_DEVICEID), + "::", + stringify!(wPeriod) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevIndex) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANAGE_UNIT_DEVICEID), + "::", + stringify!(wDevIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANAGE_UNIT_DEVICEID), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MANAGE_UNIT_DEVICEID = tagNET_DVR_MANAGE_UNIT_DEVICEID; +pub type LPNET_DVR_MANAGE_UNIT_DEVICEID = *mut tagNET_DVR_MANAGE_UNIT_DEVICEID; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_VIDEO_INTERCOM_UNIT_DEVICEID_UNION { + pub byLen: [BYTE; 128usize], + pub struIndoorUnit: NET_DVR_INDOOR_UNIT_DEVICEID, + pub struOutdoorUnit: NET_DVR_OUTDOOR_UNIT_DEVICEID, + pub struManageUnit: NET_DVR_MANAGE_UNIT_DEVICEID, + pub struFenceUnit: NET_DVR_OUTDOOR_FENCE_DEVICEID, + pub struVillaOutdoorUnit: NET_DVR_OUTDOOR_UNIT_DEVICEID, + pub struAgainConfirmUnit: NET_DVR_OUTDOOR_UNIT_DEVICEID, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEO_INTERCOM_UNIT_DEVICEID_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_UNIT_DEVICEID_UNION) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_UNIT_DEVICEID_UNION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_UNIT_DEVICEID_UNION), + "::", + stringify!(byLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIndoorUnit) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_UNIT_DEVICEID_UNION), + "::", + stringify!(struIndoorUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOutdoorUnit) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_UNIT_DEVICEID_UNION), + "::", + stringify!(struOutdoorUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struManageUnit) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_UNIT_DEVICEID_UNION), + "::", + stringify!(struManageUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFenceUnit) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_UNIT_DEVICEID_UNION), + "::", + stringify!(struFenceUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVillaOutdoorUnit) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_UNIT_DEVICEID_UNION), + "::", + stringify!(struVillaOutdoorUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAgainConfirmUnit) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_UNIT_DEVICEID_UNION), + "::", + stringify!(struAgainConfirmUnit) + ) + ); +} +pub type NET_DVR_VIDEO_INTERCOM_UNIT_DEVICEID_UNION = tagNET_DVR_VIDEO_INTERCOM_UNIT_DEVICEID_UNION; +pub type LPNET_DVR_VIDEO_INTERCOM_UNIT_DEVICEID_UNION = + *mut tagNET_DVR_VIDEO_INTERCOM_UNIT_DEVICEID_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_VIDEO_INTERCOM_DEVICEID_CFG { + pub dwSize: DWORD, + pub byUnitType: BYTE, + pub byIsAutoReg: BYTE, + pub byRes1: [BYTE; 2usize], + pub uVideoIntercomUnit: NET_DVR_VIDEO_INTERCOM_UNIT_DEVICEID_UNION, + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEO_INTERCOM_DEVICEID_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_DEVICEID_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_DEVICEID_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_DEVICEID_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUnitType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_DEVICEID_CFG), + "::", + stringify!(byUnitType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsAutoReg) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_DEVICEID_CFG), + "::", + stringify!(byIsAutoReg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_DEVICEID_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uVideoIntercomUnit) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_DEVICEID_CFG), + "::", + stringify!(uVideoIntercomUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_DEVICEID_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_VIDEO_INTERCOM_DEVICEID_CFG = tagNET_DVR_VIDEO_INTERCOM_DEVICEID_CFG; +pub type LPNET_DVR_VIDEO_INTERCOM_DEVICEID_CFG = *mut tagNET_DVR_VIDEO_INTERCOM_DEVICEID_CFG; +pub const tagPRIVILEGE_PASSWORD_TYPE_ENUM_ENUM_PRIVILEGE_PASSWORD_ENGINEERING: + tagPRIVILEGE_PASSWORD_TYPE_ENUM = 1; +pub const tagPRIVILEGE_PASSWORD_TYPE_ENUM_ENUM_PRIVILEGE_PASSWORD_SETUPALARM: + tagPRIVILEGE_PASSWORD_TYPE_ENUM = 2; +pub const tagPRIVILEGE_PASSWORD_TYPE_ENUM_ENUM_PRIVILEGE_PASSWORD_HOUSEHOLDER_UNLOCK: + tagPRIVILEGE_PASSWORD_TYPE_ENUM = 3; +pub const tagPRIVILEGE_PASSWORD_TYPE_ENUM_ENUM_PRIVILEGE_PASSWORD_ANTI_HIJACKING: + tagPRIVILEGE_PASSWORD_TYPE_ENUM = 4; +pub const tagPRIVILEGE_PASSWORD_TYPE_ENUM_ENUM_PRIVILEGE_PASSWORD_PUBLIC1: + tagPRIVILEGE_PASSWORD_TYPE_ENUM = 5; +pub const tagPRIVILEGE_PASSWORD_TYPE_ENUM_ENUM_PRIVILEGE_PASSWORD_PUBLIC2: + tagPRIVILEGE_PASSWORD_TYPE_ENUM = 6; +pub const tagPRIVILEGE_PASSWORD_TYPE_ENUM_ENUM_PRIVILEGE_PASSWORD_PUBLIC3: + tagPRIVILEGE_PASSWORD_TYPE_ENUM = 7; +pub const tagPRIVILEGE_PASSWORD_TYPE_ENUM_ENUM_PRIVILEGE_PASSWORD_SENDCARD: + tagPRIVILEGE_PASSWORD_TYPE_ENUM = 8; +pub type tagPRIVILEGE_PASSWORD_TYPE_ENUM = ::std::os::raw::c_uint; +pub use self::tagPRIVILEGE_PASSWORD_TYPE_ENUM as PRIVILEGE_PASSWORD_TYPE_ENUM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PRIVILEGE_PASSWORD_CFG { + pub dwSize: DWORD, + pub byPwdType: BYTE, + pub byRes1: [BYTE; 3usize], + pub byOldPassword: [BYTE; 16usize], + pub byNewPassword: [BYTE; 16usize], + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PRIVILEGE_PASSWORD_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 168usize, + concat!("Size of: ", stringify!(tagNET_DVR_PRIVILEGE_PASSWORD_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PRIVILEGE_PASSWORD_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVILEGE_PASSWORD_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPwdType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVILEGE_PASSWORD_CFG), + "::", + stringify!(byPwdType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVILEGE_PASSWORD_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOldPassword) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVILEGE_PASSWORD_CFG), + "::", + stringify!(byOldPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNewPassword) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVILEGE_PASSWORD_CFG), + "::", + stringify!(byNewPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVILEGE_PASSWORD_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PRIVILEGE_PASSWORD_CFG = tagNET_DVR_PRIVILEGE_PASSWORD_CFG; +pub type LPNET_DVR_PRIVILEGE_PASSWORD_CFG = *mut tagNET_DVR_PRIVILEGE_PASSWORD_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INDOOR_UNIT_OPERATION_TIME_CFG { + pub dwMaxMonitoringTime: DWORD, + pub dwMaxRingTime: DWORD, + pub dwCallForwardingTime: DWORD, + pub dwRingDurationTime: DWORD, + pub byRes: [BYTE; 112usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INDOOR_UNIT_OPERATION_TIME_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_INDOOR_UNIT_OPERATION_TIME_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_INDOOR_UNIT_OPERATION_TIME_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxMonitoringTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INDOOR_UNIT_OPERATION_TIME_CFG), + "::", + stringify!(dwMaxMonitoringTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxRingTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INDOOR_UNIT_OPERATION_TIME_CFG), + "::", + stringify!(dwMaxRingTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCallForwardingTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INDOOR_UNIT_OPERATION_TIME_CFG), + "::", + stringify!(dwCallForwardingTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRingDurationTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INDOOR_UNIT_OPERATION_TIME_CFG), + "::", + stringify!(dwRingDurationTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INDOOR_UNIT_OPERATION_TIME_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INDOOR_UNIT_OPERATION_TIME_CFG = tagNET_DVR_INDOOR_UNIT_OPERATION_TIME_CFG; +pub type LPNET_DVR_INDOOR_UNIT_OPERATION_TIME_CFG = *mut tagNET_DVR_INDOOR_UNIT_OPERATION_TIME_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OUTDOOR_UNIT_OPERATION_TIME_CFG { + pub dwMaxMessageTime: DWORD, + pub dwMaxTalkTime: DWORD, + pub byRes: [BYTE; 120usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OUTDOOR_UNIT_OPERATION_TIME_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_OUTDOOR_UNIT_OPERATION_TIME_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_OUTDOOR_UNIT_OPERATION_TIME_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxMessageTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTDOOR_UNIT_OPERATION_TIME_CFG), + "::", + stringify!(dwMaxMessageTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxTalkTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTDOOR_UNIT_OPERATION_TIME_CFG), + "::", + stringify!(dwMaxTalkTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTDOOR_UNIT_OPERATION_TIME_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_OUTDOOR_UNIT_OPERATION_TIME_CFG = tagNET_DVR_OUTDOOR_UNIT_OPERATION_TIME_CFG; +pub type LPNET_DVR_OUTDOOR_UNIT_OPERATION_TIME_CFG = + *mut tagNET_DVR_OUTDOOR_UNIT_OPERATION_TIME_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MANAGE_UNIT_OPERATION_TIME_CFG { + pub dwMaxMonitoringTime: DWORD, + pub dwMaxRingTime: DWORD, + pub dwMaxTalkTime: DWORD, + pub byRes: [BYTE; 116usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MANAGE_UNIT_OPERATION_TIME_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_MANAGE_UNIT_OPERATION_TIME_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MANAGE_UNIT_OPERATION_TIME_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxMonitoringTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANAGE_UNIT_OPERATION_TIME_CFG), + "::", + stringify!(dwMaxMonitoringTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxRingTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANAGE_UNIT_OPERATION_TIME_CFG), + "::", + stringify!(dwMaxRingTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxTalkTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANAGE_UNIT_OPERATION_TIME_CFG), + "::", + stringify!(dwMaxTalkTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANAGE_UNIT_OPERATION_TIME_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MANAGE_UNIT_OPERATION_TIME_CFG = tagNET_DVR_MANAGE_UNIT_OPERATION_TIME_CFG; +pub type LPNET_DVR_MANAGE_UNIT_OPERATION_TIME_CFG = *mut tagNET_DVR_MANAGE_UNIT_OPERATION_TIME_CFG; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_UNION { + pub byLen: [BYTE; 128usize], + pub struIndoorUnit: NET_DVR_INDOOR_UNIT_OPERATION_TIME_CFG, + pub struOutdoorUnit: NET_DVR_OUTDOOR_UNIT_OPERATION_TIME_CFG, + pub struManageUnit: NET_DVR_MANAGE_UNIT_OPERATION_TIME_CFG, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_UNION) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_UNION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_UNION), + "::", + stringify!(byLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIndoorUnit) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_UNION), + "::", + stringify!(struIndoorUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOutdoorUnit) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_UNION), + "::", + stringify!(struOutdoorUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struManageUnit) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_UNION), + "::", + stringify!(struManageUnit) + ) + ); +} +pub type NET_DVR_VIDEO_INTERCOM_OPERATION_TIME_UNION = + tagNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_UNION; +pub type LPNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_UNION = + *mut tagNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_CFG { + pub dwSize: DWORD, + pub byUnitType: BYTE, + pub byRes1: [BYTE; 3usize], + pub uVideoIntercomUnit: NET_DVR_VIDEO_INTERCOM_OPERATION_TIME_UNION, + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUnitType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_CFG), + "::", + stringify!(byUnitType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uVideoIntercomUnit) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_CFG), + "::", + stringify!(uVideoIntercomUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_VIDEO_INTERCOM_OPERATION_TIME_CFG = tagNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_CFG; +pub type LPNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_CFG = + *mut tagNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INDOOR_UNIT_RELATEDEV { + pub struOutdoorUnit: NET_DVR_IPADDR, + pub struManageUnit: NET_DVR_IPADDR, + pub struSIPServer: NET_DVR_IPADDR, + pub struAgainUnit: NET_DVR_IPADDR, + pub byOutDoorType: BYTE, + pub byOutInConnectMode: BYTE, + pub byIndoorConnectMode: BYTE, + pub byRes1: BYTE, + pub struIndoorUnit: NET_DVR_IPADDR, + pub byManageCenterID: [BYTE; 32usize], + pub byRes: [BYTE; 268usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INDOOR_UNIT_RELATEDEV() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1024usize, + concat!("Size of: ", stringify!(tagNET_DVR_INDOOR_UNIT_RELATEDEV)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_INDOOR_UNIT_RELATEDEV) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOutdoorUnit) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INDOOR_UNIT_RELATEDEV), + "::", + stringify!(struOutdoorUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struManageUnit) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INDOOR_UNIT_RELATEDEV), + "::", + stringify!(struManageUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSIPServer) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INDOOR_UNIT_RELATEDEV), + "::", + stringify!(struSIPServer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAgainUnit) as usize - ptr as usize }, + 432usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INDOOR_UNIT_RELATEDEV), + "::", + stringify!(struAgainUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutDoorType) as usize - ptr as usize }, + 576usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INDOOR_UNIT_RELATEDEV), + "::", + stringify!(byOutDoorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutInConnectMode) as usize - ptr as usize }, + 577usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INDOOR_UNIT_RELATEDEV), + "::", + stringify!(byOutInConnectMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIndoorConnectMode) as usize - ptr as usize }, + 578usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INDOOR_UNIT_RELATEDEV), + "::", + stringify!(byIndoorConnectMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 579usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INDOOR_UNIT_RELATEDEV), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIndoorUnit) as usize - ptr as usize }, + 580usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INDOOR_UNIT_RELATEDEV), + "::", + stringify!(struIndoorUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byManageCenterID) as usize - ptr as usize }, + 724usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INDOOR_UNIT_RELATEDEV), + "::", + stringify!(byManageCenterID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 756usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INDOOR_UNIT_RELATEDEV), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INDOOR_UNIT_RELATEDEV = tagNET_DVR_INDOOR_UNIT_RELATEDEV; +pub type LPNET_DVR_INDOOR_UNIT_RELATEDEV = *mut tagNET_DVR_INDOOR_UNIT_RELATEDEV; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OUTDOOR_UNIT_RELATEDEV { + pub struMainOutdoorUnit: NET_DVR_IPADDR, + pub struManageUnit: NET_DVR_IPADDR, + pub struSIPServer: NET_DVR_IPADDR, + pub byManageCenterID: [BYTE; 32usize], + pub byRes: [BYTE; 560usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OUTDOOR_UNIT_RELATEDEV() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1024usize, + concat!("Size of: ", stringify!(tagNET_DVR_OUTDOOR_UNIT_RELATEDEV)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_OUTDOOR_UNIT_RELATEDEV) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMainOutdoorUnit) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTDOOR_UNIT_RELATEDEV), + "::", + stringify!(struMainOutdoorUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struManageUnit) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTDOOR_UNIT_RELATEDEV), + "::", + stringify!(struManageUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSIPServer) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTDOOR_UNIT_RELATEDEV), + "::", + stringify!(struSIPServer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byManageCenterID) as usize - ptr as usize }, + 432usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTDOOR_UNIT_RELATEDEV), + "::", + stringify!(byManageCenterID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 464usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTDOOR_UNIT_RELATEDEV), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_OUTDOOR_UNIT_RELATEDEV = tagNET_DVR_OUTDOOR_UNIT_RELATEDEV; +pub type LPNET_DVR_OUTDOOR_UNIT_RELATEDEV = *mut tagNET_DVR_OUTDOOR_UNIT_RELATEDEV; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AGAIN_RELATEDEV { + pub struSIPServer: NET_DVR_IPADDR, + pub struCenterAddr: NET_DVR_IPADDR, + pub wCenterPort: WORD, + pub byRes1: [BYTE; 2usize], + pub struIndoorUnit: NET_DVR_IPADDR, + pub struAgainAddr: NET_DVR_IPADDR, + pub byRes: [BYTE; 444usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AGAIN_RELATEDEV() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1024usize, + concat!("Size of: ", stringify!(tagNET_DVR_AGAIN_RELATEDEV)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AGAIN_RELATEDEV)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSIPServer) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AGAIN_RELATEDEV), + "::", + stringify!(struSIPServer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCenterAddr) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AGAIN_RELATEDEV), + "::", + stringify!(struCenterAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCenterPort) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AGAIN_RELATEDEV), + "::", + stringify!(wCenterPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 290usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AGAIN_RELATEDEV), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIndoorUnit) as usize - ptr as usize }, + 292usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AGAIN_RELATEDEV), + "::", + stringify!(struIndoorUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAgainAddr) as usize - ptr as usize }, + 436usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AGAIN_RELATEDEV), + "::", + stringify!(struAgainAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 580usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AGAIN_RELATEDEV), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AGAIN_RELATEDEV = tagNET_DVR_AGAIN_RELATEDEV; +pub type LPNET_DVR_AGAIN_RELATEDEV = *mut tagNET_DVR_AGAIN_RELATEDEV; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MANAGE_UNIT_RELATEDEV { + pub struSIPServer: NET_DVR_IPADDR, + pub byRes: [BYTE; 880usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MANAGE_UNIT_RELATEDEV() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1024usize, + concat!("Size of: ", stringify!(tagNET_DVR_MANAGE_UNIT_RELATEDEV)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MANAGE_UNIT_RELATEDEV) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSIPServer) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANAGE_UNIT_RELATEDEV), + "::", + stringify!(struSIPServer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANAGE_UNIT_RELATEDEV), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MANAGE_UNIT_RELATEDEV = tagNET_DVR_MANAGE_UNIT_RELATEDEV; +pub type LPNET_DVR_MANAGE_UNIT_RELATEDEV = *mut tagNET_DVR_MANAGE_UNIT_RELATEDEV; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_VIDEO_INTERCOM_UNIT_RELATEDEV_UNION { + pub dwRes: [DWORD; 256usize], + pub struIndoorUnit: NET_DVR_INDOOR_UNIT_RELATEDEV, + pub struMainOutdoorUnit: NET_DVR_OUTDOOR_UNIT_RELATEDEV, + pub struManageUnit: NET_DVR_MANAGE_UNIT_RELATEDEV, + pub struVillaUnit: NET_DVR_OUTDOOR_UNIT_RELATEDEV, + pub struAgainUnit: NET_DVR_AGAIN_RELATEDEV, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEO_INTERCOM_UNIT_RELATEDEV_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1024usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_UNIT_RELATEDEV_UNION) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_UNIT_RELATEDEV_UNION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_UNIT_RELATEDEV_UNION), + "::", + stringify!(dwRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIndoorUnit) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_UNIT_RELATEDEV_UNION), + "::", + stringify!(struIndoorUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMainOutdoorUnit) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_UNIT_RELATEDEV_UNION), + "::", + stringify!(struMainOutdoorUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struManageUnit) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_UNIT_RELATEDEV_UNION), + "::", + stringify!(struManageUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVillaUnit) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_UNIT_RELATEDEV_UNION), + "::", + stringify!(struVillaUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAgainUnit) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_UNIT_RELATEDEV_UNION), + "::", + stringify!(struAgainUnit) + ) + ); +} +pub type NET_DVR_VIDEO_INTERCOM_UNIT_RELATEDEV_UNION = + tagNET_DVR_VIDEO_INTERCOM_UNIT_RELATEDEV_UNION; +pub type LPNET_DVR_VIDEO_INTERCOM_UNIT_RELATEDEV_UNION = + *mut tagNET_DVR_VIDEO_INTERCOM_UNIT_RELATEDEV_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_VIDEO_INTERCOM_RELATEDEV_CFG { + pub dwSize: DWORD, + pub byUnitType: BYTE, + pub byRes1: [BYTE; 3usize], + pub uVideoIntercomUnit: NET_DVR_VIDEO_INTERCOM_UNIT_RELATEDEV_UNION, + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEO_INTERCOM_RELATEDEV_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1160usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_RELATEDEV_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_RELATEDEV_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_RELATEDEV_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUnitType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_RELATEDEV_CFG), + "::", + stringify!(byUnitType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_RELATEDEV_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uVideoIntercomUnit) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_RELATEDEV_CFG), + "::", + stringify!(uVideoIntercomUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1032usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_RELATEDEV_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_VIDEO_INTERCOM_RELATEDEV_CFG = tagNET_DVR_VIDEO_INTERCOM_RELATEDEV_CFG; +pub type LPNET_DVR_VIDEO_INTERCOM_RELATEDEV_CFG = *mut tagNET_DVR_VIDEO_INTERCOM_RELATEDEV_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CONTROL_GATEWAY { + pub dwSize: DWORD, + pub dwGatewayIndex: DWORD, + pub byCommand: BYTE, + pub byLockType: BYTE, + pub wLockID: WORD, + pub byControlSrc: [BYTE; 32usize], + pub byControlType: BYTE, + pub byRes3: [BYTE; 3usize], + pub byPassword: [BYTE; 16usize], + pub byRes2: [BYTE; 108usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CONTROL_GATEWAY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 172usize, + concat!("Size of: ", stringify!(tagNET_DVR_CONTROL_GATEWAY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CONTROL_GATEWAY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_GATEWAY), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGatewayIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_GATEWAY), + "::", + stringify!(dwGatewayIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCommand) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_GATEWAY), + "::", + stringify!(byCommand) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLockType) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_GATEWAY), + "::", + stringify!(byLockType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLockID) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_GATEWAY), + "::", + stringify!(wLockID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byControlSrc) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_GATEWAY), + "::", + stringify!(byControlSrc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byControlType) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_GATEWAY), + "::", + stringify!(byControlType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 45usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_GATEWAY), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPassword) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_GATEWAY), + "::", + stringify!(byPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONTROL_GATEWAY), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CONTROL_GATEWAY = tagNET_DVR_CONTROL_GATEWAY; +pub type LPNET_DVR_CONTROL_GATEWAY = *mut tagNET_DVR_CONTROL_GATEWAY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_NOTICE_PIC { + pub pPicData: *mut BYTE, + pub dwPicDataLen: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NOTICE_PIC() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_DVR_NOTICE_PIC)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NOTICE_PIC)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPicData) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOTICE_PIC), + "::", + stringify!(pPicData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicDataLen) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOTICE_PIC), + "::", + stringify!(dwPicDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOTICE_PIC), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_NOTICE_PIC = tagNET_DVR_NOTICE_PIC; +pub type LPNET_DVR_NOTICE_PIC = *mut tagNET_DVR_NOTICE_PIC; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_NOTICE_DATA { + pub dwSize: DWORD, + pub struTime: NET_DVR_TIME_EX, + pub byNoticeNumber: [BYTE; 32usize], + pub byNoticeTheme: [BYTE; 64usize], + pub byNoticeDetail: [BYTE; 1024usize], + pub byLevel: BYTE, + pub byPicNum: BYTE, + pub byRes1: [BYTE; 2usize], + pub struNoticePic: [NET_DVR_NOTICE_PIC; 6usize], + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NOTICE_DATA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1552usize, + concat!("Size of: ", stringify!(tagNET_DVR_NOTICE_DATA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NOTICE_DATA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOTICE_DATA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOTICE_DATA), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNoticeNumber) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOTICE_DATA), + "::", + stringify!(byNoticeNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNoticeTheme) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOTICE_DATA), + "::", + stringify!(byNoticeTheme) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNoticeDetail) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOTICE_DATA), + "::", + stringify!(byNoticeDetail) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLevel) as usize - ptr as usize }, + 1132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOTICE_DATA), + "::", + stringify!(byLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicNum) as usize - ptr as usize }, + 1133usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOTICE_DATA), + "::", + stringify!(byPicNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1134usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOTICE_DATA), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNoticePic) as usize - ptr as usize }, + 1136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOTICE_DATA), + "::", + stringify!(struNoticePic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1424usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOTICE_DATA), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_NOTICE_DATA = tagNET_DVR_NOTICE_DATA; +pub type LPNET_DVR_NOTICE_DATA = *mut tagNET_DVR_NOTICE_DATA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OPERATION_AUTH { + pub dwSize: DWORD, + pub byPassword: [BYTE; 16usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OPERATION_AUTH() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!("Size of: ", stringify!(tagNET_DVR_OPERATION_AUTH)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OPERATION_AUTH)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATION_AUTH), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPassword) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATION_AUTH), + "::", + stringify!(byPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPERATION_AUTH), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_OPERATION_AUTH = tagNET_DVR_OPERATION_AUTH; +pub type LPNET_DVR_OPERATION_AUTH = *mut tagNET_DVR_OPERATION_AUTH; +pub const tagUNLOCK_TYPE_ENUM_ENUM_UNLOCK_PASSWORD: tagUNLOCK_TYPE_ENUM = 1; +pub const tagUNLOCK_TYPE_ENUM_ENUM_UNLOCK_HIJACKING: tagUNLOCK_TYPE_ENUM = 2; +pub const tagUNLOCK_TYPE_ENUM_ENUM_UNLOCK_CARD: tagUNLOCK_TYPE_ENUM = 3; +pub const tagUNLOCK_TYPE_ENUM_ENUM_UNLOCK_HOUSEHOLDER: tagUNLOCK_TYPE_ENUM = 4; +pub const tagUNLOCK_TYPE_ENUM_ENUM_UNLOCK_CENTER_PLATFORM: tagUNLOCK_TYPE_ENUM = 5; +pub const tagUNLOCK_TYPE_ENUM_ENUM_UNLOCK_BLUETOOTH: tagUNLOCK_TYPE_ENUM = 6; +pub const tagUNLOCK_TYPE_ENUM_ENUM_UNLOCK_QR_CODE: tagUNLOCK_TYPE_ENUM = 7; +pub const tagUNLOCK_TYPE_ENUM_ENUM_UNLOCK_FACE: tagUNLOCK_TYPE_ENUM = 8; +pub const tagUNLOCK_TYPE_ENUM_ENUM_UNLOCK_FINGERPRINT: tagUNLOCK_TYPE_ENUM = 9; +pub const tagUNLOCK_TYPE_ENUM_ENUM_UNLOCK_DYNAMIC_CODE: tagUNLOCK_TYPE_ENUM = 10; +pub type tagUNLOCK_TYPE_ENUM = ::std::os::raw::c_uint; +pub use self::tagUNLOCK_TYPE_ENUM as UNLOCK_TYPE_ENUM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_UNLOCK_RECORD_INFO { + pub byUnlockType: BYTE, + pub byRes1: [BYTE; 3usize], + pub byControlSrc: [BYTE; 32usize], + pub dwPicDataLen: DWORD, + pub pImage: *mut BYTE, + pub dwCardUserID: DWORD, + pub nFloorNumber: SHORT, + pub wRoomNumber: WORD, + pub wLockID: WORD, + pub byRes2: [BYTE; 2usize], + pub byLockName: [BYTE; 32usize], + pub byEmployeeNo: [BYTE; 32usize], + pub byMask: BYTE, + pub byRes: [BYTE; 135usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_UNLOCK_RECORD_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_DVR_UNLOCK_RECORD_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_UNLOCK_RECORD_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUnlockType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNLOCK_RECORD_INFO), + "::", + stringify!(byUnlockType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNLOCK_RECORD_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byControlSrc) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNLOCK_RECORD_INFO), + "::", + stringify!(byControlSrc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicDataLen) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNLOCK_RECORD_INFO), + "::", + stringify!(dwPicDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pImage) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNLOCK_RECORD_INFO), + "::", + stringify!(pImage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardUserID) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNLOCK_RECORD_INFO), + "::", + stringify!(dwCardUserID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nFloorNumber) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNLOCK_RECORD_INFO), + "::", + stringify!(nFloorNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRoomNumber) as usize - ptr as usize }, + 54usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNLOCK_RECORD_INFO), + "::", + stringify!(wRoomNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLockID) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNLOCK_RECORD_INFO), + "::", + stringify!(wLockID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 58usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNLOCK_RECORD_INFO), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLockName) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNLOCK_RECORD_INFO), + "::", + stringify!(byLockName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEmployeeNo) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNLOCK_RECORD_INFO), + "::", + stringify!(byEmployeeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMask) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNLOCK_RECORD_INFO), + "::", + stringify!(byMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 125usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNLOCK_RECORD_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_UNLOCK_RECORD_INFO = tagNET_DVR_UNLOCK_RECORD_INFO; +pub type LPNET_DVR_UNLOCK_RECORD_INFO = *mut tagNET_DVR_UNLOCK_RECORD_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_NOTICEDATA_RECEIPT_INFO { + pub byNoticeNumber: [BYTE; 32usize], + pub byRes: [BYTE; 224usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NOTICEDATA_RECEIPT_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_NOTICEDATA_RECEIPT_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_NOTICEDATA_RECEIPT_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNoticeNumber) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOTICEDATA_RECEIPT_INFO), + "::", + stringify!(byNoticeNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOTICEDATA_RECEIPT_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_NOTICEDATA_RECEIPT_INFO = tagNET_DVR_NOTICEDATA_RECEIPT_INFO; +pub type LPNET_DVR_NOTICEDATA_RECEIPT_INFO = *mut tagNET_DVR_NOTICEDATA_RECEIPT_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUTH_INFO { + pub byAuthResult: BYTE, + pub byAuthType: BYTE, + pub byRes1: [BYTE; 2usize], + pub byCardNo: [BYTE; 32usize], + pub dwPicDataLen: DWORD, + pub pImage: *mut BYTE, + pub byEmployeeNo: [BYTE; 32usize], + pub byRes: [BYTE; 180usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUTH_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUTH_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AUTH_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAuthResult) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTH_INFO), + "::", + stringify!(byAuthResult) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAuthType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTH_INFO), + "::", + stringify!(byAuthType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTH_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTH_INFO), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicDataLen) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTH_INFO), + "::", + stringify!(dwPicDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pImage) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTH_INFO), + "::", + stringify!(pImage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEmployeeNo) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTH_INFO), + "::", + stringify!(byEmployeeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTH_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AUTH_INFO = tagNET_DVR_AUTH_INFO; +pub type LPNET_DVR_AUTH_INFO = *mut tagNET_DVR_AUTH_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_UPLOAD_PLATE_INFO { + pub sLicense: [::std::os::raw::c_char; 16usize], + pub byColor: BYTE, + pub byRes: [BYTE; 239usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_UPLOAD_PLATE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_UPLOAD_PLATE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_UPLOAD_PLATE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLicense) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_PLATE_INFO), + "::", + stringify!(sLicense) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byColor) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_PLATE_INFO), + "::", + stringify!(byColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_PLATE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_UPLOAD_PLATE_INFO = tagNET_DVR_UPLOAD_PLATE_INFO; +pub type LPNET_DVR_UPLOAD_PLATE_INFO = *mut tagNET_DVR_UPLOAD_PLATE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEND_CARD_INFO { + pub byCardNo: [BYTE; 32usize], + pub byRes: [BYTE; 224usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEND_CARD_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_SEND_CARD_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SEND_CARD_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEND_CARD_INFO), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEND_CARD_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SEND_CARD_INFO = tagNET_DVR_SEND_CARD_INFO; +pub type LPNET_DVR_SEND_CARD_INFO = *mut tagNET_DVR_SEND_CARD_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MAGNETIC_DOOR_STATUS { + pub byMagneticDoorStatus: BYTE, + pub byRes: [BYTE; 255usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MAGNETIC_DOOR_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_MAGNETIC_DOOR_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MAGNETIC_DOOR_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMagneticDoorStatus) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MAGNETIC_DOOR_STATUS), + "::", + stringify!(byMagneticDoorStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MAGNETIC_DOOR_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MAGNETIC_DOOR_STATUS = tagNET_DVR_MAGNETIC_DOOR_STATUS; +pub type LPNET_DVR_MAGNETIC_DOOR_STATUS = *mut tagNET_DVR_MAGNETIC_DOOR_STATUS; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_VIDEO_INTERCOM_EVENT_INFO_UINON { + pub byLen: [BYTE; 256usize], + pub struUnlockRecord: NET_DVR_UNLOCK_RECORD_INFO, + pub struNoticedataReceipt: NET_DVR_NOTICEDATA_RECEIPT_INFO, + pub struAuthInfo: NET_DVR_AUTH_INFO, + pub struUploadPlateInfo: NET_DVR_UPLOAD_PLATE_INFO, + pub struSendCardInfo: NET_DVR_SEND_CARD_INFO, + pub struMagneticDoorStatus: NET_DVR_MAGNETIC_DOOR_STATUS, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEO_INTERCOM_EVENT_INFO_UINON() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_EVENT_INFO_UINON) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_EVENT_INFO_UINON) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_EVENT_INFO_UINON), + "::", + stringify!(byLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struUnlockRecord) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_EVENT_INFO_UINON), + "::", + stringify!(struUnlockRecord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNoticedataReceipt) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_EVENT_INFO_UINON), + "::", + stringify!(struNoticedataReceipt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAuthInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_EVENT_INFO_UINON), + "::", + stringify!(struAuthInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struUploadPlateInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_EVENT_INFO_UINON), + "::", + stringify!(struUploadPlateInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSendCardInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_EVENT_INFO_UINON), + "::", + stringify!(struSendCardInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMagneticDoorStatus) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_EVENT_INFO_UINON), + "::", + stringify!(struMagneticDoorStatus) + ) + ); +} +pub type NET_DVR_VIDEO_INTERCOM_EVENT_INFO_UINON = tagNET_DVR_VIDEO_INTERCOM_EVENT_INFO_UINON; +pub type LPNET_DVR_VIDEO_INTERCOM_EVENT_INFO_UINON = + *mut tagNET_DVR_VIDEO_INTERCOM_EVENT_INFO_UINON; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_VIDEO_INTERCOM_EVENT { + pub dwSize: DWORD, + pub struTime: NET_DVR_TIME_EX, + pub byDevNumber: [BYTE; 32usize], + pub byEventType: BYTE, + pub byPicTransType: BYTE, + pub byRes1: [BYTE; 2usize], + pub uEventInfo: NET_DVR_VIDEO_INTERCOM_EVENT_INFO_UINON, + pub dwIOTChannelNo: DWORD, + pub byRes2: [BYTE; 252usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEO_INTERCOM_EVENT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 568usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEO_INTERCOM_EVENT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VIDEO_INTERCOM_EVENT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_EVENT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_EVENT), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevNumber) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_EVENT), + "::", + stringify!(byDevNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEventType) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_EVENT), + "::", + stringify!(byEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicTransType) as usize - ptr as usize }, + 45usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_EVENT), + "::", + stringify!(byPicTransType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 46usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_EVENT), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uEventInfo) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_EVENT), + "::", + stringify!(uEventInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIOTChannelNo) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_EVENT), + "::", + stringify!(dwIOTChannelNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 316usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_EVENT), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_VIDEO_INTERCOM_EVENT = tagNET_DVR_VIDEO_INTERCOM_EVENT; +pub type LPNET_DVR_VIDEO_INTERCOM_EVENT = *mut tagNET_DVR_VIDEO_INTERCOM_EVENT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ZONE_ALARM_INFO { + pub byZoneName: [BYTE; 32usize], + pub dwZonendex: DWORD, + pub byZoneType: BYTE, + pub byRes: [BYTE; 219usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ZONE_ALARM_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_ZONE_ALARM_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ZONE_ALARM_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZoneName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ZONE_ALARM_INFO), + "::", + stringify!(byZoneName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwZonendex) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ZONE_ALARM_INFO), + "::", + stringify!(dwZonendex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZoneType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ZONE_ALARM_INFO), + "::", + stringify!(byZoneType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ZONE_ALARM_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ZONE_ALARM_INFO = tagNET_DVR_ZONE_ALARM_INFO; +pub type LPNET_DVR_ZONE_ALARM_INFO = *mut tagNET_DVR_ZONE_ALARM_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCK_ALARM_INFO { + pub dwLockID: DWORD, + pub byRes: [BYTE; 252usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCK_ALARM_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOCK_ALARM_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOCK_ALARM_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLockID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCK_ALARM_INFO), + "::", + stringify!(dwLockID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCK_ALARM_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOCK_ALARM_INFO = tagNET_DVR_LOCK_ALARM_INFO; +pub type LPNET_DVR_LOCK_ALARM_INFO = *mut tagNET_DVR_LOCK_ALARM_INFO; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_VIDEO_INTERCOM_ALARM_INFO_UNION { + pub byLen: [BYTE; 256usize], + pub struZoneAlarm: NET_DVR_ZONE_ALARM_INFO, + pub struLockAlarm: NET_DVR_LOCK_ALARM_INFO, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEO_INTERCOM_ALARM_INFO_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_ALARM_INFO_UNION) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_ALARM_INFO_UNION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_ALARM_INFO_UNION), + "::", + stringify!(byLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struZoneAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_ALARM_INFO_UNION), + "::", + stringify!(struZoneAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLockAlarm) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_ALARM_INFO_UNION), + "::", + stringify!(struLockAlarm) + ) + ); +} +pub type NET_DVR_VIDEO_INTERCOM_ALARM_INFO_UNION = tagNET_DVR_VIDEO_INTERCOM_ALARM_INFO_UNION; +pub type LPNET_DVR_VIDEO_INTERCOM_ALARM_INFO_UNION = + *mut tagNET_DVR_VIDEO_INTERCOM_ALARM_INFO_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_VIDEO_INTERCOM_ALARM { + pub dwSize: DWORD, + pub struTime: NET_DVR_TIME_EX, + pub byDevNumber: [BYTE; 32usize], + pub byAlarmType: BYTE, + pub byRes1: [BYTE; 3usize], + pub uAlarmInfo: NET_DVR_VIDEO_INTERCOM_ALARM_INFO_UNION, + pub wLockID: WORD, + pub byRes3: [BYTE; 2usize], + pub dwIOTChannelNo: DWORD, + pub byRes2: [BYTE; 248usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEO_INTERCOM_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 560usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEO_INTERCOM_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VIDEO_INTERCOM_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_ALARM), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevNumber) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_ALARM), + "::", + stringify!(byDevNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_ALARM), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 45usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_ALARM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uAlarmInfo) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_ALARM), + "::", + stringify!(uAlarmInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLockID) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_ALARM), + "::", + stringify!(wLockID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 306usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_ALARM), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIOTChannelNo) as usize - ptr as usize }, + 308usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_ALARM), + "::", + stringify!(dwIOTChannelNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_ALARM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_VIDEO_INTERCOM_ALARM = tagNET_DVR_VIDEO_INTERCOM_ALARM; +pub type LPNET_DVR_VIDEO_INTERCOM_ALARM = *mut tagNET_DVR_VIDEO_INTERCOM_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PEOPLE_REGION { + pub byID: BYTE, + pub byNumber: BYTE, + pub byDressType: BYTE, + pub byRes: BYTE, + pub struRegion: NET_VCA_RECT, + pub dwPicLen: DWORD, + pub pPicBuffer: *mut ::std::os::raw::c_char, + pub byRes1: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PEOPLE_REGION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_PEOPLE_REGION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PEOPLE_REGION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PEOPLE_REGION), + "::", + stringify!(byID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNumber) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PEOPLE_REGION), + "::", + stringify!(byNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDressType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PEOPLE_REGION), + "::", + stringify!(byDressType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PEOPLE_REGION), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PEOPLE_REGION), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicLen) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PEOPLE_REGION), + "::", + stringify!(dwPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPicBuffer) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PEOPLE_REGION), + "::", + stringify!(pPicBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PEOPLE_REGION), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_PEOPLE_REGION = tagNET_DVR_PEOPLE_REGION; +pub type LPNET_DVR_PEOPLE_REGION = *mut tagNET_DVR_PEOPLE_REGION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PEOPLE_DETECTION_RESULT { + pub dwSize: DWORD, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub struPeopleRegion: [NET_DVR_PEOPLE_REGION; 8usize], + pub byPeopleAlarmType: BYTE, + pub byRes: [BYTE; 255usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PEOPLE_DETECTION_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 864usize, + concat!("Size of: ", stringify!(tagNET_DVR_PEOPLE_DETECTION_RESULT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PEOPLE_DETECTION_RESULT) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PEOPLE_DETECTION_RESULT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PEOPLE_DETECTION_RESULT), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PEOPLE_DETECTION_RESULT), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PEOPLE_DETECTION_RESULT), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPeopleRegion) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PEOPLE_DETECTION_RESULT), + "::", + stringify!(struPeopleRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPeopleAlarmType) as usize - ptr as usize }, + 608usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PEOPLE_DETECTION_RESULT), + "::", + stringify!(byPeopleAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 609usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PEOPLE_DETECTION_RESULT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PEOPLE_DETECTION_RESULT = tagNET_DVR_PEOPLE_DETECTION_RESULT; +pub type LPNET_DVR_PEOPLE_DETECTION_RESULT = *mut tagNET_DVR_PEOPLE_DETECTION_RESULT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SUPPLEMENTLIGHT { + pub byEnable: BYTE, + pub byMode: BYTE, + pub byHighBeamBrightness: BYTE, + pub byLowBeamBrightness: BYTE, + pub struSchedTime: NET_DVR_SCHEDULE_DAYTIME, + pub wFilteringTime: WORD, + pub byBrightness: BYTE, + pub bySensitivity: BYTE, + pub byBrightnessRegulatMode: BYTE, + pub byMaxBrightness: BYTE, + pub byRes: [BYTE; 58usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUPPLEMENTLIGHT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 84usize, + concat!("Size of: ", stringify!(tagNET_DVR_SUPPLEMENTLIGHT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SUPPLEMENTLIGHT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUPPLEMENTLIGHT), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUPPLEMENTLIGHT), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHighBeamBrightness) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUPPLEMENTLIGHT), + "::", + stringify!(byHighBeamBrightness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLowBeamBrightness) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUPPLEMENTLIGHT), + "::", + stringify!(byLowBeamBrightness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSchedTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUPPLEMENTLIGHT), + "::", + stringify!(struSchedTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFilteringTime) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUPPLEMENTLIGHT), + "::", + stringify!(wFilteringTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrightness) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUPPLEMENTLIGHT), + "::", + stringify!(byBrightness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 23usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUPPLEMENTLIGHT), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrightnessRegulatMode) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUPPLEMENTLIGHT), + "::", + stringify!(byBrightnessRegulatMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMaxBrightness) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUPPLEMENTLIGHT), + "::", + stringify!(byMaxBrightness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUPPLEMENTLIGHT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SUPPLEMENTLIGHT = tagNET_DVR_SUPPLEMENTLIGHT; +pub type LPNET_DVR_SUPPLEMENTLIGHT = *mut tagNET_DVR_SUPPLEMENTLIGHT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EXTERNALDEVICE { + pub dwSize: DWORD, + pub struSupplementLight: NET_DVR_SUPPLEMENTLIGHT, + pub byRes: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXTERNALDEVICE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 600usize, + concat!("Size of: ", stringify!(tagNET_DVR_EXTERNALDEVICE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EXTERNALDEVICE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNALDEVICE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSupplementLight) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNALDEVICE), + "::", + stringify!(struSupplementLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXTERNALDEVICE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EXTERNALDEVICE = tagNET_DVR_EXTERNALDEVICE; +pub type LPNET_DVR_EXTERNALDEVICE = *mut tagNET_DVR_EXTERNALDEVICE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TEMPERATURE_TRIGGER_COND { + pub dwSize: DWORD, + pub dwChan: DWORD, + pub dwPreset: DWORD, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TEMPERATURE_TRIGGER_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 268usize, + concat!("Size of: ", stringify!(tagNET_DVR_TEMPERATURE_TRIGGER_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_TEMPERATURE_TRIGGER_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMPERATURE_TRIGGER_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMPERATURE_TRIGGER_COND), + "::", + stringify!(dwChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPreset) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMPERATURE_TRIGGER_COND), + "::", + stringify!(dwPreset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMPERATURE_TRIGGER_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TEMPERATURE_TRIGGER_COND = tagNET_DVR_TEMPERATURE_TRIGGER_COND; +pub type LPNET_DVR_TEMPERATURE_TRIGGER_COND = *mut tagNET_DVR_TEMPERATURE_TRIGGER_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BUILTIN_SUPPLEMENTLIGHT { + pub dwSize: DWORD, + pub byMode: BYTE, + pub byBrightnessLimit: BYTE, + pub bySupplementLightMode: BYTE, + pub byMixedLightRegulatMode: BYTE, + pub byLrLightBrightness: BYTE, + pub byHighLrLightBrightness: BYTE, + pub byHighBrightnessLimit: BYTE, + pub byLowLrLightBrightness: BYTE, + pub struSchedTime: NET_DVR_SCHEDULE_DAYTIME, + pub byLowBrightnessLimit: BYTE, + pub byWhiteLightBrightness: BYTE, + pub byIrLightbrightnessLimit: BYTE, + pub byWhiteLightbrightnessLimit: BYTE, + pub byRes1: [BYTE; 252usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BUILTIN_SUPPLEMENTLIGHT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 284usize, + concat!("Size of: ", stringify!(tagNET_DVR_BUILTIN_SUPPLEMENTLIGHT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_BUILTIN_SUPPLEMENTLIGHT) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BUILTIN_SUPPLEMENTLIGHT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BUILTIN_SUPPLEMENTLIGHT), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrightnessLimit) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BUILTIN_SUPPLEMENTLIGHT), + "::", + stringify!(byBrightnessLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupplementLightMode) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BUILTIN_SUPPLEMENTLIGHT), + "::", + stringify!(bySupplementLightMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMixedLightRegulatMode) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BUILTIN_SUPPLEMENTLIGHT), + "::", + stringify!(byMixedLightRegulatMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLrLightBrightness) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BUILTIN_SUPPLEMENTLIGHT), + "::", + stringify!(byLrLightBrightness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHighLrLightBrightness) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BUILTIN_SUPPLEMENTLIGHT), + "::", + stringify!(byHighLrLightBrightness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHighBrightnessLimit) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BUILTIN_SUPPLEMENTLIGHT), + "::", + stringify!(byHighBrightnessLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLowLrLightBrightness) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BUILTIN_SUPPLEMENTLIGHT), + "::", + stringify!(byLowLrLightBrightness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSchedTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BUILTIN_SUPPLEMENTLIGHT), + "::", + stringify!(struSchedTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLowBrightnessLimit) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BUILTIN_SUPPLEMENTLIGHT), + "::", + stringify!(byLowBrightnessLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWhiteLightBrightness) as usize - ptr as usize }, + 29usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BUILTIN_SUPPLEMENTLIGHT), + "::", + stringify!(byWhiteLightBrightness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIrLightbrightnessLimit) as usize - ptr as usize }, + 30usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BUILTIN_SUPPLEMENTLIGHT), + "::", + stringify!(byIrLightbrightnessLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWhiteLightbrightnessLimit) as usize - ptr as usize }, + 31usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BUILTIN_SUPPLEMENTLIGHT), + "::", + stringify!(byWhiteLightbrightnessLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BUILTIN_SUPPLEMENTLIGHT), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_BUILTIN_SUPPLEMENTLIGHT = tagNET_DVR_BUILTIN_SUPPLEMENTLIGHT; +pub type LPNET_DVR_BUILTIN_SUPPLEMENTLIGHT = *mut tagNET_DVR_BUILTIN_SUPPLEMENTLIGHT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OIS_CFG { + pub dwSize: DWORD, + pub byMode: BYTE, + pub byOISLevel: BYTE, + pub byOISSensitivity: BYTE, + pub byRes: [BYTE; 125usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OIS_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_OIS_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OIS_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OIS_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OIS_CFG), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOISLevel) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OIS_CFG), + "::", + stringify!(byOISLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOISSensitivity) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OIS_CFG), + "::", + stringify!(byOISSensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OIS_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_OIS_CFG = tagNET_DVR_OIS_CFG; +pub type LPNET_DVR_OIS_CFG = *mut tagNET_DVR_OIS_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MACFILTER_CFG { + pub dwSize: DWORD, + pub byEnabled: BYTE, + pub byPermissionType: BYTE, + pub byRes1: [BYTE; 2usize], + pub szMacAddress: [[BYTE; 6usize]; 48usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MACFILTER_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 424usize, + concat!("Size of: ", stringify!(tagNET_DVR_MACFILTER_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MACFILTER_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MACFILTER_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MACFILTER_CFG), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPermissionType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MACFILTER_CFG), + "::", + stringify!(byPermissionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MACFILTER_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szMacAddress) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MACFILTER_CFG), + "::", + stringify!(szMacAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MACFILTER_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MACFILTER_CFG = tagNET_DVR_MACFILTER_CFG; +pub type LPNET_DVR_MACFILTER_CFG = *mut tagNET_DVR_MACFILTER_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EAGLEFOCUSING_SENCE { + pub byRuleType: BYTE, + pub bySceneID: BYTE, + pub wRate: WORD, + pub struRegion: NET_VCA_POLYGON, + pub bySpotNum: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EAGLEFOCUSING_SENCE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 216usize, + concat!("Size of: ", stringify!(tagNET_DVR_EAGLEFOCUSING_SENCE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EAGLEFOCUSING_SENCE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EAGLEFOCUSING_SENCE), + "::", + stringify!(byRuleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySceneID) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EAGLEFOCUSING_SENCE), + "::", + stringify!(bySceneID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRate) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EAGLEFOCUSING_SENCE), + "::", + stringify!(wRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EAGLEFOCUSING_SENCE), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpotNum) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EAGLEFOCUSING_SENCE), + "::", + stringify!(bySpotNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 89usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EAGLEFOCUSING_SENCE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EAGLEFOCUSING_SENCE = tagNET_DVR_EAGLEFOCUSING_SENCE; +pub type LPNET_DVR_EAGLEFOCUSING_SENCE = *mut tagNET_DVR_EAGLEFOCUSING_SENCE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EAGLEFOCUSING_CALCFG { + pub dwSize: DWORD, + pub byEnabled: BYTE, + pub byRes1: [BYTE; 3usize], + pub struEagleFoucsing: [NET_DVR_EAGLEFOCUSING_SENCE; 16usize], + pub byRes: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EAGLEFOCUSING_CALCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 3976usize, + concat!("Size of: ", stringify!(tagNET_DVR_EAGLEFOCUSING_CALCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EAGLEFOCUSING_CALCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EAGLEFOCUSING_CALCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EAGLEFOCUSING_CALCFG), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EAGLEFOCUSING_CALCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEagleFoucsing) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EAGLEFOCUSING_CALCFG), + "::", + stringify!(struEagleFoucsing) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3464usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EAGLEFOCUSING_CALCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EAGLEFOCUSING_CALCFG = tagNET_DVR_EAGLEFOCUSING_CALCFG; +pub type LPNET_DVR_EAGLEFOCUSING_CALCFG = *mut tagNET_DVR_EAGLEFOCUSING_CALCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EAGLEFOCUSING_CTRL { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byHeightCompensationEnable: BYTE, + pub byHeightCompensationValue: BYTE, + pub byRes: [BYTE; 509usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EAGLEFOCUSING_CTRL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 516usize, + concat!("Size of: ", stringify!(tagNET_DVR_EAGLEFOCUSING_CTRL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EAGLEFOCUSING_CTRL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EAGLEFOCUSING_CTRL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EAGLEFOCUSING_CTRL), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHeightCompensationEnable) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EAGLEFOCUSING_CTRL), + "::", + stringify!(byHeightCompensationEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHeightCompensationValue) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EAGLEFOCUSING_CTRL), + "::", + stringify!(byHeightCompensationValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EAGLEFOCUSING_CTRL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EAGLEFOCUSING_CTRL = tagNET_DVR_EAGLEFOCUSING_CTRL; +pub type LPNET_DVR_EAGLEFOCUSING_CTRL = *mut tagNET_DVR_EAGLEFOCUSING_CTRL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SMARTCALIBRATION_REGION { + pub byRuleID: BYTE, + pub byMode: BYTE, + pub byStrategy: BYTE, + pub byPriority: BYTE, + pub struMaxTargetSize: NET_VCA_POLYGON, + pub struMinTargetSize: NET_VCA_POLYGON, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SMARTCALIBRATION_REGION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 172usize, + concat!("Size of: ", stringify!(tagNET_DVR_SMARTCALIBRATION_REGION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SMARTCALIBRATION_REGION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTCALIBRATION_REGION), + "::", + stringify!(byRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTCALIBRATION_REGION), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStrategy) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTCALIBRATION_REGION), + "::", + stringify!(byStrategy) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPriority) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTCALIBRATION_REGION), + "::", + stringify!(byPriority) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMaxTargetSize) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTCALIBRATION_REGION), + "::", + stringify!(struMaxTargetSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMinTargetSize) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTCALIBRATION_REGION), + "::", + stringify!(struMinTargetSize) + ) + ); +} +pub type NET_DVR_SMARTCALIBRATION_REGION = tagNET_DVR_SMARTCALIBRATION_REGION; +pub type LPNET_DVR_SMARTCALIBRATION_REGION = *mut tagNET_DVR_SMARTCALIBRATION_REGION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SMARTCALIBRATION_CFG { + pub dwSize: DWORD, + pub bySmartType: BYTE, + pub byRes: [BYTE; 3usize], + pub strRegion: [NET_DVR_SMARTCALIBRATION_REGION; 128usize], + pub byRes1: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SMARTCALIBRATION_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 22152usize, + concat!("Size of: ", stringify!(tagNET_DVR_SMARTCALIBRATION_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SMARTCALIBRATION_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTCALIBRATION_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySmartType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTCALIBRATION_CFG), + "::", + stringify!(bySmartType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTCALIBRATION_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strRegion) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTCALIBRATION_CFG), + "::", + stringify!(strRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 22024usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTCALIBRATION_CFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_SMARTCALIBRATION_CFG = tagNET_DVR_SMARTCALIBRATION_CFG; +pub type LPNET_DVR_SMARTCALIBRATION_CFG = *mut tagNET_DVR_SMARTCALIBRATION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SMARTCALIBRATION_COND { + pub dwSize: DWORD, + pub bySmartType: BYTE, + pub byRes: [BYTE; 3usize], + pub dwChannel: DWORD, + pub byRes1: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SMARTCALIBRATION_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 140usize, + concat!("Size of: ", stringify!(tagNET_DVR_SMARTCALIBRATION_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SMARTCALIBRATION_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTCALIBRATION_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySmartType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTCALIBRATION_COND), + "::", + stringify!(bySmartType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTCALIBRATION_COND), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTCALIBRATION_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTCALIBRATION_COND), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_SMARTCALIBRATION_COND = tagNET_DVR_SMARTCALIBRATION_COND; +pub type LPNET_DVR_SMARTCALIBRATION_COND = *mut tagNET_DVR_SMARTCALIBRATION_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SMARTCALIBRATION_REGION_CFG { + pub dwSize: DWORD, + pub strRegion: [NET_DVR_SMARTCALIBRATION_REGION; 128usize], + pub byRes1: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SMARTCALIBRATION_REGION_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 22148usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SMARTCALIBRATION_REGION_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SMARTCALIBRATION_REGION_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTCALIBRATION_REGION_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strRegion) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTCALIBRATION_REGION_CFG), + "::", + stringify!(strRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 22020usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTCALIBRATION_REGION_CFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_SMARTCALIBRATION_REGION_CFG = tagNET_DVR_SMARTCALIBRATION_REGION_CFG; +pub type LPNET_DVR_SMARTCALIBRATION_REGION_CFG = *mut tagNET_DVR_SMARTCALIBRATION_REGION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OSD_BATTERY_POWER_CFG { + pub dwSize: DWORD, + pub struOSDBatteryPower: NET_VCA_POINT, + pub byOSDBatteryPower: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OSD_BATTERY_POWER_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_OSD_BATTERY_POWER_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_OSD_BATTERY_POWER_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSD_BATTERY_POWER_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOSDBatteryPower) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSD_BATTERY_POWER_CFG), + "::", + stringify!(struOSDBatteryPower) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOSDBatteryPower) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSD_BATTERY_POWER_CFG), + "::", + stringify!(byOSDBatteryPower) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSD_BATTERY_POWER_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_OSD_BATTERY_POWER_CFG = tagNET_DVR_OSD_BATTERY_POWER_CFG; +pub type LPNET_DVR_OSD_BATTERY_POWER_CFG = *mut tagNET_DVR_OSD_BATTERY_POWER_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VALID_PERIOD_CFG { + pub byEnable: BYTE, + pub byBeginTimeFlag: BYTE, + pub byEnableTimeFlag: BYTE, + pub byTimeDurationNo: BYTE, + pub struBeginTime: NET_DVR_TIME_EX, + pub struEndTime: NET_DVR_TIME_EX, + pub byTimeType: BYTE, + pub byRes2: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VALID_PERIOD_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 52usize, + concat!("Size of: ", stringify!(tagNET_DVR_VALID_PERIOD_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VALID_PERIOD_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VALID_PERIOD_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBeginTimeFlag) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VALID_PERIOD_CFG), + "::", + stringify!(byBeginTimeFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableTimeFlag) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VALID_PERIOD_CFG), + "::", + stringify!(byEnableTimeFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeDurationNo) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VALID_PERIOD_CFG), + "::", + stringify!(byTimeDurationNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBeginTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VALID_PERIOD_CFG), + "::", + stringify!(struBeginTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VALID_PERIOD_CFG), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeType) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VALID_PERIOD_CFG), + "::", + stringify!(byTimeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VALID_PERIOD_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_VALID_PERIOD_CFG = tagNET_DVR_VALID_PERIOD_CFG; +pub type LPNET_DVR_VALID_PERIOD_CFG = *mut tagNET_DVR_VALID_PERIOD_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CARD_CFG { + pub dwSize: DWORD, + pub dwModifyParamType: DWORD, + pub byCardNo: [BYTE; 32usize], + pub byCardValid: BYTE, + pub byCardType: BYTE, + pub byLeaderCard: BYTE, + pub byRes1: BYTE, + pub dwDoorRight: DWORD, + pub struValid: NET_DVR_VALID_PERIOD_CFG, + pub dwBelongGroup: DWORD, + pub byCardPassword: [BYTE; 8usize], + pub byCardRightPlan: [[BYTE; 4usize]; 32usize], + pub dwMaxSwipeTime: DWORD, + pub dwSwipeTime: DWORD, + pub wRoomNumber: WORD, + pub wFloorNumber: SHORT, + pub byRes2: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CARD_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 272usize, + concat!("Size of: ", stringify!(tagNET_DVR_CARD_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CARD_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwModifyParamType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG), + "::", + stringify!(dwModifyParamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardValid) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG), + "::", + stringify!(byCardValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardType) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG), + "::", + stringify!(byCardType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLeaderCard) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG), + "::", + stringify!(byLeaderCard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 43usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDoorRight) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG), + "::", + stringify!(dwDoorRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struValid) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG), + "::", + stringify!(struValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBelongGroup) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG), + "::", + stringify!(dwBelongGroup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardPassword) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG), + "::", + stringify!(byCardPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardRightPlan) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG), + "::", + stringify!(byCardRightPlan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxSwipeTime) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG), + "::", + stringify!(dwMaxSwipeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSwipeTime) as usize - ptr as usize }, + 244usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG), + "::", + stringify!(dwSwipeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRoomNumber) as usize - ptr as usize }, + 248usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG), + "::", + stringify!(wRoomNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFloorNumber) as usize - ptr as usize }, + 250usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG), + "::", + stringify!(wFloorNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 252usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CARD_CFG = tagNET_DVR_CARD_CFG; +pub type LPNET_DVR_CARD_CFG = *mut tagNET_DVR_CARD_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_CARD_CFG_COND { + pub dwSize: DWORD, + pub dwCardNum: DWORD, + pub byCheckCardNo: BYTE, + pub byRes1: [BYTE; 3usize], + pub wLocalControllerID: WORD, + pub byRes2: [BYTE; 2usize], + pub dwLockID: DWORD, + pub byRes3: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_CARD_CFG_COND() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_CARD_CFG_COND> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_CARD_CFG_COND>(), + 40usize, + concat!("Size of: ", stringify!(_NET_DVR_CARD_CFG_COND)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_CARD_CFG_COND>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_CARD_CFG_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_CFG_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_CFG_COND), + "::", + stringify!(dwCardNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCheckCardNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_CFG_COND), + "::", + stringify!(byCheckCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_CFG_COND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalControllerID) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_CFG_COND), + "::", + stringify!(wLocalControllerID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_CFG_COND), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLockID) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_CFG_COND), + "::", + stringify!(dwLockID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_CFG_COND), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_CARD_CFG_COND = _NET_DVR_CARD_CFG_COND; +pub type LPNET_DVR_CARD_CFG_COND = *mut _NET_DVR_CARD_CFG_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_CARD_CFG_SEND_DATA { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub dwCardUserId: DWORD, + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_CARD_CFG_SEND_DATA() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_CARD_CFG_SEND_DATA> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_CARD_CFG_SEND_DATA>(), + 52usize, + concat!("Size of: ", stringify!(_NET_DVR_CARD_CFG_SEND_DATA)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_CARD_CFG_SEND_DATA>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_CARD_CFG_SEND_DATA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_CFG_SEND_DATA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_CFG_SEND_DATA), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardUserId) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_CFG_SEND_DATA), + "::", + stringify!(dwCardUserId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_CFG_SEND_DATA), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CARD_CFG_SEND_DATA = _NET_DVR_CARD_CFG_SEND_DATA; +pub type LPNET_DVR_CARD_CFG_SEND_DATA = *mut _NET_DVR_CARD_CFG_SEND_DATA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CARD_USER_INFO_CFG { + pub dwSize: DWORD, + pub sUsername: [BYTE; 32usize], + pub byAssociateNetUser: BYTE, + pub byRes2: [BYTE; 255usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CARD_USER_INFO_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 292usize, + concat!("Size of: ", stringify!(tagNET_DVR_CARD_USER_INFO_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CARD_USER_INFO_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_USER_INFO_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUsername) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_USER_INFO_CFG), + "::", + stringify!(sUsername) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAssociateNetUser) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_USER_INFO_CFG), + "::", + stringify!(byAssociateNetUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_USER_INFO_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CARD_USER_INFO_CFG = tagNET_DVR_CARD_USER_INFO_CFG; +pub type LPNET_DVR_CARD_USER_INFO_CFG = *mut tagNET_DVR_CARD_USER_INFO_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ACS_PARAM_TYPE { + pub dwSize: DWORD, + pub dwParamType: DWORD, + pub wLocalControllerID: WORD, + pub byRes: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ACS_PARAM_TYPE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_ACS_PARAM_TYPE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ACS_PARAM_TYPE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_PARAM_TYPE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwParamType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_PARAM_TYPE), + "::", + stringify!(dwParamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalControllerID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_PARAM_TYPE), + "::", + stringify!(wLocalControllerID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_PARAM_TYPE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ACS_PARAM_TYPE = tagNET_DVR_ACS_PARAM_TYPE; +pub type LPNET_DVR_ACS_PARAM_TYPE = *mut tagNET_DVR_ACS_PARAM_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIDEO_INTERCOM_IOIN_CFG { + pub dwSize: DWORD, + pub byIOUseType: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEO_INTERCOM_IOIN_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEO_INTERCOM_IOIN_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_IOIN_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_IOIN_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIOUseType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_IOIN_CFG), + "::", + stringify!(byIOUseType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_IOIN_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VIDEO_INTERCOM_IOIN_CFG = tagNET_DVR_VIDEO_INTERCOM_IOIN_CFG; +pub type LPNET_DVR_VIDEO_INTERCOM_IOIN_CFG = *mut tagNET_DVR_VIDEO_INTERCOM_IOIN_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIDEO_INTERCOM_IOOUT_CFG { + pub dwSize: DWORD, + pub byIOUseType: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEO_INTERCOM_IOOUT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEO_INTERCOM_IOOUT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_IOOUT_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_IOOUT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIOUseType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_IOOUT_CFG), + "::", + stringify!(byIOUseType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_IOOUT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VIDEO_INTERCOM_IOOUT_CFG = tagNET_DVR_VIDEO_INTERCOM_IOOUT_CFG; +pub type LPNET_DVR_VIDEO_INTERCOM_IOOUT_CFG = *mut tagNET_DVR_VIDEO_INTERCOM_IOOUT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ELEVATORCONTROL_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: BYTE, + pub byInterfaceType: BYTE, + pub byRS485Protocol: BYTE, + pub byNetworkType: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ELEVATORCONTROL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_ELEVATORCONTROL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ELEVATORCONTROL_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInterfaceType) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG), + "::", + stringify!(byInterfaceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRS485Protocol) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG), + "::", + stringify!(byRS485Protocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetworkType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG), + "::", + stringify!(byNetworkType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ELEVATORCONTROL_CFG = tagNET_DVR_ELEVATORCONTROL_CFG; +pub type LPNET_DVR_ELEVATORCONTROL_CFG = *mut tagNET_DVR_ELEVATORCONTROL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ELEVATORCONTROL_CFG_V40 { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: BYTE, + pub byInterfaceType: BYTE, + pub byRS485Protocol: BYTE, + pub byNetworkType: BYTE, + pub byRes2: BYTE, + pub wServerPort: WORD, + pub struServerIP: NET_DVR_IPADDR, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ELEVATORCONTROL_CFG_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 412usize, + concat!("Size of: ", stringify!(tagNET_DVR_ELEVATORCONTROL_CFG_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG_V40) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG_V40), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG_V40), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInterfaceType) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG_V40), + "::", + stringify!(byInterfaceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRS485Protocol) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG_V40), + "::", + stringify!(byRS485Protocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetworkType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG_V40), + "::", + stringify!(byNetworkType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG_V40), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wServerPort) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG_V40), + "::", + stringify!(wServerPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struServerIP) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG_V40), + "::", + stringify!(struServerIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ELEVATORCONTROL_CFG_V40 = tagNET_DVR_ELEVATORCONTROL_CFG_V40; +pub type LPNET_DVR_ELEVATORCONTROL_CFG_V40 = *mut tagNET_DVR_ELEVATORCONTROL_CFG_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ELEVATORCONTROL_CFG_V50 { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byNegativeFloor: BYTE, + pub byInterfaceType: BYTE, + pub byRS485Protocol: BYTE, + pub byNetworkType: BYTE, + pub byElevatorControlType: BYTE, + pub wServerPort: WORD, + pub struServerIP: NET_DVR_IPADDR, + pub sUserName: [BYTE; 64usize], + pub sPassword: [BYTE; 64usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ELEVATORCONTROL_CFG_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 540usize, + concat!("Size of: ", stringify!(tagNET_DVR_ELEVATORCONTROL_CFG_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG_V50), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNegativeFloor) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG_V50), + "::", + stringify!(byNegativeFloor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInterfaceType) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG_V50), + "::", + stringify!(byInterfaceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRS485Protocol) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG_V50), + "::", + stringify!(byRS485Protocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetworkType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG_V50), + "::", + stringify!(byNetworkType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byElevatorControlType) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG_V50), + "::", + stringify!(byElevatorControlType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wServerPort) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG_V50), + "::", + stringify!(wServerPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struServerIP) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG_V50), + "::", + stringify!(struServerIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG_V50), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG_V50), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 284usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ELEVATORCONTROL_CFG_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ELEVATORCONTROL_CFG_V50 = tagNET_DVR_ELEVATORCONTROL_CFG_V50; +pub type LPNET_DVR_ELEVATORCONTROL_CFG_V50 = *mut tagNET_DVR_ELEVATORCONTROL_CFG_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ROOM_CUSTOM_COND { + pub dwSize: DWORD, + pub dwRoomNumber: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ROOM_CUSTOM_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_ROOM_CUSTOM_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ROOM_CUSTOM_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROOM_CUSTOM_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRoomNumber) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROOM_CUSTOM_COND), + "::", + stringify!(dwRoomNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROOM_CUSTOM_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ROOM_CUSTOM_COND = tagNET_DVR_ROOM_CUSTOM_COND; +pub type LPNET_DVR_ROOM_CUSTOM_COND = *mut tagNET_DVR_ROOM_CUSTOM_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ROOM_CUSTOM_CFG { + pub dwSize: DWORD, + pub dwFormerRoomNo: DWORD, + pub dwCustomRoomNo: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ROOM_CUSTOM_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 140usize, + concat!("Size of: ", stringify!(tagNET_DVR_ROOM_CUSTOM_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ROOM_CUSTOM_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROOM_CUSTOM_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFormerRoomNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROOM_CUSTOM_CFG), + "::", + stringify!(dwFormerRoomNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCustomRoomNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROOM_CUSTOM_CFG), + "::", + stringify!(dwCustomRoomNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROOM_CUSTOM_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ROOM_CUSTOM_CFG = tagNET_DVR_ROOM_CUSTOM_CFG; +pub type LPNET_DVR_ROOM_CUSTOM_CFG = *mut tagNET_DVR_ROOM_CUSTOM_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ROOM_CUSTOM_STATUS { + pub dwSize: DWORD, + pub dwFormerRoomNo: DWORD, + pub byStatus: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ROOM_CUSTOM_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_ROOM_CUSTOM_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ROOM_CUSTOM_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROOM_CUSTOM_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFormerRoomNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROOM_CUSTOM_STATUS), + "::", + stringify!(dwFormerRoomNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROOM_CUSTOM_STATUS), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ROOM_CUSTOM_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ROOM_CUSTOM_STATUS = tagNET_DVR_ROOM_CUSTOM_STATUS; +pub type LPNET_DVR_ROOM_CUSTOM_STATUS = *mut tagNET_DVR_ROOM_CUSTOM_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIDEOINTERCOM_STREAM { + pub dwSize: DWORD, + pub byVisDevID: [BYTE; 16usize], + pub byDeviceName: [BYTE; 32usize], + pub bySourceType: BYTE, + pub byRes: [BYTE; 255usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEOINTERCOM_STREAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 308usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEOINTERCOM_STREAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VIDEOINTERCOM_STREAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOINTERCOM_STREAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVisDevID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOINTERCOM_STREAM), + "::", + stringify!(byVisDevID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceName) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOINTERCOM_STREAM), + "::", + stringify!(byDeviceName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySourceType) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOINTERCOM_STREAM), + "::", + stringify!(bySourceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 53usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOINTERCOM_STREAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VIDEOINTERCOM_STREAM = tagNET_DVR_VIDEOINTERCOM_STREAM; +pub type LPNET_DVR_VIDEOINTERCOM_STREAM = tagNET_DVR_VIDEOINTERCOM_STREAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DOOR_CFG { + pub dwSize: DWORD, + pub byDoorName: [BYTE; 32usize], + pub byMagneticType: BYTE, + pub byOpenButtonType: BYTE, + pub byOpenDuration: BYTE, + pub byAccessibleOpenDuration: BYTE, + pub byMagneticAlarmTimeout: BYTE, + pub byEnableDoorLock: BYTE, + pub byEnableLeaderCard: BYTE, + pub byLeaderCardMode: BYTE, + pub dwLeaderCardOpenDuration: DWORD, + pub byStressPassword: [BYTE; 8usize], + pub bySuperPassword: [BYTE; 8usize], + pub byUnlockPassword: [BYTE; 8usize], + pub byUseLocalController: BYTE, + pub byRes1: BYTE, + pub wLocalControllerID: WORD, + pub wLocalControllerDoorNumber: WORD, + pub wLocalControllerStatus: WORD, + pub byLockInputCheck: BYTE, + pub byLockInputType: BYTE, + pub byDoorTerminalMode: BYTE, + pub byOpenButton: BYTE, + pub byLadderControlDelayTime: BYTE, + pub byRes2: [BYTE; 43usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DOOR_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_DVR_DOOR_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DOOR_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDoorName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_CFG), + "::", + stringify!(byDoorName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMagneticType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_CFG), + "::", + stringify!(byMagneticType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOpenButtonType) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_CFG), + "::", + stringify!(byOpenButtonType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOpenDuration) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_CFG), + "::", + stringify!(byOpenDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAccessibleOpenDuration) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_CFG), + "::", + stringify!(byAccessibleOpenDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMagneticAlarmTimeout) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_CFG), + "::", + stringify!(byMagneticAlarmTimeout) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableDoorLock) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_CFG), + "::", + stringify!(byEnableDoorLock) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableLeaderCard) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_CFG), + "::", + stringify!(byEnableLeaderCard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLeaderCardMode) as usize - ptr as usize }, + 43usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_CFG), + "::", + stringify!(byLeaderCardMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLeaderCardOpenDuration) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_CFG), + "::", + stringify!(dwLeaderCardOpenDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStressPassword) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_CFG), + "::", + stringify!(byStressPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySuperPassword) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_CFG), + "::", + stringify!(bySuperPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUnlockPassword) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_CFG), + "::", + stringify!(byUnlockPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseLocalController) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_CFG), + "::", + stringify!(byUseLocalController) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 73usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalControllerID) as usize - ptr as usize }, + 74usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_CFG), + "::", + stringify!(wLocalControllerID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalControllerDoorNumber) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_CFG), + "::", + stringify!(wLocalControllerDoorNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalControllerStatus) as usize - ptr as usize }, + 78usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_CFG), + "::", + stringify!(wLocalControllerStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLockInputCheck) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_CFG), + "::", + stringify!(byLockInputCheck) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLockInputType) as usize - ptr as usize }, + 81usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_CFG), + "::", + stringify!(byLockInputType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDoorTerminalMode) as usize - ptr as usize }, + 82usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_CFG), + "::", + stringify!(byDoorTerminalMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOpenButton) as usize - ptr as usize }, + 83usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_CFG), + "::", + stringify!(byOpenButton) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLadderControlDelayTime) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_CFG), + "::", + stringify!(byLadderControlDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 85usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DOOR_CFG = tagNET_DVR_DOOR_CFG; +pub type LPNET_DVR_DOOR_CFG = *mut tagNET_DVR_DOOR_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIS_DEV_INFO { + pub dwSize: DWORD, + pub szDevNumber: [BYTE; 32usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIS_DEV_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 100usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIS_DEV_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VIS_DEV_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIS_DEV_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDevNumber) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIS_DEV_INFO), + "::", + stringify!(szDevNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIS_DEV_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VIS_DEV_INFO = tagNET_DVR_VIS_DEV_INFO; +pub type LPNET_DVR_VIS_DEV_INFO = *mut tagNET_DVR_VIS_DEV_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIS_REGISTER_INFO { + pub dwSize: DWORD, + pub dwID: DWORD, + pub szDevNumber: [BYTE; 32usize], + pub byMACAddr: [BYTE; 6usize], + pub byRes1: [BYTE; 2usize], + pub sSerialNumber: [BYTE; 48usize], + pub struDevIP: NET_DVR_IPADDR, + pub struRegisterTime: NET_DVR_TIME_EX, + pub byRegisterType: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIS_REGISTER_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 376usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIS_REGISTER_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VIS_REGISTER_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIS_REGISTER_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIS_REGISTER_INFO), + "::", + stringify!(dwID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDevNumber) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIS_REGISTER_INFO), + "::", + stringify!(szDevNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMACAddr) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIS_REGISTER_INFO), + "::", + stringify!(byMACAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 46usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIS_REGISTER_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSerialNumber) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIS_REGISTER_INFO), + "::", + stringify!(sSerialNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevIP) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIS_REGISTER_INFO), + "::", + stringify!(struDevIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegisterTime) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIS_REGISTER_INFO), + "::", + stringify!(struRegisterTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRegisterType) as usize - ptr as usize }, + 248usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIS_REGISTER_INFO), + "::", + stringify!(byRegisterType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 249usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIS_REGISTER_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VIS_REGISTER_INFO = tagNET_DVR_VIS_REGISTER_INFO; +pub type LPNET_DVR_VIS_REGISTER_INFO = *mut tagNET_DVR_VIS_REGISTER_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CALLER_INFO { + pub dwSize: DWORD, + pub wBuildingNo: WORD, + pub wFloorNo: SHORT, + pub byZoneNo: BYTE, + pub byUnitNo: BYTE, + pub byDevNo: BYTE, + pub byDevType: BYTE, + pub byLockNum: BYTE, + pub byHighDevNo: BYTE, + pub byRes1: [BYTE; 2usize], + pub byVoipNo: [BYTE; 16usize], + pub byRes: [BYTE; 80usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CALLER_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 112usize, + concat!("Size of: ", stringify!(tagNET_DVR_CALLER_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CALLER_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALLER_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBuildingNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALLER_INFO), + "::", + stringify!(wBuildingNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFloorNo) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALLER_INFO), + "::", + stringify!(wFloorNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZoneNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALLER_INFO), + "::", + stringify!(byZoneNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUnitNo) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALLER_INFO), + "::", + stringify!(byUnitNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevNo) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALLER_INFO), + "::", + stringify!(byDevNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevType) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALLER_INFO), + "::", + stringify!(byDevType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLockNum) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALLER_INFO), + "::", + stringify!(byLockNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHighDevNo) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALLER_INFO), + "::", + stringify!(byHighDevNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALLER_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVoipNo) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALLER_INFO), + "::", + stringify!(byVoipNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALLER_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CALLER_INFO = tagNET_DVR_CALLER_INFO; +pub type LPNET_DVR_CALLER_INFO = *mut tagNET_DVR_CALLER_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CALL_STATUS { + pub dwSize: DWORD, + pub byCallStatus: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CALL_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_CALL_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CALL_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCallStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_STATUS), + "::", + stringify!(byCallStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CALL_STATUS = tagNET_DVR_CALL_STATUS; +pub type LPNET_DVR_CALL_STATUS = *mut tagNET_DVR_CALL_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SERVER_DEVICE_CFG { + pub byDeviceName: [BYTE; 32usize], + pub byDeviceType: BYTE, + #[doc = "�豸���\u{363}�1-�ſڻ���2-��������3-���ڻ�"] + pub byDeviceID: BYTE, + pub byLockNum: BYTE, + pub byRes: [BYTE; 5usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SERVER_DEVICE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_SERVER_DEVICE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SERVER_DEVICE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_DEVICE_CFG), + "::", + stringify!(byDeviceName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceType) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_DEVICE_CFG), + "::", + stringify!(byDeviceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_DEVICE_CFG), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLockNum) as usize - ptr as usize }, + 34usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_DEVICE_CFG), + "::", + stringify!(byLockNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 35usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_DEVICE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SERVER_DEVICE_CFG = tagNET_DVR_SERVER_DEVICE_CFG; +pub type LPNET_DVR_SERVER_DEVICE_CFG = *mut tagNET_DVR_SERVER_DEVICE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SERVER_DEVICE_INFO { + pub dwSize: DWORD, + pub dwDeviceNum: DWORD, + pub struDeviceCfg: [NET_DVR_SERVER_DEVICE_CFG; 16usize], + pub byRes: [BYTE; 200usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SERVER_DEVICE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 848usize, + concat!("Size of: ", stringify!(tagNET_DVR_SERVER_DEVICE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SERVER_DEVICE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_DEVICE_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeviceNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_DEVICE_INFO), + "::", + stringify!(dwDeviceNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDeviceCfg) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_DEVICE_INFO), + "::", + stringify!(struDeviceCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 648usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SERVER_DEVICE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SERVER_DEVICE_INFO = tagNET_DVR_SERVER_DEVICE_INFO; +pub type LPNET_DVR_SERVER_DEVICE_INFO = *mut tagNET_DVR_SERVER_DEVICE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIDEO_CALL_PARAM { + pub dwSize: DWORD, + pub dwCmdType: DWORD, + pub wPeriod: WORD, + pub wBuildingNumber: WORD, + pub wUnitNumber: WORD, + pub wFloorNumber: SHORT, + pub wRoomNumber: WORD, + pub wDevIndex: WORD, + pub byUnitType: BYTE, + pub byRes: [BYTE; 115usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEO_CALL_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEO_CALL_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VIDEO_CALL_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_CALL_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCmdType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_CALL_PARAM), + "::", + stringify!(dwCmdType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPeriod) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_CALL_PARAM), + "::", + stringify!(wPeriod) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBuildingNumber) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_CALL_PARAM), + "::", + stringify!(wBuildingNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wUnitNumber) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_CALL_PARAM), + "::", + stringify!(wUnitNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFloorNumber) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_CALL_PARAM), + "::", + stringify!(wFloorNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRoomNumber) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_CALL_PARAM), + "::", + stringify!(wRoomNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevIndex) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_CALL_PARAM), + "::", + stringify!(wDevIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUnitType) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_CALL_PARAM), + "::", + stringify!(byUnitType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_CALL_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VIDEO_CALL_PARAM = tagNET_DVR_VIDEO_CALL_PARAM; +pub type LPNET_DVR_VIDEO_CALL_PARAM = *mut tagNET_DVR_VIDEO_CALL_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEV_IP_INFO { + pub byUserName: [BYTE; 32usize], + pub byPassWord: [BYTE; 16usize], + pub struIPAddr: NET_DVR_IPADDR, + pub wPort: WORD, + pub byRes: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEV_IP_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 218usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEV_IP_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEV_IP_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUserName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_IP_INFO), + "::", + stringify!(byUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPassWord) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_IP_INFO), + "::", + stringify!(byPassWord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPAddr) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_IP_INFO), + "::", + stringify!(struIPAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_IP_INFO), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 194usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_IP_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DEV_IP_INFO = tagNET_DVR_DEV_IP_INFO; +pub type LPNET_DVR_DEV_IP_INFO = *mut tagNET_DVR_DEV_IP_INFO; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_SCREEN_BASE_INFO { + pub byScreenAddress: [BYTE; 16usize], + pub struIPInfo: NET_DVR_DEV_IP_INFO, + pub byRes: [BYTE; 100usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEN_BASE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 218usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEN_BASE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREEN_BASE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScreenAddress) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_BASE_INFO), + "::", + stringify!(byScreenAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_BASE_INFO), + "::", + stringify!(struIPInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_BASE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCREEN_BASE_INFO = tagNET_DVR_SCREEN_BASE_INFO; +pub type LPNET_DVR_SCREEN_BASE_INFO = *mut tagNET_DVR_SCREEN_BASE_INFO; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SCREEN_INDEX_CFG { + pub dwSize: DWORD, + pub byEnbale: BYTE, + pub byDevAddType: BYTE, + pub byRes1: [BYTE; 2usize], + pub struScreenBaseInfo: NET_DVR_SCREEN_BASE_INFO, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEN_INDEX_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEN_INDEX_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREEN_INDEX_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_INDEX_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnbale) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_INDEX_CFG), + "::", + stringify!(byEnbale) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevAddType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_INDEX_CFG), + "::", + stringify!(byDevAddType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_INDEX_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struScreenBaseInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_INDEX_CFG), + "::", + stringify!(struScreenBaseInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 226usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_INDEX_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCREEN_INDEX_CFG = tagNET_DVR_SCREEN_INDEX_CFG; +pub type LPNET_DVR_SCREEN_INDEX_CFG = *mut tagNET_DVR_SCREEN_INDEX_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SIMULATE_REMOTE_CTRL { + pub byControlType: BYTE, + pub byControlParam: BYTE, + pub byRes: [BYTE; 14usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SIMULATE_REMOTE_CTRL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_SIMULATE_REMOTE_CTRL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SIMULATE_REMOTE_CTRL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byControlType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIMULATE_REMOTE_CTRL), + "::", + stringify!(byControlType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byControlParam) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIMULATE_REMOTE_CTRL), + "::", + stringify!(byControlParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIMULATE_REMOTE_CTRL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SIMULATE_REMOTE_CTRL = tagNET_DVR_SIMULATE_REMOTE_CTRL; +pub type LPNET_DVR_SIMULATE_REMOTE_CTRL = *mut tagNET_DVR_SIMULATE_REMOTE_CTRL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCREEN_WALL_CTRL { + pub byEnable: BYTE, + pub byRes: [BYTE; 15usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEN_WALL_CTRL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEN_WALL_CTRL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREEN_WALL_CTRL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_WALL_CTRL), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_WALL_CTRL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCREEN_WALL_CTRL = tagNET_DVR_SCREEN_WALL_CTRL; +pub type LPNET_DVR_SCREEN_WALL_CTRL = *mut tagNET_DVR_SCREEN_WALL_CTRL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AREA_ZOOM_CFG { + pub byCmd: BYTE, + pub byRes: [BYTE; 3usize], + pub struArea: NET_DVR_RECTCFG, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AREA_ZOOM_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_AREA_ZOOM_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AREA_ZOOM_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCmd) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AREA_ZOOM_CFG), + "::", + stringify!(byCmd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AREA_ZOOM_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struArea) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AREA_ZOOM_CFG), + "::", + stringify!(struArea) + ) + ); +} +pub type NET_DVR_AREA_ZOOM_CFG = tagNET_DVR_AREA_ZOOM_CFG; +pub type LPNET_DVR_AREA_ZOOM_CFG = *mut tagNET_DVR_AREA_ZOOM_CFG; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_SCREEN_CONTROL_PARAM { + pub struInputCtrl: NET_DVR_INPUT_INTERFACE_CTRL, + pub struDisplayCtrl: NET_DVR_DISPLAY_COLOR_CTRL, + pub struPositionCtrl: NET_DVR_DISPLAY_POSITION_CTRL, + pub struSimulateRemoteCrtl: NET_DVR_SIMULATE_REMOTE_CTRL, + pub struScreenWallCtrl: NET_DVR_SCREEN_WALL_CTRL, + pub struZoomArea: NET_DVR_AREA_ZOOM_CFG, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEN_CONTROL_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEN_CONTROL_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREEN_CONTROL_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInputCtrl) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONTROL_PARAM), + "::", + stringify!(struInputCtrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDisplayCtrl) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONTROL_PARAM), + "::", + stringify!(struDisplayCtrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPositionCtrl) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONTROL_PARAM), + "::", + stringify!(struPositionCtrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSimulateRemoteCrtl) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONTROL_PARAM), + "::", + stringify!(struSimulateRemoteCrtl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struScreenWallCtrl) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONTROL_PARAM), + "::", + stringify!(struScreenWallCtrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struZoomArea) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONTROL_PARAM), + "::", + stringify!(struZoomArea) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONTROL_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCREEN_CONTROL_PARAM = tagNET_DVR_SCREEN_CONTROL_PARAM; +pub type LPNET_DVR_SCREEN_CONTROL_PARAM = *mut tagNET_DVR_SCREEN_CONTROL_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SCREEN_CONTROL { + pub dwSize: DWORD, + pub dwCommand: DWORD, + pub byProtocol: BYTE, + pub byRes1: [BYTE; 3usize], + pub struControlParam: NET_DVR_SCREEN_CONTROL_PARAM, + pub byRes2: [BYTE; 52usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEN_CONTROL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEN_CONTROL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREEN_CONTROL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONTROL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCommand) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONTROL), + "::", + stringify!(dwCommand) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProtocol) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONTROL), + "::", + stringify!(byProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONTROL), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struControlParam) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONTROL), + "::", + stringify!(struControlParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONTROL), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SCREEN_CONTROL = tagNET_DVR_SCREEN_CONTROL; +pub type LPNET_DVR_SCREEN_CONTROL = *mut tagNET_DVR_SCREEN_CONTROL; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SCREEN_CONTROL_V41 { + pub dwSize: DWORD, + pub bySerialNo: BYTE, + pub byRes: [BYTE; 2usize], + pub byProtocol: BYTE, + pub dwCommand: DWORD, + pub struControlParam: NET_DVR_SCREEN_CONTROL_PARAM, + pub byWallNo: BYTE, + pub byDevNo: BYTE, + pub bySubboardNo: BYTE, + pub byRes1: BYTE, + pub struRect: NET_DVR_RECTCFG_EX, + pub byRes2: [BYTE; 28usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEN_CONTROL_V41() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEN_CONTROL_V41)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREEN_CONTROL_V41)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONTROL_V41), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySerialNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONTROL_V41), + "::", + stringify!(bySerialNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONTROL_V41), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProtocol) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONTROL_V41), + "::", + stringify!(byProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCommand) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONTROL_V41), + "::", + stringify!(dwCommand) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struControlParam) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONTROL_V41), + "::", + stringify!(struControlParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWallNo) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONTROL_V41), + "::", + stringify!(byWallNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevNo) as usize - ptr as usize }, + 29usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONTROL_V41), + "::", + stringify!(byDevNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubboardNo) as usize - ptr as usize }, + 30usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONTROL_V41), + "::", + stringify!(bySubboardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 31usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONTROL_V41), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRect) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONTROL_V41), + "::", + stringify!(struRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONTROL_V41), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SCREEN_CONTROL_V41 = tagNET_DVR_SCREEN_CONTROL_V41; +pub type LPNET_DVR_SCREEN_CONTROL_V41 = *mut tagNET_DVR_SCREEN_CONTROL_V41; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MSC_SPLICE_CFG { + pub dwSize: DWORD, + pub bySpliceNo: BYTE, + pub byWallNo: BYTE, + pub byEnable: BYTE, + pub byRes1: [BYTE; 1usize], + pub struRectCfg: NET_DVR_RECTCFG_EX, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MSC_SPLICE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 60usize, + concat!("Size of: ", stringify!(tagNET_DVR_MSC_SPLICE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MSC_SPLICE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SPLICE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpliceNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SPLICE_CFG), + "::", + stringify!(bySpliceNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWallNo) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SPLICE_CFG), + "::", + stringify!(byWallNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SPLICE_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SPLICE_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRectCfg) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SPLICE_CFG), + "::", + stringify!(struRectCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SPLICE_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_MSC_SPLICE_CFG = tagNET_DVR_MSC_SPLICE_CFG; +pub type LPNET_DVR_MSC_SPLICE_CFG = *mut tagNET_DVR_MSC_SPLICE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MSC_SCREEN_INTERFACE_CFG { + pub dwSize: DWORD, + pub byInterfaceType: BYTE, + pub byNoSignalPic: BYTE, + pub byRes: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MSC_SCREEN_INTERFACE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_MSC_SCREEN_INTERFACE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MSC_SCREEN_INTERFACE_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_INTERFACE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInterfaceType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_INTERFACE_CFG), + "::", + stringify!(byInterfaceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNoSignalPic) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_INTERFACE_CFG), + "::", + stringify!(byNoSignalPic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_INTERFACE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MSC_SCREEN_INTERFACE_CFG = tagNET_DVR_MSC_SCREEN_INTERFACE_CFG; +pub type LPNET_DVR_MSC_SCREEN_INTERFACE_CFG = *mut tagNET_DVR_MSC_SCREEN_INTERFACE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MSC_SCREEN_BACKLIGHT_CFG { + pub dwSize: DWORD, + pub byBacklight: BYTE, + pub byRes: [BYTE; 15usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MSC_SCREEN_BACKLIGHT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_MSC_SCREEN_BACKLIGHT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MSC_SCREEN_BACKLIGHT_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_BACKLIGHT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBacklight) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_BACKLIGHT_CFG), + "::", + stringify!(byBacklight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_BACKLIGHT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MSC_SCREEN_BACKLIGHT_CFG = tagNET_DVR_MSC_SCREEN_BACKLIGHT_CFG; +pub type LPNET_DVR_MSC_SCREEN_BACKLIGHT_CFG = *mut tagNET_DVR_MSC_SCREEN_BACKLIGHT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MSC_SCREEN_PIP_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub bySubWindowSource: BYTE, + pub bySubWindowBorderColor: BYTE, + pub byRes1: BYTE, + pub struPosition: NET_DVR_RECTCFG_EX, + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MSC_SCREEN_PIP_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_MSC_SCREEN_PIP_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MSC_SCREEN_PIP_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PIP_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PIP_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubWindowSource) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PIP_CFG), + "::", + stringify!(bySubWindowSource) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubWindowBorderColor) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PIP_CFG), + "::", + stringify!(bySubWindowBorderColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PIP_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPosition) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PIP_CFG), + "::", + stringify!(struPosition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PIP_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_MSC_SCREEN_PIP_CFG = tagNET_DVR_MSC_SCREEN_PIP_CFG; +pub type LPNET_DVR_MSC_SCREEN_PIP_CFG = *mut tagNET_DVR_MSC_SCREEN_PIP_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCREEN_WORK_STATE { + pub dwSize: DWORD, + pub byFanStatus: BYTE, + pub byFanExceptionStatus: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwWorkingHours: DWORD, + pub byVersion: [BYTE; 32usize], + pub iTemperature: ::std::os::raw::c_int, + pub byTempState: BYTE, + pub byRes: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEN_WORK_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEN_WORK_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREEN_WORK_STATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_WORK_STATE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFanStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_WORK_STATE), + "::", + stringify!(byFanStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFanExceptionStatus) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_WORK_STATE), + "::", + stringify!(byFanExceptionStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_WORK_STATE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWorkingHours) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_WORK_STATE), + "::", + stringify!(dwWorkingHours) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVersion) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_WORK_STATE), + "::", + stringify!(byVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTemperature) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_WORK_STATE), + "::", + stringify!(iTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTempState) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_WORK_STATE), + "::", + stringify!(byTempState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 49usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_WORK_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCREEN_WORK_STATE = tagNET_DVR_SCREEN_WORK_STATE; +pub type LPNET_DVR_SCREEN_WORK_STATE = *mut tagNET_DVR_SCREEN_WORK_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BOOT_LOGO_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BOOT_LOGO_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_BOOT_LOGO_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BOOT_LOGO_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BOOT_LOGO_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BOOT_LOGO_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BOOT_LOGO_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BOOT_LOGO_CFG = tagNET_DVR_BOOT_LOGO_CFG; +pub type LPNET_DVR_BOOT_LOGO_CFG = *mut tagNET_DVR_BOOT_LOGO_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LCD_AUDIO_CFG { + pub dwSize: DWORD, + pub byMute: BYTE, + pub byVolume: BYTE, + pub byBalance: ::std::os::raw::c_char, + pub byRes: [BYTE; 33usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LCD_AUDIO_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_LCD_AUDIO_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LCD_AUDIO_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LCD_AUDIO_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMute) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LCD_AUDIO_CFG), + "::", + stringify!(byMute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVolume) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LCD_AUDIO_CFG), + "::", + stringify!(byVolume) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBalance) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LCD_AUDIO_CFG), + "::", + stringify!(byBalance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LCD_AUDIO_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LCD_AUDIO_CFG = tagNET_DVR_LCD_AUDIO_CFG; +pub type LPNET_DVR_LCD_AUDIO_CFG = *mut tagNET_DVR_LCD_AUDIO_CFG; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_MSC_SCREEN_PARAM { + pub struInterfaceCfg: NET_DVR_MSC_SCREEN_INTERFACE_CFG, + pub struFanWorkMode: NET_DVR_SCREEN_FAN_WORK_MODE_CFG, + pub struVgaCfg: NET_DVR_SCREEN_VGA_CFG, + pub struMenuCfg: NET_DVR_SCREEN_MENU_CFG, + pub struOutEffectCfg: NET_DVR_VIDEO_OUT_CFG, + pub struColorTemperatureCfg: NET_DVR_COLOR_TEMPERATURE_CFG, + pub struAdcCfg: NET_DVR_ADC_CFG, + pub struScreenEdgeCfg: NET_DVR_SCREEN_EDGE_CFG, + pub struBacklight: NET_DVR_MSC_SCREEN_BACKLIGHT_CFG, + pub struPicInPicCfg: NET_DVR_MSC_SCREEN_PIP_CFG, + pub struDefog: NET_DVR_DEFOG_LCD, + pub struWorkState: NET_DVR_SCREEN_WORK_STATE, + pub struBootLogoCfg: NET_DVR_BOOT_LOGO_CFG, + pub struAudioCfg: NET_DVR_LCD_AUDIO_CFG, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MSC_SCREEN_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_MSC_SCREEN_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MSC_SCREEN_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInterfaceCfg) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM), + "::", + stringify!(struInterfaceCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFanWorkMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM), + "::", + stringify!(struFanWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVgaCfg) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM), + "::", + stringify!(struVgaCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMenuCfg) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM), + "::", + stringify!(struMenuCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOutEffectCfg) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM), + "::", + stringify!(struOutEffectCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struColorTemperatureCfg) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM), + "::", + stringify!(struColorTemperatureCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAdcCfg) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM), + "::", + stringify!(struAdcCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struScreenEdgeCfg) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM), + "::", + stringify!(struScreenEdgeCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBacklight) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM), + "::", + stringify!(struBacklight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPicInPicCfg) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM), + "::", + stringify!(struPicInPicCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDefog) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM), + "::", + stringify!(struDefog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWorkState) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM), + "::", + stringify!(struWorkState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBootLogoCfg) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM), + "::", + stringify!(struBootLogoCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAudioCfg) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM), + "::", + stringify!(struAudioCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MSC_SCREEN_PARAM = tagNET_DVR_MSC_SCREEN_PARAM; +pub type LPNET_DVR_MSC_SCREEN_PARAM = *mut tagNET_DVR_MSC_SCREEN_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_MSC_SCREEN_PARAM_CFG { + pub dwSize: DWORD, + pub byParamType: BYTE, + pub byRes1: [BYTE; 3usize], + pub struParam: NET_DVR_MSC_SCREEN_PARAM, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MSC_SCREEN_PARAM_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 296usize, + concat!("Size of: ", stringify!(tagNET_DVR_MSC_SCREEN_PARAM_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MSC_SCREEN_PARAM_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParamType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM_CFG), + "::", + stringify!(byParamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM_CFG), + "::", + stringify!(struParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_MSC_SCREEN_PARAM_CFG = tagNET_DVR_MSC_SCREEN_PARAM_CFG; +pub type LPNET_DVR_MSC_SCREEN_PARAM_CFG = *mut tagNET_DVR_MSC_SCREEN_PARAM_CFG; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_MSC_SCREEN_REMOTE_CFG { + pub dwSize: DWORD, + pub byWallNo: BYTE, + pub byRes1: [BYTE; 3usize], + pub struRectCfg: NET_DVR_RECTCFG_EX, + pub struScreenParam: NET_DVR_MSC_SCREEN_PARAM_CFG, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MSC_SCREEN_REMOTE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 356usize, + concat!("Size of: ", stringify!(tagNET_DVR_MSC_SCREEN_REMOTE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MSC_SCREEN_REMOTE_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_REMOTE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWallNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_REMOTE_CFG), + "::", + stringify!(byWallNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_REMOTE_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRectCfg) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_REMOTE_CFG), + "::", + stringify!(struRectCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struScreenParam) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_REMOTE_CFG), + "::", + stringify!(struScreenParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 324usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_REMOTE_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_MSC_SCREEN_REMOTE_CFG = tagNET_DVR_MSC_SCREEN_REMOTE_CFG; +pub type LPNET_DVR_MSC_SCREEN_REMOTE_CFG = *mut tagNET_DVR_MSC_SCREEN_REMOTE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MSC_SCREEN_PARAM_COND { + pub dwSize: DWORD, + pub byWallNo: BYTE, + pub byParamType: BYTE, + pub byRes1: [BYTE; 2usize], + pub struRectCfg: NET_DVR_RECTCFG_EX, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MSC_SCREEN_PARAM_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 60usize, + concat!("Size of: ", stringify!(tagNET_DVR_MSC_SCREEN_PARAM_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWallNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM_COND), + "::", + stringify!(byWallNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParamType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM_COND), + "::", + stringify!(byParamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM_COND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRectCfg) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM_COND), + "::", + stringify!(struRectCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MSC_SCREEN_PARAM_COND), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_MSC_SCREEN_PARAM_COND = tagNET_DVR_MSC_SCREEN_PARAM_COND; +pub type LPNET_DVR_MSC_SCREEN_PARAM_COND = *mut tagNET_DVR_MSC_SCREEN_PARAM_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SWITCH_DAY_TIME { + pub byEnable: BYTE, + pub bySwitchType: BYTE, + pub byRes1: [BYTE; 2usize], + pub struTimePoint: NET_DVR_DAYTIME, + pub byRes2: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SWITCH_DAY_TIME() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_SWITCH_DAY_TIME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SWITCH_DAY_TIME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_DAY_TIME), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySwitchType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_DAY_TIME), + "::", + stringify!(bySwitchType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_DAY_TIME), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTimePoint) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_DAY_TIME), + "::", + stringify!(struTimePoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_DAY_TIME), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SWITCH_DAY_TIME = tagNET_DVR_SWITCH_DAY_TIME; +pub type LPNET_DVR_SWITCH_DAY_TIME = *mut tagNET_DVR_SWITCH_DAY_TIME; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SWITCH_TIME_POINT { + pub byEnable: BYTE, + pub bySwitchType: BYTE, + pub byRes1: [BYTE; 2usize], + pub struTimePoint: NET_DVR_SYSTEM_TIME, + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SWITCH_TIME_POINT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_SWITCH_TIME_POINT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SWITCH_TIME_POINT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_TIME_POINT), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySwitchType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_TIME_POINT), + "::", + stringify!(bySwitchType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_TIME_POINT), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTimePoint) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_TIME_POINT), + "::", + stringify!(struTimePoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_TIME_POINT), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SWITCH_TIME_POINT = tagNET_DVR_SWITCH_TIME_POINT; +pub type LPNET_DVR_SWITCH_TIME_POINT = *mut tagNET_DVR_SWITCH_TIME_POINT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TIME_SWITCH_CFG { + pub dwSize: DWORD, + pub struSwitchDayTime: [[NET_DVR_SWITCH_DAY_TIME; 8usize]; 7usize], + pub struSwitchTimePoint: [NET_DVR_SWITCH_TIME_POINT; 16usize], + pub byRes1: [BYTE; 3usize], + pub byEnable: BYTE, + pub byRes: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TIME_SWITCH_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1764usize, + concat!("Size of: ", stringify!(tagNET_DVR_TIME_SWITCH_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TIME_SWITCH_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SWITCH_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSwitchDayTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SWITCH_CFG), + "::", + stringify!(struSwitchDayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSwitchTimePoint) as usize - ptr as usize }, + 1124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SWITCH_CFG), + "::", + stringify!(struSwitchTimePoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1700usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SWITCH_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 1703usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SWITCH_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1704usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SWITCH_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TIME_SWITCH_CFG = tagNET_DVR_TIME_SWITCH_CFG; +pub type LPNET_DVR_TIME_SWITCH_CFG = *mut tagNET_DVR_TIME_SWITCH_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIDEO_WALL_AREA { + pub dwSize: DWORD, + pub byWallNo: BYTE, + pub byRes1: [BYTE; 3usize], + pub struRect: NET_DVR_RECTCFG_EX, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEO_WALL_AREA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 60usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEO_WALL_AREA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VIDEO_WALL_AREA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_WALL_AREA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWallNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_WALL_AREA), + "::", + stringify!(byWallNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_WALL_AREA), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRect) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_WALL_AREA), + "::", + stringify!(struRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_WALL_AREA), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_VIDEO_WALL_AREA = tagNET_DVR_VIDEO_WALL_AREA; +pub type LPNET_DVR_VIDEO_WALL_AREA = *mut tagNET_DVR_VIDEO_WALL_AREA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DELAY_TIME { + pub dwSize: DWORD, + pub dwDelayTime: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DELAY_TIME() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_DELAY_TIME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DELAY_TIME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DELAY_TIME), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDelayTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DELAY_TIME), + "::", + stringify!(dwDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DELAY_TIME), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DELAY_TIME = tagNET_DVR_DELAY_TIME; +pub type LPNET_DVR_DELAY_TIME = *mut tagNET_DVR_DELAY_TIME; +pub const _BV_CALIBRATION_TYPE_ENUM__ENUM_BV_CALIBRATION_NONE: _BV_CALIBRATION_TYPE_ENUM_ = 0; +pub const _BV_CALIBRATION_TYPE_ENUM__ENUM_BV_CALIBRATION_DIRECT: _BV_CALIBRATION_TYPE_ENUM_ = 1; +pub const _BV_CALIBRATION_TYPE_ENUM__ENUM_BV_CALIBRATION_SAMPLE: _BV_CALIBRATION_TYPE_ENUM_ = 2; +pub type _BV_CALIBRATION_TYPE_ENUM_ = ::std::os::raw::c_uint; +pub use self::_BV_CALIBRATION_TYPE_ENUM_ as BV_CALIBRATION_TYPE_ENUM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BV_SAMPLE_CALIB_POINT { + pub byCalibPtID: BYTE, + pub byRes1: [BYTE; 3usize], + pub struPoint: NET_VCA_POINT, + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BV_SAMPLE_CALIB_POINT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28usize, + concat!("Size of: ", stringify!(tagNET_DVR_BV_SAMPLE_CALIB_POINT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_POINT) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCalibPtID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_POINT), + "::", + stringify!(byCalibPtID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_POINT), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPoint) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_POINT), + "::", + stringify!(struPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_POINT), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_BV_SAMPLE_CALIB_POINT = tagNET_DVR_BV_SAMPLE_CALIB_POINT; +pub type LPET_DVR_BV_SAMPLE_CALIB_POINT = *mut tagNET_DVR_BV_SAMPLE_CALIB_POINT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BV_SAMPLE_CALIB_BEGIN_PARAM { + pub dwCameraHeight: DWORD, + pub dwHumanHeight: DWORD, + pub byRes: [BYTE; 248usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BV_SAMPLE_CALIB_BEGIN_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_BEGIN_PARAM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_BEGIN_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCameraHeight) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_BEGIN_PARAM), + "::", + stringify!(dwCameraHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHumanHeight) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_BEGIN_PARAM), + "::", + stringify!(dwHumanHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_BEGIN_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BV_SAMPLE_CALIB_BEGIN_PARAM = tagNET_DVR_BV_SAMPLE_CALIB_BEGIN_PARAM; +pub type LPNET_DVR_BV_SAMPLE_CALIB_BEGIN_PARAM = *mut tagNET_DVR_BV_SAMPLE_CALIB_BEGIN_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BV_SAMPLE_CALIB_SET_PARAM { + pub struCalibPoint: NET_DVR_BV_SAMPLE_CALIB_POINT, + pub byRes: [BYTE; 228usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BV_SAMPLE_CALIB_SET_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_SET_PARAM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_SET_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCalibPoint) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_SET_PARAM), + "::", + stringify!(struCalibPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_SET_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BV_SAMPLE_CALIB_SET_PARAM = tagNET_DVR_BV_SAMPLE_CALIB_SET_PARAM; +pub type LPNET_DVR_BV_SAMPLE_CALIB_SET_PARAM = *mut tagNET_DVR_BV_SAMPLE_CALIB_SET_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BV_SAMPLE_CALIB_END_PARAM { + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BV_SAMPLE_CALIB_END_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_END_PARAM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_END_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_END_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BV_SAMPLE_CALIB_END_PARAM = tagNET_DVR_BV_SAMPLE_CALIB_END_PARAM; +pub type LPNET_DVR_BV_SAMPLE_CALIB_END_PARAM = *mut tagNET_DVR_BV_SAMPLE_CALIB_END_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_BV_SAMPLE_CALIB_PARAM_UNION { + pub byRes: [BYTE; 256usize], + pub struCalibBegin: NET_DVR_BV_SAMPLE_CALIB_BEGIN_PARAM, + pub struCalibSet: NET_DVR_BV_SAMPLE_CALIB_SET_PARAM, + pub struCalibEnd: NET_DVR_BV_SAMPLE_CALIB_END_PARAM, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BV_SAMPLE_CALIB_PARAM_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_PARAM_UNION) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_PARAM_UNION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_PARAM_UNION), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCalibBegin) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_PARAM_UNION), + "::", + stringify!(struCalibBegin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCalibSet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_PARAM_UNION), + "::", + stringify!(struCalibSet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCalibEnd) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_PARAM_UNION), + "::", + stringify!(struCalibEnd) + ) + ); +} +pub type NET_DVR_BV_SAMPLE_CALIB_PARAM_UNION = tagNET_DVR_BV_SAMPLE_CALIB_PARAM_UNION; +pub type LPNET_DVR_BV_SAMPLE_CALIB_PARAM_UNION = *mut tagNET_DVR_BV_SAMPLE_CALIB_PARAM_UNION; +pub const _BV_SAMPLE_CALIB_CMD_ENUM_ENUM_BV_SAMPLE_CALIB_BEGIN: _BV_SAMPLE_CALIB_CMD_ENUM = 1; +pub const _BV_SAMPLE_CALIB_CMD_ENUM_ENUM_BV_SAMPLE_CALIB_SETTING: _BV_SAMPLE_CALIB_CMD_ENUM = 2; +pub const _BV_SAMPLE_CALIB_CMD_ENUM_ENUM_BV_SAMPLE_CALIB_END: _BV_SAMPLE_CALIB_CMD_ENUM = 3; +pub type _BV_SAMPLE_CALIB_CMD_ENUM = ::std::os::raw::c_uint; +pub use self::_BV_SAMPLE_CALIB_CMD_ENUM as BV_SAMPLE_CALIB_CMD_ENUM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_BV_SAMPLE_CALIBRATION { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byCommand: BYTE, + pub byRes1: [BYTE; 3usize], + pub uCalibParam: NET_DVR_BV_SAMPLE_CALIB_PARAM_UNION, + pub byRes2: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BV_SAMPLE_CALIBRATION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 524usize, + concat!("Size of: ", stringify!(tagNET_DVR_BV_SAMPLE_CALIBRATION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIBRATION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIBRATION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIBRATION), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCommand) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIBRATION), + "::", + stringify!(byCommand) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIBRATION), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uCalibParam) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIBRATION), + "::", + stringify!(uCalibParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 268usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIBRATION), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_BV_SAMPLE_CALIBRATION = tagNET_DVR_BV_SAMPLE_CALIBRATION; +pub type LPNET_DVR_BV_SAMPLE_CALIBRATION = *mut tagNET_DVR_BV_SAMPLE_CALIBRATION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BV_SAMPLE_CALIB_CFG { + pub dwSize: DWORD, + pub dwCameraHeight: DWORD, + pub fPitchAngle: f32, + pub fInclineAngle: f32, + pub struCalibPoint: [NET_DVR_BV_SAMPLE_CALIB_POINT; 5usize], + pub struCalibPointEx: [NET_DVR_BV_SAMPLE_CALIB_POINT; 7usize], + pub byRes: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BV_SAMPLE_CALIB_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 412usize, + concat!("Size of: ", stringify!(tagNET_DVR_BV_SAMPLE_CALIB_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BV_SAMPLE_CALIB_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCameraHeight) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_CFG), + "::", + stringify!(dwCameraHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fPitchAngle) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_CFG), + "::", + stringify!(fPitchAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fInclineAngle) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_CFG), + "::", + stringify!(fInclineAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCalibPoint) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_CFG), + "::", + stringify!(struCalibPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCalibPointEx) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_CFG), + "::", + stringify!(struCalibPointEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 352usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_SAMPLE_CALIB_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BV_SAMPLE_CALIB_CFG = tagNET_DVR_BV_SAMPLE_CALIB_CFG; +pub type LPNET_DVR_BV_SAMPLE_CALIB_CFG = *mut tagNET_DVR_BV_SAMPLE_CALIB_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BINOC_RECTIFY_PARAM { + pub fCamInternalMatrix: [[f32; 3usize]; 3usize], + pub fDistCoeffs: [f32; 8usize], + pub fRotateMatrix: [[f32; 3usize]; 3usize], + pub fProjectMatrix: [[f32; 4usize]; 3usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BINOC_RECTIFY_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 216usize, + concat!("Size of: ", stringify!(tagNET_DVR_BINOC_RECTIFY_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BINOC_RECTIFY_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fCamInternalMatrix) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BINOC_RECTIFY_PARAM), + "::", + stringify!(fCamInternalMatrix) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fDistCoeffs) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BINOC_RECTIFY_PARAM), + "::", + stringify!(fDistCoeffs) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fRotateMatrix) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BINOC_RECTIFY_PARAM), + "::", + stringify!(fRotateMatrix) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fProjectMatrix) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BINOC_RECTIFY_PARAM), + "::", + stringify!(fProjectMatrix) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BINOC_RECTIFY_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BINOC_RECTIFY_PARAM = tagNET_DVR_BINOC_RECTIFY_PARAM; +pub type LPNET_DVR_BINOC_RECTIFY_PARAM = *mut tagNET_DVR_BINOC_RECTIFY_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _tagNET_DVR_BV_CORRECT_PARAM { + pub dwSize: DWORD, + pub fReprojectMatrix: [[f32; 4usize]; 4usize], + pub struLCamParam: NET_DVR_BINOC_RECTIFY_PARAM, + pub struRCamParam: NET_DVR_BINOC_RECTIFY_PARAM, + pub byLensType: BYTE, + pub byRes1: [BYTE; 3usize], + pub fRotateMatrix: [[f32; 3usize]; 3usize], + pub fTransMatrix: [f32; 3usize], + pub dwOriImgWidth: DWORD, + pub dwOriImgHeight: DWORD, + pub byRes: [BYTE; 196usize], +} +#[test] +fn bindgen_test_layout__tagNET_DVR_BV_CORRECT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit<_tagNET_DVR_BV_CORRECT_PARAM> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_tagNET_DVR_BV_CORRECT_PARAM>(), + 756usize, + concat!("Size of: ", stringify!(_tagNET_DVR_BV_CORRECT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::<_tagNET_DVR_BV_CORRECT_PARAM>(), + 4usize, + concat!("Alignment of ", stringify!(_tagNET_DVR_BV_CORRECT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_BV_CORRECT_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fReprojectMatrix) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_BV_CORRECT_PARAM), + "::", + stringify!(fReprojectMatrix) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLCamParam) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_BV_CORRECT_PARAM), + "::", + stringify!(struLCamParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRCamParam) as usize - ptr as usize }, + 284usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_BV_CORRECT_PARAM), + "::", + stringify!(struRCamParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLensType) as usize - ptr as usize }, + 500usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_BV_CORRECT_PARAM), + "::", + stringify!(byLensType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 501usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_BV_CORRECT_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fRotateMatrix) as usize - ptr as usize }, + 504usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_BV_CORRECT_PARAM), + "::", + stringify!(fRotateMatrix) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fTransMatrix) as usize - ptr as usize }, + 540usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_BV_CORRECT_PARAM), + "::", + stringify!(fTransMatrix) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOriImgWidth) as usize - ptr as usize }, + 552usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_BV_CORRECT_PARAM), + "::", + stringify!(dwOriImgWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOriImgHeight) as usize - ptr as usize }, + 556usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_BV_CORRECT_PARAM), + "::", + stringify!(dwOriImgHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 560usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_BV_CORRECT_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BV_CORRECT_PARAM = _tagNET_DVR_BV_CORRECT_PARAM; +pub type LPNET_DVR_BV_CORRECT_PARAM = *mut _tagNET_DVR_BV_CORRECT_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OUTPUT_VIDEO_TYPE { + pub dwSize: DWORD, + pub byType: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OUTPUT_VIDEO_TYPE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_OUTPUT_VIDEO_TYPE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OUTPUT_VIDEO_TYPE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_VIDEO_TYPE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_VIDEO_TYPE), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_VIDEO_TYPE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_OUTPUT_VIDEO_TYPE = tagNET_DVR_OUTPUT_VIDEO_TYPE; +pub type LPNET_DVR_OUTPUT_VIDEO_TYPE = *mut tagNET_DVR_OUTPUT_VIDEO_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEVICE_SELF_CHECK_STATE { + pub dwSize: DWORD, + pub dwRS485Chan: [DWORD; 64usize], + pub dwSensorChan: [DWORD; 4usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEVICE_SELF_CHECK_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 308usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEVICE_SELF_CHECK_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_DEVICE_SELF_CHECK_STATE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_SELF_CHECK_STATE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRS485Chan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_SELF_CHECK_STATE), + "::", + stringify!(dwRS485Chan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSensorChan) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_SELF_CHECK_STATE), + "::", + stringify!(dwSensorChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 276usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_SELF_CHECK_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DEVICE_SELF_CHECK_STATE = tagNET_DVR_DEVICE_SELF_CHECK_STATE; +pub type LPNET_DVR_DEVICE_SELF_CHECK_STATE = *mut tagNET_DVR_DEVICE_SELF_CHECK_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_COMPLETE_RESTORE_INFO_ { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_COMPLETE_RESTORE_INFO_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_COMPLETE_RESTORE_INFO_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_COMPLETE_RESTORE_INFO_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COMPLETE_RESTORE_INFO_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COMPLETE_RESTORE_INFO_), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COMPLETE_RESTORE_INFO_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_COMPLETE_RESTORE_INFO = tagNET_DVR_COMPLETE_RESTORE_INFO_; +pub type LPNET_DVR_COMPLETE_RESTORE_INFO = *mut tagNET_DVR_COMPLETE_RESTORE_INFO_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_UPLOAD_PICTURE_INFO { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byPictureType: BYTE, + pub byRes1: [BYTE; 3usize], + pub struTime: NET_DVR_TIME_V30, + pub sPictureBuffer: *mut ::std::os::raw::c_char, + pub dwPictureLength: DWORD, + pub dwPicMangeNo: DWORD, + pub sPicName: [BYTE; 32usize], + pub byUseType: BYTE, + pub byRes: [BYTE; 91usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_UPLOAD_PICTURE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 168usize, + concat!("Size of: ", stringify!(tagNET_DVR_UPLOAD_PICTURE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_UPLOAD_PICTURE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_PICTURE_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_PICTURE_INFO), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPictureType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_PICTURE_INFO), + "::", + stringify!(byPictureType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_PICTURE_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_PICTURE_INFO), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPictureBuffer) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_PICTURE_INFO), + "::", + stringify!(sPictureBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPictureLength) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_PICTURE_INFO), + "::", + stringify!(dwPictureLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicMangeNo) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_PICTURE_INFO), + "::", + stringify!(dwPicMangeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPicName) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_PICTURE_INFO), + "::", + stringify!(sPicName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseType) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_PICTURE_INFO), + "::", + stringify!(byUseType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 73usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_PICTURE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_UPLOAD_PICTURE_INFO = tagNET_DVR_UPLOAD_PICTURE_INFO; +pub type LPNET_DVR_UPLOAD_PICTURE_INFO = *mut tagNET_DVR_UPLOAD_PICTURE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_UPLOAD_FILE_RET { + pub sUrl: [BYTE; 240usize], + pub byRes: [BYTE; 260usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_UPLOAD_FILE_RET() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 500usize, + concat!("Size of: ", stringify!(tagNET_DVR_UPLOAD_FILE_RET)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_UPLOAD_FILE_RET)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUrl) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_FILE_RET), + "::", + stringify!(sUrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_FILE_RET), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_UPLOAD_FILE_RET = tagNET_DVR_UPLOAD_FILE_RET; +pub type LPNET_DVR_UPLOAD_FILE_RET = *mut tagNET_DVR_UPLOAD_FILE_RET; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FACE_EXTRA_INFO { + pub struVcaRect: [NET_VCA_RECT; 30usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FACE_EXTRA_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 544usize, + concat!("Size of: ", stringify!(tagNET_DVR_FACE_EXTRA_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FACE_EXTRA_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaRect) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_EXTRA_INFO), + "::", + stringify!(struVcaRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 480usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_EXTRA_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FACE_EXTRA_INFO = tagNET_DVR_FACE_EXTRA_INFO; +pub type LPNET_DVR_FACE_EXTRA_INFO = *mut tagNET_DVR_FACE_EXTRA_INFO; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_PIC_EXTRA_INFO_UNION { + pub byUnionLen: [BYTE; 544usize], + pub struFaceExtraInfo: NET_DVR_FACE_EXTRA_INFO, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PIC_EXTRA_INFO_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 544usize, + concat!("Size of: ", stringify!(tagNET_DVR_PIC_EXTRA_INFO_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PIC_EXTRA_INFO_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUnionLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_EXTRA_INFO_UNION), + "::", + stringify!(byUnionLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFaceExtraInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_EXTRA_INFO_UNION), + "::", + stringify!(struFaceExtraInfo) + ) + ); +} +pub type NET_DVR_PIC_EXTRA_INFO_UNION = tagNET_DVR_PIC_EXTRA_INFO_UNION; +pub type LPNET_DVR_PIC_EXTRA_INFO_UNION = *mut tagNET_DVR_PIC_EXTRA_INFO_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_FIND_PICTURE_V40 { + pub sFileName: [::std::os::raw::c_char; 64usize], + pub struTime: NET_DVR_TIME, + pub dwFileSize: DWORD, + pub sCardNum: [::std::os::raw::c_char; 40usize], + pub byPlateColor: BYTE, + pub byVehicleLogo: BYTE, + pub byFileType: BYTE, + pub byRecogResult: BYTE, + pub sLicense: [::std::os::raw::c_char; 16usize], + pub byEventSearchStatus: BYTE, + pub byRes1: [BYTE; 2usize], + pub byThermometryUnit: BYTE, + pub fFaceSnapTemperature: f32, + pub byRes: [BYTE; 68usize], + pub uPicExtraInfo: NET_DVR_PIC_EXTRA_INFO_UNION, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FIND_PICTURE_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 772usize, + concat!("Size of: ", stringify!(tagNET_DVR_FIND_PICTURE_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FIND_PICTURE_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V40), + "::", + stringify!(sFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V40), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileSize) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V40), + "::", + stringify!(dwFileSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCardNum) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V40), + "::", + stringify!(sCardNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateColor) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V40), + "::", + stringify!(byPlateColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleLogo) as usize - ptr as usize }, + 133usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V40), + "::", + stringify!(byVehicleLogo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileType) as usize - ptr as usize }, + 134usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V40), + "::", + stringify!(byFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecogResult) as usize - ptr as usize }, + 135usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V40), + "::", + stringify!(byRecogResult) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLicense) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V40), + "::", + stringify!(sLicense) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEventSearchStatus) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V40), + "::", + stringify!(byEventSearchStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 153usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V40), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byThermometryUnit) as usize - ptr as usize }, + 155usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V40), + "::", + stringify!(byThermometryUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fFaceSnapTemperature) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V40), + "::", + stringify!(fFaceSnapTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V40), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uPicExtraInfo) as usize - ptr as usize }, + 228usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V40), + "::", + stringify!(uPicExtraInfo) + ) + ); +} +pub type NET_DVR_FIND_PICTURE_V40 = tagNET_DVR_FIND_PICTURE_V40; +pub type LPNET_DVR_FIND_PICTURE_V40 = *mut tagNET_DVR_FIND_PICTURE_V40; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_FIND_PICTURE_V50 { + pub sFileName: [::std::os::raw::c_char; 64usize], + pub struTime: NET_DVR_TIME, + pub dwFileSize: DWORD, + pub sCardNum: [::std::os::raw::c_char; 40usize], + pub byPlateColor: BYTE, + pub byVehicleLogo: BYTE, + pub byFileType: BYTE, + pub byRecogResult: BYTE, + pub sLicense: [::std::os::raw::c_char; 16usize], + pub byEventSearchStatus: BYTE, + pub struAddr: NET_DVR_ADDRESS, + pub byISO8601: BYTE, + pub cTimeDifferenceH: ::std::os::raw::c_char, + pub cTimeDifferenceM: ::std::os::raw::c_char, + pub byRes: [BYTE; 253usize], + pub uPicExtraInfo: NET_DVR_PIC_EXTRA_INFO_UNION, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FIND_PICTURE_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1104usize, + concat!("Size of: ", stringify!(tagNET_DVR_FIND_PICTURE_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FIND_PICTURE_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V50), + "::", + stringify!(sFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V50), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileSize) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V50), + "::", + stringify!(dwFileSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCardNum) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V50), + "::", + stringify!(sCardNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateColor) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V50), + "::", + stringify!(byPlateColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleLogo) as usize - ptr as usize }, + 133usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V50), + "::", + stringify!(byVehicleLogo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileType) as usize - ptr as usize }, + 134usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V50), + "::", + stringify!(byFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecogResult) as usize - ptr as usize }, + 135usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V50), + "::", + stringify!(byRecogResult) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLicense) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V50), + "::", + stringify!(sLicense) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEventSearchStatus) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V50), + "::", + stringify!(byEventSearchStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAddr) as usize - ptr as usize }, + 154usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V50), + "::", + stringify!(struAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byISO8601) as usize - ptr as usize }, + 302usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V50), + "::", + stringify!(byISO8601) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceH) as usize - ptr as usize }, + 303usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V50), + "::", + stringify!(cTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceM) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V50), + "::", + stringify!(cTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 305usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V50), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uPicExtraInfo) as usize - ptr as usize }, + 560usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_V50), + "::", + stringify!(uPicExtraInfo) + ) + ); +} +pub type NET_DVR_FIND_PICTURE_V50 = tagNET_DVR_FIND_PICTURE_V50; +pub type LPNET_DVR_FIND_PICTURE_V50 = *mut tagNET_DVR_FIND_PICTURE_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_THUMBNAILS_COND { + pub dwSize: DWORD, + pub struStreamInfo: NET_DVR_STREAM_INFO, + pub bySearchDataType: BYTE, + pub byRes: [BYTE; 3usize], + pub struStartTime: NET_DVR_TIME_V30, + pub struStopTime: NET_DVR_TIME_V30, + pub dwIntervalTime: DWORD, + pub byRes1: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_THUMBNAILS_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 620usize, + concat!("Size of: ", stringify!(tagNET_DVR_THUMBNAILS_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_THUMBNAILS_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THUMBNAILS_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THUMBNAILS_COND), + "::", + stringify!(struStreamInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySearchDataType) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THUMBNAILS_COND), + "::", + stringify!(bySearchDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 77usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THUMBNAILS_COND), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THUMBNAILS_COND), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THUMBNAILS_COND), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIntervalTime) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THUMBNAILS_COND), + "::", + stringify!(dwIntervalTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THUMBNAILS_COND), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_THUMBNAILS_COND = tagNET_DVR_THUMBNAILS_COND; +pub type LPNET_DVR_THUMBNAILS_COND = *mut tagNET_DVR_THUMBNAILS_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_THUMBNAILS_RESULT { + pub byResultDataType: BYTE, + pub byIFrameType: BYTE, + pub byRes1: [BYTE; 2usize], + pub struTime: NET_DVR_TIME_SEARCH, + pub byRes: [BYTE; 252usize], + pub dwFileSize: DWORD, + pub pBuffer: *mut ::std::os::raw::c_char, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_THUMBNAILS_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 280usize, + concat!("Size of: ", stringify!(tagNET_DVR_THUMBNAILS_RESULT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_THUMBNAILS_RESULT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byResultDataType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THUMBNAILS_RESULT), + "::", + stringify!(byResultDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIFrameType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THUMBNAILS_RESULT), + "::", + stringify!(byIFrameType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THUMBNAILS_RESULT), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THUMBNAILS_RESULT), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THUMBNAILS_RESULT), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileSize) as usize - ptr as usize }, + 268usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THUMBNAILS_RESULT), + "::", + stringify!(dwFileSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THUMBNAILS_RESULT), + "::", + stringify!(pBuffer) + ) + ); +} +pub type NET_DVR_THUMBNAILS_RESULT = tagNET_DVR_THUMBNAILS_RESULT; +pub type LPNET_DVR_THUMBNAILS_RESULT = *mut tagNET_DVR_THUMBNAILS_RESULT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REGIONENTRANCE_REGION { + pub struRegion: NET_VCA_POLYGON, + pub bySensitivity: BYTE, + pub byDetectionTarget: BYTE, + pub byAlarmConfidence: BYTE, + pub byRecordConfidence: BYTE, + pub byRes: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REGIONENTRANCE_REGION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!("Size of: ", stringify!(tagNET_DVR_REGIONENTRANCE_REGION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_REGIONENTRANCE_REGION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGIONENTRANCE_REGION), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGIONENTRANCE_REGION), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectionTarget) as usize - ptr as usize }, + 85usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGIONENTRANCE_REGION), + "::", + stringify!(byDetectionTarget) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmConfidence) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGIONENTRANCE_REGION), + "::", + stringify!(byAlarmConfidence) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordConfidence) as usize - ptr as usize }, + 87usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGIONENTRANCE_REGION), + "::", + stringify!(byRecordConfidence) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGIONENTRANCE_REGION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_REGIONENTRANCE_REGION = tagNET_DVR_REGIONENTRANCE_REGION; +pub type LPNET_DVR_REGIONENTRANCE_REGION = *mut tagNET_DVR_REGIONENTRANCE_REGION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REGION_ENTRANCE_DETECTION { + pub dwSize: DWORD, + pub byEnabled: BYTE, + pub byEnableHumanMisinfoFilter: BYTE, + pub byEnableVehicleMisinfoFilter: BYTE, + pub byRes1: [BYTE; 1usize], + pub struRegion: [NET_DVR_REGIONENTRANCE_REGION; 8usize], + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REGION_ENTRANCE_DETECTION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1320usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_REGION_ENTRANCE_DETECTION) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_REGION_ENTRANCE_DETECTION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_ENTRANCE_DETECTION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_ENTRANCE_DETECTION), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableHumanMisinfoFilter) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_ENTRANCE_DETECTION), + "::", + stringify!(byEnableHumanMisinfoFilter) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byEnableVehicleMisinfoFilter) as usize - ptr as usize + }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_ENTRANCE_DETECTION), + "::", + stringify!(byEnableVehicleMisinfoFilter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_ENTRANCE_DETECTION), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_ENTRANCE_DETECTION), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_ENTRANCE_DETECTION), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_REGION_ENTRANCE_DETECTION = tagNET_DVR_REGION_ENTRANCE_DETECTION; +pub type LPNET_DVR_REGION_ENTRANCE_DETECTION = *mut tagNET_DVR_REGION_ENTRANCE_DETECTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SMART_REGION_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub dwRegion: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SMART_REGION_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_SMART_REGION_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SMART_REGION_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_REGION_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_REGION_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRegion) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_REGION_COND), + "::", + stringify!(dwRegion) + ) + ); +} +pub type NET_DVR_SMART_REGION_COND = tagNET_DVR_SMART_REGION_COND; +pub type LPNET_DVR_SMART_REGION_COND = *mut tagNET_DVR_SMART_REGION_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ENTRANCE_REGION { + pub struRegion: NET_VCA_POLYGON, + pub bySensitivity: BYTE, + pub byDetectionTarget: BYTE, + pub byAlarmConfidence: BYTE, + pub byRecordConfidence: BYTE, + pub byRes: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ENTRANCE_REGION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!("Size of: ", stringify!(tagNET_DVR_ENTRANCE_REGION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ENTRANCE_REGION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCE_REGION), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCE_REGION), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectionTarget) as usize - ptr as usize }, + 85usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCE_REGION), + "::", + stringify!(byDetectionTarget) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmConfidence) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCE_REGION), + "::", + stringify!(byAlarmConfidence) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordConfidence) as usize - ptr as usize }, + 87usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCE_REGION), + "::", + stringify!(byRecordConfidence) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ENTRANCE_REGION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ENTRANCE_REGION = tagNET_DVR_ENTRANCE_REGION; +pub type LPNET_DVR_ENTRANCE_REGION = *mut tagNET_DVR_ENTRANCE_REGION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DENSEFOGDETECTION_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub bySensitivity: BYTE, + pub byRes: [BYTE; 258usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DENSEFOGDETECTION_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_DVR_DENSEFOGDETECTION_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_DENSEFOGDETECTION_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DENSEFOGDETECTION_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DENSEFOGDETECTION_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DENSEFOGDETECTION_CFG), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DENSEFOGDETECTION_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DENSEFOGDETECTION_CFG = tagNET_DVR_DENSEFOGDETECTION_CFG; +pub type LPNET_DVR_DENSEFOGDETECTION_CFG = *mut tagNET_DVR_DENSEFOGDETECTION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EVENT_TRIGGER { + pub dwSize: DWORD, + pub struHandleException: NET_DVR_HANDLEEXCEPTION_V41, + pub dwRelRecordChan: [DWORD; 512usize], + pub struPresetChanInfo: [NET_DVR_PRESETCHAN_INFO; 512usize], + pub struCruiseChanInfo: [NET_DVR_CRUISECHAN_INFO; 512usize], + pub struPtzTrackInfo: [NET_DVR_PTZTRACKCHAN_INFO; 512usize], + pub byDirection: BYTE, + pub byRes2: [BYTE; 255usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EVENT_TRIGGER() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 31180usize, + concat!("Size of: ", stringify!(tagNET_DVR_EVENT_TRIGGER)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EVENT_TRIGGER)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_TRIGGER), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHandleException) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_TRIGGER), + "::", + stringify!(struHandleException) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelRecordChan) as usize - ptr as usize }, + 16588usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_TRIGGER), + "::", + stringify!(dwRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPresetChanInfo) as usize - ptr as usize }, + 18636usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_TRIGGER), + "::", + stringify!(struPresetChanInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCruiseChanInfo) as usize - ptr as usize }, + 22732usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_TRIGGER), + "::", + stringify!(struCruiseChanInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPtzTrackInfo) as usize - ptr as usize }, + 26828usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_TRIGGER), + "::", + stringify!(struPtzTrackInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDirection) as usize - ptr as usize }, + 30924usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_TRIGGER), + "::", + stringify!(byDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 30925usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_TRIGGER), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_EVENT_TRIGGER = tagNET_DVR_EVENT_TRIGGER; +pub type LPNET_DVR_EVENT_TRIGGER = *mut tagNET_DVR_EVENT_TRIGGER; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EVENT_SCHEDULE { + pub dwSize: DWORD, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub struHolidayAlarmTime: [NET_DVR_SCHEDTIME; 8usize], + pub bySceneID: [[BYTE; 8usize]; 7usize], + pub byRes: [BYTE; 72usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EVENT_SCHEDULE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 388usize, + concat!("Size of: ", stringify!(tagNET_DVR_EVENT_SCHEDULE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EVENT_SCHEDULE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_SCHEDULE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_SCHEDULE), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHolidayAlarmTime) as usize - ptr as usize }, + 228usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_SCHEDULE), + "::", + stringify!(struHolidayAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySceneID) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_SCHEDULE), + "::", + stringify!(bySceneID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 316usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_SCHEDULE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EVENT_SCHEDULE = tagNET_DVR_EVENT_SCHEDULE; +pub type LPNET_DVR_EVENT_SCHEDULE = *mut tagNET_DVR_EVENT_SCHEDULE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ANR_ARMING_HOST { + pub dwSize: DWORD, + pub struANRArmingHostIpAddr: NET_DVR_IPADDR, + pub wANRAlarmHostPort: WORD, + pub byANRAlarmType: BYTE, + pub byConfirmMechanismEnabled: BYTE, + pub byRes: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ANR_ARMING_HOST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 664usize, + concat!("Size of: ", stringify!(tagNET_DVR_ANR_ARMING_HOST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ANR_ARMING_HOST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANR_ARMING_HOST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struANRArmingHostIpAddr) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANR_ARMING_HOST), + "::", + stringify!(struANRArmingHostIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wANRAlarmHostPort) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANR_ARMING_HOST), + "::", + stringify!(wANRAlarmHostPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byANRAlarmType) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANR_ARMING_HOST), + "::", + stringify!(byANRAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byConfirmMechanismEnabled) as usize - ptr as usize }, + 151usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANR_ARMING_HOST), + "::", + stringify!(byConfirmMechanismEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANR_ARMING_HOST), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ANR_ARMING_HOST = tagNET_DVR_ANR_ARMING_HOST; +pub type LPNET_DVR_ANR_ARMING_HOST = *mut tagNET_DVR_ANR_ARMING_HOST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REGIONEXITING_REGION { + pub struRegion: NET_VCA_POLYGON, + pub bySensitivity: BYTE, + pub byDetectionTarget: BYTE, + pub byAlarmConfidence: BYTE, + pub byRecordConfidence: BYTE, + pub byRes: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REGIONEXITING_REGION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!("Size of: ", stringify!(tagNET_DVR_REGIONEXITING_REGION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_REGIONEXITING_REGION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGIONEXITING_REGION), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGIONEXITING_REGION), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectionTarget) as usize - ptr as usize }, + 85usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGIONEXITING_REGION), + "::", + stringify!(byDetectionTarget) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmConfidence) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGIONEXITING_REGION), + "::", + stringify!(byAlarmConfidence) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordConfidence) as usize - ptr as usize }, + 87usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGIONEXITING_REGION), + "::", + stringify!(byRecordConfidence) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGIONEXITING_REGION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_REGIONEXITING_REGION = tagNET_DVR_REGIONEXITING_REGION; +pub type LPNET_DVR_REGIONEXITING_REGION = *mut tagNET_DVR_REGIONEXITING_REGION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REGION_EXITING_DETECTION { + pub dwSize: DWORD, + pub byEnabled: BYTE, + pub byEnableHumanMisinfoFilter: BYTE, + pub byEnableVehicleMisinfoFilter: BYTE, + pub byRes1: [BYTE; 1usize], + pub struRegion: [NET_DVR_REGIONEXITING_REGION; 8usize], + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REGION_EXITING_DETECTION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1320usize, + concat!("Size of: ", stringify!(tagNET_DVR_REGION_EXITING_DETECTION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_REGION_EXITING_DETECTION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_EXITING_DETECTION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_EXITING_DETECTION), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableHumanMisinfoFilter) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_EXITING_DETECTION), + "::", + stringify!(byEnableHumanMisinfoFilter) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byEnableVehicleMisinfoFilter) as usize - ptr as usize + }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_EXITING_DETECTION), + "::", + stringify!(byEnableVehicleMisinfoFilter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_EXITING_DETECTION), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_EXITING_DETECTION), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_EXITING_DETECTION), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_REGION_EXITING_DETECTION = tagNET_DVR_REGION_EXITING_DETECTION; +pub type LPNET_DVR_REGION_EXITING_DETECTION = *mut tagNET_DVR_REGION_EXITING_DETECTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOITERING_REGION { + pub struRegion: NET_VCA_POLYGON, + pub bySensitivity: BYTE, + pub byTimeThreshold: BYTE, + pub byRes: [BYTE; 62usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOITERING_REGION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOITERING_REGION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOITERING_REGION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOITERING_REGION), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOITERING_REGION), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeThreshold) as usize - ptr as usize }, + 85usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOITERING_REGION), + "::", + stringify!(byTimeThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOITERING_REGION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOITERING_REGION = tagNET_DVR_LOITERING_REGION; +pub type LPNET_DVR_LOITERING_REGION = *mut tagNET_DVR_LOITERING_REGION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOITERING_DETECTION { + pub dwSize: DWORD, + pub byEnabled: BYTE, + pub byRes1: [BYTE; 3usize], + pub struRegion: [NET_DVR_LOITERING_REGION; 8usize], + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOITERING_DETECTION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1320usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOITERING_DETECTION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOITERING_DETECTION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOITERING_DETECTION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOITERING_DETECTION), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOITERING_DETECTION), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOITERING_DETECTION), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOITERING_DETECTION), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_LOITERING_DETECTION = tagNET_DVR_LOITERING_DETECTION; +pub type LPNET_DVR_LOITERING_DETECTION = *mut tagNET_DVR_LOITERING_DETECTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GROUPDETECTION_REGION { + pub struRegion: NET_VCA_POLYGON, + pub byObjectOccup: BYTE, + pub bySensitivityLevel: BYTE, + pub byDurationTime: BYTE, + pub byFilterTime: BYTE, + pub byMinTriggerNumber: BYTE, + pub byLinkageTime: BYTE, + pub byRes: [BYTE; 58usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GROUPDETECTION_REGION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!("Size of: ", stringify!(tagNET_DVR_GROUPDETECTION_REGION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_GROUPDETECTION_REGION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GROUPDETECTION_REGION), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byObjectOccup) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GROUPDETECTION_REGION), + "::", + stringify!(byObjectOccup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivityLevel) as usize - ptr as usize }, + 85usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GROUPDETECTION_REGION), + "::", + stringify!(bySensitivityLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDurationTime) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GROUPDETECTION_REGION), + "::", + stringify!(byDurationTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFilterTime) as usize - ptr as usize }, + 87usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GROUPDETECTION_REGION), + "::", + stringify!(byFilterTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMinTriggerNumber) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GROUPDETECTION_REGION), + "::", + stringify!(byMinTriggerNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLinkageTime) as usize - ptr as usize }, + 89usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GROUPDETECTION_REGION), + "::", + stringify!(byLinkageTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 90usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GROUPDETECTION_REGION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GROUPDETECTION_REGION = tagNET_DVR_GROUPDETECTION_REGION; +pub type LPNET_DVR_GROUPDETECTION_REGION = *mut tagNET_DVR_GROUPDETECTION_REGION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_POS_HIDDEN_INFORMATION { + pub szKeyWord: [[::std::os::raw::c_char; 128usize]; 3usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_POS_HIDDEN_INFORMATION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(tagNET_DVR_POS_HIDDEN_INFORMATION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_POS_HIDDEN_INFORMATION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szKeyWord) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POS_HIDDEN_INFORMATION), + "::", + stringify!(szKeyWord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 384usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POS_HIDDEN_INFORMATION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_POS_HIDDEN_INFORMATION = tagNET_DVR_POS_HIDDEN_INFORMATION; +pub type LPNET_DVR_POS_HIDDEN_INFORMATION = *mut tagNET_DVR_POS_HIDDEN_INFORMATION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HIDDEN_INFORMATION_CFG { + pub dwSize: DWORD, + pub byFuncType: BYTE, + pub Res1: [BYTE; 3usize], + pub struPosInfo: NET_DVR_POS_HIDDEN_INFORMATION, + pub byRes: [BYTE; 1024usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HIDDEN_INFORMATION_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1544usize, + concat!("Size of: ", stringify!(tagNET_DVR_HIDDEN_INFORMATION_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_HIDDEN_INFORMATION_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HIDDEN_INFORMATION_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFuncType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HIDDEN_INFORMATION_CFG), + "::", + stringify!(byFuncType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Res1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HIDDEN_INFORMATION_CFG), + "::", + stringify!(Res1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPosInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HIDDEN_INFORMATION_CFG), + "::", + stringify!(struPosInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 520usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HIDDEN_INFORMATION_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_HIDDEN_INFORMATION_CFG = tagNET_DVR_HIDDEN_INFORMATION_CFG; +pub type LPNET_DVR_HIDDEN_INFORMATION_CFG = *mut tagNET_DVR_HIDDEN_INFORMATION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GROUP_DETECTION { + pub dwSize: DWORD, + pub byEnabled: BYTE, + pub byRes1: [BYTE; 3usize], + pub struRegion: [NET_DVR_GROUPDETECTION_REGION; 8usize], + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GROUP_DETECTION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1320usize, + concat!("Size of: ", stringify!(tagNET_DVR_GROUP_DETECTION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GROUP_DETECTION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GROUP_DETECTION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GROUP_DETECTION), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GROUP_DETECTION), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GROUP_DETECTION), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GROUP_DETECTION), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_GROUP_DETECTION = tagNET_DVR_GROUP_DETECTION; +pub type LPNET_DVR_GROUP_DETECTION = *mut tagNET_DVR_GROUP_DETECTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RAPIDMOVE_REGION { + pub struRegion: NET_VCA_POLYGON, + pub bySensitivity: BYTE, + pub byDetectionTarget: BYTE, + pub byRes: [BYTE; 62usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RAPIDMOVE_REGION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!("Size of: ", stringify!(tagNET_DVR_RAPIDMOVE_REGION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RAPIDMOVE_REGION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RAPIDMOVE_REGION), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RAPIDMOVE_REGION), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectionTarget) as usize - ptr as usize }, + 85usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RAPIDMOVE_REGION), + "::", + stringify!(byDetectionTarget) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RAPIDMOVE_REGION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RAPIDMOVE_REGION = tagNET_DVR_RAPIDMOVE_REGION; +pub type LPNET_DVR_RAPIDMOVE_REGION = *mut tagNET_DVR_RAPIDMOVE_REGION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RAPIDMOVE_DETECTION { + pub dwSize: DWORD, + pub byEnabled: BYTE, + pub byRes1: [BYTE; 3usize], + pub struRegion: [NET_DVR_RAPIDMOVE_REGION; 8usize], + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RAPIDMOVE_DETECTION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1320usize, + concat!("Size of: ", stringify!(tagNET_DVR_RAPIDMOVE_DETECTION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RAPIDMOVE_DETECTION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RAPIDMOVE_DETECTION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RAPIDMOVE_DETECTION), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RAPIDMOVE_DETECTION), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RAPIDMOVE_DETECTION), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RAPIDMOVE_DETECTION), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_RAPIDMOVE_DETECTION = tagNET_DVR_RAPIDMOVE_DETECTION; +pub type LPNET_DVR_RAPIDMOVE_DETECTION = *mut tagNET_DVR_RAPIDMOVE_DETECTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PARKING_REGION { + pub struRegion: NET_VCA_POLYGON, + pub bySensitivity: BYTE, + pub byTimeThreshold: BYTE, + pub byRes: [BYTE; 62usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PARKING_REGION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!("Size of: ", stringify!(tagNET_DVR_PARKING_REGION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PARKING_REGION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_REGION), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_REGION), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeThreshold) as usize - ptr as usize }, + 85usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_REGION), + "::", + stringify!(byTimeThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_REGION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PARKING_REGION = tagNET_DVR_PARKING_REGION; +pub type LPNET_DVR_PARKING_REGION = *mut tagNET_DVR_PARKING_REGION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PARKING_DETECTION { + pub dwSize: DWORD, + pub byEnabled: BYTE, + pub byRes1: [BYTE; 3usize], + pub struRegion: [NET_DVR_PARKING_REGION; 8usize], + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PARKING_DETECTION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1320usize, + concat!("Size of: ", stringify!(tagNET_DVR_PARKING_DETECTION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PARKING_DETECTION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_DETECTION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_DETECTION), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_DETECTION), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_DETECTION), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_DETECTION), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PARKING_DETECTION = tagNET_DVR_PARKING_DETECTION; +pub type LPNET_DVR_PARKING_DETECTION = *mut tagNET_DVR_PARKING_DETECTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_UNATTENDED_BAGGAGE_REGION { + pub struRegion: NET_VCA_POLYGON, + pub bySensitivity: BYTE, + pub byTimeThreshold: BYTE, + pub wTimeThreshold: WORD, + pub byTimeThresholdMode: BYTE, + pub byRes: [BYTE; 59usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_UNATTENDED_BAGGAGE_REGION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_UNATTENDED_BAGGAGE_REGION) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_UNATTENDED_BAGGAGE_REGION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNATTENDED_BAGGAGE_REGION), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNATTENDED_BAGGAGE_REGION), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeThreshold) as usize - ptr as usize }, + 85usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNATTENDED_BAGGAGE_REGION), + "::", + stringify!(byTimeThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTimeThreshold) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNATTENDED_BAGGAGE_REGION), + "::", + stringify!(wTimeThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeThresholdMode) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNATTENDED_BAGGAGE_REGION), + "::", + stringify!(byTimeThresholdMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 89usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNATTENDED_BAGGAGE_REGION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_UNATTENDED_BAGGAGE_REGION = tagNET_DVR_UNATTENDED_BAGGAGE_REGION; +pub type LPNET_DVR_UNATTENDED_BAGGAGE_REGION = *mut tagNET_DVR_UNATTENDED_BAGGAGE_REGION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_UNATTENDED_BAGGAGE_DETECTION { + pub dwSize: DWORD, + pub byEnabled: BYTE, + pub byRes1: [BYTE; 3usize], + pub struRegion: [NET_DVR_UNATTENDED_BAGGAGE_REGION; 8usize], + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_UNATTENDED_BAGGAGE_DETECTION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1320usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_UNATTENDED_BAGGAGE_DETECTION) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_UNATTENDED_BAGGAGE_DETECTION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNATTENDED_BAGGAGE_DETECTION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNATTENDED_BAGGAGE_DETECTION), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNATTENDED_BAGGAGE_DETECTION), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNATTENDED_BAGGAGE_DETECTION), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNATTENDED_BAGGAGE_DETECTION), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_UNATTENDED_BAGGAGE_DETECTION = tagNET_DVR_UNATTENDED_BAGGAGE_DETECTION; +pub type LPNET_DVR_UNATTENDED_BAGGAGE_DETECTION = *mut tagNET_DVR_UNATTENDED_BAGGAGE_DETECTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ATTENDED_BAGGAGE_REGION { + pub struRegion: NET_VCA_POLYGON, + pub bySensitivity: BYTE, + pub byTimeThreshold: BYTE, + pub wTimeThreshold: WORD, + pub byTimeThresholdMode: BYTE, + pub byRes: [BYTE; 59usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ATTENDED_BAGGAGE_REGION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!("Size of: ", stringify!(tagNET_DVR_ATTENDED_BAGGAGE_REGION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ATTENDED_BAGGAGE_REGION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDED_BAGGAGE_REGION), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDED_BAGGAGE_REGION), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeThreshold) as usize - ptr as usize }, + 85usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDED_BAGGAGE_REGION), + "::", + stringify!(byTimeThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTimeThreshold) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDED_BAGGAGE_REGION), + "::", + stringify!(wTimeThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeThresholdMode) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDED_BAGGAGE_REGION), + "::", + stringify!(byTimeThresholdMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 89usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDED_BAGGAGE_REGION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ATTENDED_BAGGAGE_REGION = tagNET_DVR_ATTENDED_BAGGAGE_REGION; +pub type LPNET_DVR_ATTENDED_BAGGAGE_REGION = *mut tagNET_DVR_ATTENDED_BAGGAGE_REGION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ATTENDED_BAGGAGE_DETECTION { + pub dwSize: DWORD, + pub byEnabled: BYTE, + pub byRes1: [BYTE; 3usize], + pub struRegion: [NET_DVR_ATTENDED_BAGGAGE_REGION; 8usize], + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ATTENDED_BAGGAGE_DETECTION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1320usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ATTENDED_BAGGAGE_DETECTION) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ATTENDED_BAGGAGE_DETECTION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDED_BAGGAGE_DETECTION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDED_BAGGAGE_DETECTION), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDED_BAGGAGE_DETECTION), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDED_BAGGAGE_DETECTION), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDED_BAGGAGE_DETECTION), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ATTENDED_BAGGAGE_DETECTION = tagNET_DVR_ATTENDED_BAGGAGE_DETECTION; +pub type LPNET_DVR_ATTENDED_BAGGAGE_DETECTION = *mut tagNET_DVR_ATTENDED_BAGGAGE_DETECTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REGION_CLIP_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub dwStreamType: DWORD, + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REGION_CLIP_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_REGION_CLIP_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_REGION_CLIP_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_CLIP_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_CLIP_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStreamType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_CLIP_COND), + "::", + stringify!(dwStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_CLIP_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_REGION_CLIP_COND = tagNET_DVR_REGION_CLIP_COND; +pub type LPNET_DVR_REGION_CLIP_COND = *mut tagNET_DVR_REGION_CLIP_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REGION_CLIP_CFG { + pub dwSize: DWORD, + pub byEnabled: BYTE, + pub byRes1: [BYTE; 3usize], + pub wResolutionWidth: WORD, + pub wResolutionHeight: WORD, + pub struRegion: [NET_VCA_POLYGON; 8usize], + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REGION_CLIP_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 748usize, + concat!("Size of: ", stringify!(tagNET_DVR_REGION_CLIP_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_REGION_CLIP_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_CLIP_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_CLIP_CFG), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_CLIP_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wResolutionWidth) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_CLIP_CFG), + "::", + stringify!(wResolutionWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wResolutionHeight) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_CLIP_CFG), + "::", + stringify!(wResolutionHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_CLIP_CFG), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 684usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_CLIP_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_REGION_CLIP_CFG = tagNET_DVR_REGION_CLIP_CFG; +pub type LPNET_DVR_REGION_CLIP_CFG = *mut tagNET_DVR_REGION_CLIP_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WIRELESSDIAL_CFG { + pub dwSize: DWORD, + pub byEnabled: BYTE, + pub byDialMode: BYTE, + pub byNetworkMode: BYTE, + pub byRes1: BYTE, + pub byDialNum: [BYTE; 32usize], + pub byUserName: [BYTE; 32usize], + pub byPassword: [BYTE; 32usize], + pub byAPNName: [BYTE; 32usize], + pub byUIMCardNum: [BYTE; 32usize], + pub byVerifProtocol: BYTE, + pub byRes2: BYTE, + pub wMTU: WORD, + pub dwOffineTime: DWORD, + pub byNetAPN: [BYTE; 32usize], + pub byEnabled4G: BYTE, + pub byEnabledDNS: BYTE, + pub byRes3: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIRELESSDIAL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 240usize, + concat!("Size of: ", stringify!(tagNET_DVR_WIRELESSDIAL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WIRELESSDIAL_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_CFG), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDialMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_CFG), + "::", + stringify!(byDialMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetworkMode) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_CFG), + "::", + stringify!(byNetworkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDialNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_CFG), + "::", + stringify!(byDialNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUserName) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_CFG), + "::", + stringify!(byUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPassword) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_CFG), + "::", + stringify!(byPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAPNName) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_CFG), + "::", + stringify!(byAPNName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUIMCardNum) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_CFG), + "::", + stringify!(byUIMCardNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVerifProtocol) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_CFG), + "::", + stringify!(byVerifProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 169usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_CFG), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMTU) as usize - ptr as usize }, + 170usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_CFG), + "::", + stringify!(wMTU) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOffineTime) as usize - ptr as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_CFG), + "::", + stringify!(dwOffineTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetAPN) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_CFG), + "::", + stringify!(byNetAPN) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled4G) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_CFG), + "::", + stringify!(byEnabled4G) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabledDNS) as usize - ptr as usize }, + 209usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_CFG), + "::", + stringify!(byEnabledDNS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 210usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_CFG), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_WIRELESSDIAL_CFG = tagNET_DVR_WIRELESSDIAL_CFG; +pub type LPNET_DVR_WIRELESSDIAL_CFG = *mut tagNET_DVR_WIRELESSDIAL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WIRELESSDIAL_SCHEDULE { + pub dwSize: DWORD, + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub struHolidayAlarmTime: [NET_DVR_SCHEDTIME; 8usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIRELESSDIAL_SCHEDULE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 388usize, + concat!("Size of: ", stringify!(tagNET_DVR_WIRELESSDIAL_SCHEDULE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_WIRELESSDIAL_SCHEDULE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_SCHEDULE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_SCHEDULE), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHolidayAlarmTime) as usize - ptr as usize }, + 228usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_SCHEDULE), + "::", + stringify!(struHolidayAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_SCHEDULE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WIRELESSDIAL_SCHEDULE = tagNET_DVR_WIRELESSDIAL_SCHEDULE; +pub type LPNET_DVR_WIRELESSDIAL_SCHEDULE = *mut tagNET_DVR_WIRELESSDIAL_SCHEDULE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WIRELESSDIAL_STATUS { + pub dwSize: DWORD, + pub byRealtimeMode: [BYTE; 32usize], + pub byUIMStatus: [BYTE; 32usize], + pub dwSignalQuality: DWORD, + pub byDialStatus: [BYTE; 32usize], + pub struIpAddr: NET_DVR_IPADDR, + pub struIPMask: NET_DVR_IPADDR, + pub struGatewayIPMask: NET_DVR_IPADDR, + pub struDnsServerIpAddr: NET_DVR_IPADDR, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIRELESSDIAL_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 936usize, + concat!("Size of: ", stringify!(tagNET_DVR_WIRELESSDIAL_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WIRELESSDIAL_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRealtimeMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_STATUS), + "::", + stringify!(byRealtimeMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUIMStatus) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_STATUS), + "::", + stringify!(byUIMStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSignalQuality) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_STATUS), + "::", + stringify!(dwSignalQuality) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDialStatus) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_STATUS), + "::", + stringify!(byDialStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIpAddr) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_STATUS), + "::", + stringify!(struIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPMask) as usize - ptr as usize }, + 248usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_STATUS), + "::", + stringify!(struIPMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGatewayIPMask) as usize - ptr as usize }, + 392usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_STATUS), + "::", + stringify!(struGatewayIPMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDnsServerIpAddr) as usize - ptr as usize }, + 536usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_STATUS), + "::", + stringify!(struDnsServerIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 680usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WIRELESSDIAL_STATUS = tagNET_DVR_WIRELESSDIAL_STATUS; +pub type LPNET_DVR_WIRELESSDIAL_STATUS = *mut tagNET_DVR_WIRELESSDIAL_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WIRELESSDIAL_CONNECT { + pub dwSize: DWORD, + pub dwInterface: DWORD, + pub byEnableConnect: BYTE, + pub byRes: [BYTE; 255usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIRELESSDIAL_CONNECT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_DVR_WIRELESSDIAL_CONNECT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WIRELESSDIAL_CONNECT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_CONNECT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInterface) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_CONNECT), + "::", + stringify!(dwInterface) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableConnect) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_CONNECT), + "::", + stringify!(byEnableConnect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSDIAL_CONNECT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WIRELESSDIAL_CONNECT_PARAM = tagNET_DVR_WIRELESSDIAL_CONNECT; +pub type LPNET_DVR_WIRELESSDIAL_CONNECT_PARAM = *mut tagNET_DVR_WIRELESSDIAL_CONNECT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LITESTORAGE { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byStorageTime: BYTE, + pub byLevel: BYTE, + pub byRes: BYTE, + pub fCapacity: f32, + pub byDefLowStorageTime: BYTE, + pub byDefMediumStorageTime: BYTE, + pub byDefHighStorageTime: BYTE, + pub byRes1: [BYTE; 61usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LITESTORAGE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_LITESTORAGE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LITESTORAGE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LITESTORAGE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LITESTORAGE), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStorageTime) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LITESTORAGE), + "::", + stringify!(byStorageTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLevel) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LITESTORAGE), + "::", + stringify!(byLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LITESTORAGE), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fCapacity) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LITESTORAGE), + "::", + stringify!(fCapacity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDefLowStorageTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LITESTORAGE), + "::", + stringify!(byDefLowStorageTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDefMediumStorageTime) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LITESTORAGE), + "::", + stringify!(byDefMediumStorageTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDefHighStorageTime) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LITESTORAGE), + "::", + stringify!(byDefHighStorageTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LITESTORAGE), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_LITESTORAGE = tagNET_DVR_LITESTORAGE; +pub type LPNET_DVR_LITESTORAGE = *mut tagNET_DVR_LITESTORAGE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CALIBRATION { + pub dwSize: DWORD, + pub struRegion: NET_VCA_POLYGON, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CALIBRATION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 152usize, + concat!("Size of: ", stringify!(tagNET_DVR_CALIBRATION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CALIBRATION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALIBRATION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALIBRATION), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALIBRATION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CALIBRATION = tagNET_DVR_CALIBRATION; +pub type LPNET_DVR_CALIBRATION = *mut tagNET_DVR_CALIBRATION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_STD_CONFIG { + pub lpCondBuffer: *mut ::std::os::raw::c_void, + pub dwCondSize: DWORD, + pub lpInBuffer: *mut ::std::os::raw::c_void, + pub dwInSize: DWORD, + pub lpOutBuffer: *mut ::std::os::raw::c_void, + pub dwOutSize: DWORD, + pub lpStatusBuffer: *mut ::std::os::raw::c_void, + pub dwStatusSize: DWORD, + pub lpXmlBuffer: *mut ::std::os::raw::c_void, + pub dwXmlSize: DWORD, + pub byDataType: BYTE, + pub byRes: [BYTE; 23usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STD_CONFIG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 104usize, + concat!("Size of: ", stringify!(tagNET_DVR_STD_CONFIG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_STD_CONFIG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpCondBuffer) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STD_CONFIG), + "::", + stringify!(lpCondBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCondSize) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STD_CONFIG), + "::", + stringify!(dwCondSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpInBuffer) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STD_CONFIG), + "::", + stringify!(lpInBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInSize) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STD_CONFIG), + "::", + stringify!(dwInSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpOutBuffer) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STD_CONFIG), + "::", + stringify!(lpOutBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOutSize) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STD_CONFIG), + "::", + stringify!(dwOutSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpStatusBuffer) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STD_CONFIG), + "::", + stringify!(lpStatusBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStatusSize) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STD_CONFIG), + "::", + stringify!(dwStatusSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpXmlBuffer) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STD_CONFIG), + "::", + stringify!(lpXmlBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwXmlSize) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STD_CONFIG), + "::", + stringify!(dwXmlSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataType) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STD_CONFIG), + "::", + stringify!(byDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 77usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STD_CONFIG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_STD_CONFIG = tagNET_DVR_STD_CONFIG; +pub type LPNET_DVR_STD_CONFIG = *mut tagNET_DVR_STD_CONFIG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DWORDtagNET_DVR_STD_ABILITY { + pub lpCondBuffer: *mut ::std::os::raw::c_void, + pub dwCondSize: DWORD, + pub lpOutBuffer: *mut ::std::os::raw::c_void, + pub dwOutSize: DWORD, + pub lpStatusBuffer: *mut ::std::os::raw::c_void, + pub dwStatusSize: DWORD, + pub dwRetSize: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_DWORDtagNET_DVR_STD_ABILITY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(DWORDtagNET_DVR_STD_ABILITY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(DWORDtagNET_DVR_STD_ABILITY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpCondBuffer) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(DWORDtagNET_DVR_STD_ABILITY), + "::", + stringify!(lpCondBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCondSize) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(DWORDtagNET_DVR_STD_ABILITY), + "::", + stringify!(dwCondSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpOutBuffer) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(DWORDtagNET_DVR_STD_ABILITY), + "::", + stringify!(lpOutBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOutSize) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(DWORDtagNET_DVR_STD_ABILITY), + "::", + stringify!(dwOutSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpStatusBuffer) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(DWORDtagNET_DVR_STD_ABILITY), + "::", + stringify!(lpStatusBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStatusSize) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(DWORDtagNET_DVR_STD_ABILITY), + "::", + stringify!(dwStatusSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRetSize) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(DWORDtagNET_DVR_STD_ABILITY), + "::", + stringify!(dwRetSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(DWORDtagNET_DVR_STD_ABILITY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_STD_ABILITY = DWORDtagNET_DVR_STD_ABILITY; +pub type LPNET_DVR_STD_ABILITY = *mut DWORDtagNET_DVR_STD_ABILITY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_STD_CONTROL { + pub lpCondBuffer: *mut ::std::os::raw::c_void, + pub dwCondSize: DWORD, + pub lpStatusBuffer: *mut ::std::os::raw::c_void, + pub dwStatusSize: DWORD, + pub lpXmlBuffer: *mut ::std::os::raw::c_void, + pub dwXmlSize: DWORD, + pub byDataType: BYTE, + pub byRes: [BYTE; 55usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STD_CONTROL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 104usize, + concat!("Size of: ", stringify!(tagNET_DVR_STD_CONTROL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_STD_CONTROL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpCondBuffer) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STD_CONTROL), + "::", + stringify!(lpCondBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCondSize) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STD_CONTROL), + "::", + stringify!(dwCondSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpStatusBuffer) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STD_CONTROL), + "::", + stringify!(lpStatusBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStatusSize) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STD_CONTROL), + "::", + stringify!(dwStatusSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpXmlBuffer) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STD_CONTROL), + "::", + stringify!(lpXmlBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwXmlSize) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STD_CONTROL), + "::", + stringify!(dwXmlSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataType) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STD_CONTROL), + "::", + stringify!(byDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 45usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STD_CONTROL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_STD_CONTROL = tagNET_DVR_STD_CONTROL; +pub type LPNET_DVR_STD_CONTROL = *mut tagNET_DVR_STD_CONTROL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MIME_UNIT { + pub szContentType: [::std::os::raw::c_char; 32usize], + pub szName: [::std::os::raw::c_char; 256usize], + pub szFilename: [::std::os::raw::c_char; 256usize], + pub dwContentLen: DWORD, + pub pContent: *mut ::std::os::raw::c_char, + pub bySelfRead: BYTE, + pub byRes: [BYTE; 15usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MIME_UNIT() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 576usize, + concat!("Size of: ", stringify!(tagNET_DVR_MIME_UNIT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MIME_UNIT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szContentType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIME_UNIT), + "::", + stringify!(szContentType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szName) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIME_UNIT), + "::", + stringify!(szName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szFilename) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIME_UNIT), + "::", + stringify!(szFilename) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwContentLen) as usize - ptr as usize }, + 544usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIME_UNIT), + "::", + stringify!(dwContentLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pContent) as usize - ptr as usize }, + 552usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIME_UNIT), + "::", + stringify!(pContent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySelfRead) as usize - ptr as usize }, + 560usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIME_UNIT), + "::", + stringify!(bySelfRead) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 561usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIME_UNIT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MIME_UNIT = tagNET_DVR_MIME_UNIT; +pub type LPNET_DVR_MIME_UNIT = *mut tagNET_DVR_MIME_UNIT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MIME_DATA { + pub byContentType: BYTE, + pub byRes1: [BYTE; 3usize], + pub lpContent: *mut ::std::os::raw::c_void, + pub dwContentSize: DWORD, + pub sContentID: [::std::os::raw::c_char; 32usize], + pub byRes: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MIME_DATA() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 568usize, + concat!("Size of: ", stringify!(tagNET_DVR_MIME_DATA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MIME_DATA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byContentType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIME_DATA), + "::", + stringify!(byContentType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIME_DATA), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpContent) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIME_DATA), + "::", + stringify!(lpContent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwContentSize) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIME_DATA), + "::", + stringify!(dwContentSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sContentID) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIME_DATA), + "::", + stringify!(sContentID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIME_DATA), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MIME_DATA = tagNET_DVR_MIME_DATA; +pub type LPNET_DVR_MIME_DATA = *mut tagNET_DVR_MIME_DATA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_XML_CONFIG_INPUT { + pub dwSize: DWORD, + pub lpRequestUrl: *mut ::std::os::raw::c_void, + pub dwRequestUrlLen: DWORD, + pub lpInBuffer: *mut ::std::os::raw::c_void, + pub dwInBufferSize: DWORD, + pub dwRecvTimeOut: DWORD, + pub byForceEncrpt: BYTE, + pub byNumOfMultiPart: BYTE, + pub byMIMEType: BYTE, + pub byRes1: BYTE, + pub dwSendTimeOut: DWORD, + pub byRes: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_XML_CONFIG_INPUT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_XML_CONFIG_INPUT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_XML_CONFIG_INPUT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_XML_CONFIG_INPUT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpRequestUrl) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_XML_CONFIG_INPUT), + "::", + stringify!(lpRequestUrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRequestUrlLen) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_XML_CONFIG_INPUT), + "::", + stringify!(dwRequestUrlLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpInBuffer) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_XML_CONFIG_INPUT), + "::", + stringify!(lpInBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInBufferSize) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_XML_CONFIG_INPUT), + "::", + stringify!(dwInBufferSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecvTimeOut) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_XML_CONFIG_INPUT), + "::", + stringify!(dwRecvTimeOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byForceEncrpt) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_XML_CONFIG_INPUT), + "::", + stringify!(byForceEncrpt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNumOfMultiPart) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_XML_CONFIG_INPUT), + "::", + stringify!(byNumOfMultiPart) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMIMEType) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_XML_CONFIG_INPUT), + "::", + stringify!(byMIMEType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 43usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_XML_CONFIG_INPUT), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSendTimeOut) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_XML_CONFIG_INPUT), + "::", + stringify!(dwSendTimeOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_XML_CONFIG_INPUT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_XML_CONFIG_INPUT = tagNET_DVR_XML_CONFIG_INPUT; +pub type LPNET_DVR_XML_CONFIG_INPUT = *mut tagNET_DVR_XML_CONFIG_INPUT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_XML_CONFIG_OUTPUT { + pub dwSize: DWORD, + pub lpOutBuffer: *mut ::std::os::raw::c_void, + pub dwOutBufferSize: DWORD, + pub dwReturnedXMLSize: DWORD, + pub lpStatusBuffer: *mut ::std::os::raw::c_void, + pub dwStatusSize: DWORD, + pub lpDataBuffer: *mut ::std::os::raw::c_void, + pub byNumOfMultiPart: BYTE, + pub byRes: [BYTE; 23usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_XML_CONFIG_OUTPUT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_XML_CONFIG_OUTPUT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_XML_CONFIG_OUTPUT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_XML_CONFIG_OUTPUT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpOutBuffer) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_XML_CONFIG_OUTPUT), + "::", + stringify!(lpOutBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOutBufferSize) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_XML_CONFIG_OUTPUT), + "::", + stringify!(dwOutBufferSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwReturnedXMLSize) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_XML_CONFIG_OUTPUT), + "::", + stringify!(dwReturnedXMLSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpStatusBuffer) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_XML_CONFIG_OUTPUT), + "::", + stringify!(lpStatusBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStatusSize) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_XML_CONFIG_OUTPUT), + "::", + stringify!(dwStatusSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpDataBuffer) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_XML_CONFIG_OUTPUT), + "::", + stringify!(lpDataBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNumOfMultiPart) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_XML_CONFIG_OUTPUT), + "::", + stringify!(byNumOfMultiPart) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 49usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_XML_CONFIG_OUTPUT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_XML_CONFIG_OUTPUT = tagNET_DVR_XML_CONFIG_OUTPUT; +pub type LPNET_DVR_XML_CONFIG_OUTPUT = *mut tagNET_DVR_XML_CONFIG_OUTPUT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FORM_DATA_CFG { + pub dwSize: DWORD, + pub lpBuffer: *mut ::std::os::raw::c_void, + pub dwBufferSize: DWORD, + pub byNumOfMultiPart: BYTE, + pub byRes: [BYTE; 67usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FORM_DATA_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(tagNET_DVR_FORM_DATA_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FORM_DATA_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FORM_DATA_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpBuffer) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FORM_DATA_CFG), + "::", + stringify!(lpBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBufferSize) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FORM_DATA_CFG), + "::", + stringify!(dwBufferSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNumOfMultiPart) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FORM_DATA_CFG), + "::", + stringify!(byNumOfMultiPart) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FORM_DATA_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FORM_DATA_CFG = tagNET_DVR_FORM_DATA_CFG; +pub type LPNET_DVR_FORM_DATA_CFG = *mut tagNET_DVR_FORM_DATA_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_JSON_DATA_CFG { + pub dwSize: DWORD, + pub lpJsonData: *mut ::std::os::raw::c_void, + pub dwJsonDataSize: DWORD, + pub lpPicData: *mut ::std::os::raw::c_void, + pub dwPicDataSize: DWORD, + pub dwInfraredFacePicSize: DWORD, + pub lpInfraredFacePicBuffer: *mut ::std::os::raw::c_void, + pub byRes: [BYTE; 248usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_JSON_DATA_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 296usize, + concat!("Size of: ", stringify!(tagNET_DVR_JSON_DATA_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_JSON_DATA_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JSON_DATA_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpJsonData) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JSON_DATA_CFG), + "::", + stringify!(lpJsonData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwJsonDataSize) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JSON_DATA_CFG), + "::", + stringify!(dwJsonDataSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpPicData) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JSON_DATA_CFG), + "::", + stringify!(lpPicData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicDataSize) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JSON_DATA_CFG), + "::", + stringify!(dwPicDataSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInfraredFacePicSize) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JSON_DATA_CFG), + "::", + stringify!(dwInfraredFacePicSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpInfraredFacePicBuffer) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JSON_DATA_CFG), + "::", + stringify!(lpInfraredFacePicBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_JSON_DATA_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_JSON_DATA_CFG = tagNET_DVR_JSON_DATA_CFG; +pub type LPNET_DVR_JSON_DATA_CFG = *mut tagNET_DVR_JSON_DATA_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SIMPLE_DAYTIME { + pub byHour: BYTE, + pub byMinute: BYTE, + pub bySecond: BYTE, + pub byRes: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SIMPLE_DAYTIME() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(tagNET_DVR_SIMPLE_DAYTIME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SIMPLE_DAYTIME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHour) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIMPLE_DAYTIME), + "::", + stringify!(byHour) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMinute) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIMPLE_DAYTIME), + "::", + stringify!(byMinute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySecond) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIMPLE_DAYTIME), + "::", + stringify!(bySecond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIMPLE_DAYTIME), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SIMPLE_DAYTIME = tagNET_DVR_SIMPLE_DAYTIME; +pub type LPNET_DVR_SIMPLE_DAYTIME = *mut tagNET_DVR_SIMPLE_DAYTIME; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TIME_SEGMENT { + pub struBeginTime: NET_DVR_SIMPLE_DAYTIME, + pub struEndTime: NET_DVR_SIMPLE_DAYTIME, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TIME_SEGMENT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_TIME_SEGMENT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TIME_SEGMENT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBeginTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SEGMENT), + "::", + stringify!(struBeginTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TIME_SEGMENT), + "::", + stringify!(struEndTime) + ) + ); +} +pub type NET_DVR_TIME_SEGMENT = tagNET_DVR_TIME_SEGMENT; +pub type LPNET_DVR_TIME_SEGMENT = *mut tagNET_DVR_TIME_SEGMENT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SINGLE_PLAN_SEGMENT { + pub byEnable: BYTE, + pub byDoorStatus: BYTE, + pub byVerifyMode: BYTE, + pub byRes: [BYTE; 5usize], + pub struTimeSegment: NET_DVR_TIME_SEGMENT, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SINGLE_PLAN_SEGMENT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_SINGLE_PLAN_SEGMENT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SINGLE_PLAN_SEGMENT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_PLAN_SEGMENT), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDoorStatus) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_PLAN_SEGMENT), + "::", + stringify!(byDoorStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVerifyMode) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_PLAN_SEGMENT), + "::", + stringify!(byVerifyMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_PLAN_SEGMENT), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTimeSegment) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_PLAN_SEGMENT), + "::", + stringify!(struTimeSegment) + ) + ); +} +pub type NET_DVR_SINGLE_PLAN_SEGMENT = tagNET_DVR_SINGLE_PLAN_SEGMENT; +pub type LPNET_DVR_SINGLE_PLAN_SEGMENT = *mut tagNET_DVR_SINGLE_PLAN_SEGMENT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WEEK_PLAN_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub struPlanCfg: [[NET_DVR_SINGLE_PLAN_SEGMENT; 8usize]; 7usize], + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WEEK_PLAN_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 920usize, + concat!("Size of: ", stringify!(tagNET_DVR_WEEK_PLAN_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WEEK_PLAN_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WEEK_PLAN_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WEEK_PLAN_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WEEK_PLAN_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlanCfg) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WEEK_PLAN_CFG), + "::", + stringify!(struPlanCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 904usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WEEK_PLAN_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_WEEK_PLAN_CFG = tagNET_DVR_WEEK_PLAN_CFG; +pub type LPNET_DVR_WEEK_PLAN_CFG = *mut tagNET_DVR_WEEK_PLAN_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HOLIDAY_PLAN_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub struBeginDate: NET_DVR_DATE, + pub struEndDate: NET_DVR_DATE, + pub struPlanCfg: [NET_DVR_SINGLE_PLAN_SEGMENT; 8usize], + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HOLIDAY_PLAN_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 160usize, + concat!("Size of: ", stringify!(tagNET_DVR_HOLIDAY_PLAN_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HOLIDAY_PLAN_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_PLAN_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_PLAN_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_PLAN_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBeginDate) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_PLAN_CFG), + "::", + stringify!(struBeginDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndDate) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_PLAN_CFG), + "::", + stringify!(struEndDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlanCfg) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_PLAN_CFG), + "::", + stringify!(struPlanCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_PLAN_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_HOLIDAY_PLAN_CFG = tagNET_DVR_HOLIDAY_PLAN_CFG; +pub type LPNET_DVR_HOLIDAY_PLAN_CFG = *mut tagNET_DVR_HOLIDAY_PLAN_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HOLIDAY_PLAN_COND { + pub dwSize: DWORD, + pub dwHolidayPlanNumber: DWORD, + pub wLocalControllerID: WORD, + pub byRes: [BYTE; 106usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HOLIDAY_PLAN_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 116usize, + concat!("Size of: ", stringify!(tagNET_DVR_HOLIDAY_PLAN_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HOLIDAY_PLAN_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_PLAN_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHolidayPlanNumber) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_PLAN_COND), + "::", + stringify!(dwHolidayPlanNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalControllerID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_PLAN_COND), + "::", + stringify!(wLocalControllerID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_PLAN_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_HOLIDAY_PLAN_COND = tagNET_DVR_HOLIDAY_PLAN_COND; +pub type LPNET_DVR_HOLIDAY_PLAN_COND = *mut tagNET_DVR_HOLIDAY_PLAN_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WEEK_PLAN_COND { + pub dwSize: DWORD, + pub dwWeekPlanNumber: DWORD, + pub wLocalControllerID: WORD, + pub byRes: [BYTE; 106usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WEEK_PLAN_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 116usize, + concat!("Size of: ", stringify!(tagNET_DVR_WEEK_PLAN_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WEEK_PLAN_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WEEK_PLAN_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWeekPlanNumber) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WEEK_PLAN_COND), + "::", + stringify!(dwWeekPlanNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalControllerID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WEEK_PLAN_COND), + "::", + stringify!(wLocalControllerID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WEEK_PLAN_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WEEK_PLAN_COND = tagNET_DVR_WEEK_PLAN_COND; +pub type LPNET_DVR_WEEK_PLAN_COND = *mut tagNET_DVR_WEEK_PLAN_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HOLIDAY_GROUP_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub byGroupName: [BYTE; 32usize], + pub dwHolidayPlanNo: [DWORD; 16usize], + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HOLIDAY_GROUP_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_HOLIDAY_GROUP_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HOLIDAY_GROUP_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_GROUP_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_GROUP_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_GROUP_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGroupName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_GROUP_CFG), + "::", + stringify!(byGroupName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHolidayPlanNo) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_GROUP_CFG), + "::", + stringify!(dwHolidayPlanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_GROUP_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_HOLIDAY_GROUP_CFG = tagNET_DVR_HOLIDAY_GROUP_CFG; +pub type LPNET_DVR_HOLIDAY_GROUP_CFG = *mut tagNET_DVR_HOLIDAY_GROUP_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HOLIDAY_GROUP_COND { + pub dwSize: DWORD, + pub dwHolidayGroupNumber: DWORD, + pub wLocalControllerID: WORD, + pub byRes: [BYTE; 106usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HOLIDAY_GROUP_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 116usize, + concat!("Size of: ", stringify!(tagNET_DVR_HOLIDAY_GROUP_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HOLIDAY_GROUP_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_GROUP_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHolidayGroupNumber) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_GROUP_COND), + "::", + stringify!(dwHolidayGroupNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalControllerID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_GROUP_COND), + "::", + stringify!(wLocalControllerID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOLIDAY_GROUP_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_HOLIDAY_GROUP_COND = tagNET_DVR_HOLIDAY_GROUP_COND; +pub type LPNET_DVR_HOLIDAY_GROUP_COND = *mut tagNET_DVR_HOLIDAY_GROUP_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLAN_TEMPLATE { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub byTemplateName: [BYTE; 32usize], + pub dwWeekPlanNo: DWORD, + pub dwHolidayGroupNo: [DWORD; 16usize], + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLAN_TEMPLATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 140usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLAN_TEMPLATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PLAN_TEMPLATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_TEMPLATE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_TEMPLATE), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_TEMPLATE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTemplateName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_TEMPLATE), + "::", + stringify!(byTemplateName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWeekPlanNo) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_TEMPLATE), + "::", + stringify!(dwWeekPlanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHolidayGroupNo) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_TEMPLATE), + "::", + stringify!(dwHolidayGroupNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_TEMPLATE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PLAN_TEMPLATE = tagNET_DVR_PLAN_TEMPLATE; +pub type LPNET_DVR_PLAN_TEMPLATE = *mut tagNET_DVR_PLAN_TEMPLATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLAN_TEMPLATE_COND { + pub dwSize: DWORD, + pub dwPlanTemplateNumber: DWORD, + pub wLocalControllerID: WORD, + pub byRes: [BYTE; 106usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLAN_TEMPLATE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 116usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLAN_TEMPLATE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PLAN_TEMPLATE_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_TEMPLATE_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlanTemplateNumber) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_TEMPLATE_COND), + "::", + stringify!(dwPlanTemplateNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalControllerID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_TEMPLATE_COND), + "::", + stringify!(wLocalControllerID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_TEMPLATE_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PLAN_TEMPLATE_COND = tagNET_DVR_PLAN_TEMPLATE_COND; +pub type LPNET_DVR_PLAN_TEMPLATE_COND = *mut tagNET_DVR_PLAN_TEMPLATE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DOOR_STATUS_PLAN { + pub dwSize: DWORD, + pub dwTemplateNo: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DOOR_STATUS_PLAN() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_DOOR_STATUS_PLAN)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DOOR_STATUS_PLAN)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_STATUS_PLAN), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTemplateNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_STATUS_PLAN), + "::", + stringify!(dwTemplateNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_STATUS_PLAN), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DOOR_STATUS_PLAN = tagNET_DVR_DOOR_STATUS_PLAN; +pub type LPNET_DVR_DOOR_STATUS_PLAN = *mut tagNET_DVR_DOOR_STATUS_PLAN; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CARD_READER_PLAN { + pub dwSize: DWORD, + pub dwTemplateNo: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CARD_READER_PLAN() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_CARD_READER_PLAN)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CARD_READER_PLAN)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_PLAN), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTemplateNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_PLAN), + "::", + stringify!(dwTemplateNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_PLAN), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CARD_READER_PLAN = tagNET_DVR_CARD_READER_PLAN; +pub type LPNET_DVR_CARD_READER_PLAN = *mut tagNET_DVR_CARD_READER_PLAN; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _tagNET_DVR_GROUP_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub struValidPeriodCfg: NET_DVR_VALID_PERIOD_CFG, + pub byGroupName: [BYTE; 32usize], + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout__tagNET_DVR_GROUP_CFG() { + const UNINIT: ::std::mem::MaybeUninit<_tagNET_DVR_GROUP_CFG> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_tagNET_DVR_GROUP_CFG>(), + 124usize, + concat!("Size of: ", stringify!(_tagNET_DVR_GROUP_CFG)) + ); + assert_eq!( + ::std::mem::align_of::<_tagNET_DVR_GROUP_CFG>(), + 4usize, + concat!("Alignment of ", stringify!(_tagNET_DVR_GROUP_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_GROUP_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_GROUP_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_GROUP_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struValidPeriodCfg) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_GROUP_CFG), + "::", + stringify!(struValidPeriodCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGroupName) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_GROUP_CFG), + "::", + stringify!(byGroupName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_GROUP_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_GROUP_CFG = _tagNET_DVR_GROUP_CFG; +pub type LPNET_DVR_GROUP_CFG = *mut _tagNET_DVR_GROUP_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GROUP_COMBINATION_INFO { + pub byEnable: BYTE, + pub byMemberNum: BYTE, + pub bySequenceNo: BYTE, + pub byRes: BYTE, + pub dwGroupNo: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GROUP_COMBINATION_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_GROUP_COMBINATION_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_GROUP_COMBINATION_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GROUP_COMBINATION_INFO), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMemberNum) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GROUP_COMBINATION_INFO), + "::", + stringify!(byMemberNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySequenceNo) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GROUP_COMBINATION_INFO), + "::", + stringify!(bySequenceNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GROUP_COMBINATION_INFO), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGroupNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GROUP_COMBINATION_INFO), + "::", + stringify!(dwGroupNo) + ) + ); +} +pub type NET_DVR_GROUP_COMBINATION_INFO = tagNET_DVR_GROUP_COMBINATION_INFO; +pub type LPNET_DVR_GROUP_COMBINATION_INFO = *mut tagNET_DVR_GROUP_COMBINATION_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MULTI_CARD_GROUP_CFG { + pub byEnable: BYTE, + pub byEnableOfflineVerifyMode: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwTemplateNo: DWORD, + pub struGroupCombination: [NET_DVR_GROUP_COMBINATION_INFO; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MULTI_CARD_GROUP_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_MULTI_CARD_GROUP_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MULTI_CARD_GROUP_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_CARD_GROUP_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableOfflineVerifyMode) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_CARD_GROUP_CFG), + "::", + stringify!(byEnableOfflineVerifyMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_CARD_GROUP_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTemplateNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_CARD_GROUP_CFG), + "::", + stringify!(dwTemplateNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGroupCombination) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_CARD_GROUP_CFG), + "::", + stringify!(struGroupCombination) + ) + ); +} +pub type NET_DVR_MULTI_CARD_GROUP_CFG = tagNET_DVR_MULTI_CARD_GROUP_CFG; +pub type LPNET_DVR_MULTI_CARD_GROUP_CFG = *mut tagNET_DVR_MULTI_CARD_GROUP_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MULTI_CARD_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub bySwipeIntervalTimeout: BYTE, + pub byRes1: [BYTE; 2usize], + pub struGroupCfg: [NET_DVR_MULTI_CARD_GROUP_CFG; 4usize], + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MULTI_CARD_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 328usize, + concat!("Size of: ", stringify!(tagNET_DVR_MULTI_CARD_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MULTI_CARD_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_CARD_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_CARD_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySwipeIntervalTimeout) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_CARD_CFG), + "::", + stringify!(bySwipeIntervalTimeout) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_CARD_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGroupCfg) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_CARD_CFG), + "::", + stringify!(struGroupCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_CARD_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_MULTI_CARD_CFG = tagNET_DVR_MULTI_CARD_CFG; +pub type LPNET_DVR_MULTI_CARD_CFG = *mut tagNET_DVR_MULTI_CARD_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GROUP_COMBINATION_INFO_V50 { + pub byEnable: BYTE, + pub byMemberNum: BYTE, + pub bySequenceNo: BYTE, + pub byRes: BYTE, + pub dwGroupNo: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GROUP_COMBINATION_INFO_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_GROUP_COMBINATION_INFO_V50) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_GROUP_COMBINATION_INFO_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GROUP_COMBINATION_INFO_V50), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMemberNum) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GROUP_COMBINATION_INFO_V50), + "::", + stringify!(byMemberNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySequenceNo) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GROUP_COMBINATION_INFO_V50), + "::", + stringify!(bySequenceNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GROUP_COMBINATION_INFO_V50), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGroupNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GROUP_COMBINATION_INFO_V50), + "::", + stringify!(dwGroupNo) + ) + ); +} +pub type NET_DVR_GROUP_COMBINATION_INFO_V50 = tagNET_DVR_GROUP_COMBINATION_INFO_V50; +pub type LPNET_DVR_GROUP_COMBINATION_INFO_V50 = *mut tagNET_DVR_GROUP_COMBINATION_INFO_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MULTI_CARD_GROUP_CFG_V50 { + pub byEnable: BYTE, + pub byEnableOfflineVerifyMode: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwTemplateNo: DWORD, + pub struGroupCombination: [NET_DVR_GROUP_COMBINATION_INFO_V50; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MULTI_CARD_GROUP_CFG_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_MULTI_CARD_GROUP_CFG_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MULTI_CARD_GROUP_CFG_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_CARD_GROUP_CFG_V50), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableOfflineVerifyMode) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_CARD_GROUP_CFG_V50), + "::", + stringify!(byEnableOfflineVerifyMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_CARD_GROUP_CFG_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTemplateNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_CARD_GROUP_CFG_V50), + "::", + stringify!(dwTemplateNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGroupCombination) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_CARD_GROUP_CFG_V50), + "::", + stringify!(struGroupCombination) + ) + ); +} +pub type NET_DVR_MULTI_CARD_GROUP_CFG_V50 = tagNET_DVR_MULTI_CARD_GROUP_CFG_V50; +pub type LPNET_DVR_MULTI_CARD_GROUP_CFG_V50 = *mut tagNET_DVR_MULTI_CARD_GROUP_CFG_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MULTI_CARD_CFG_V50 { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub bySwipeIntervalTimeout: BYTE, + pub byRes1: [BYTE; 2usize], + pub struGroupCfg: [NET_DVR_MULTI_CARD_GROUP_CFG_V50; 20usize], + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MULTI_CARD_CFG_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1480usize, + concat!("Size of: ", stringify!(tagNET_DVR_MULTI_CARD_CFG_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MULTI_CARD_CFG_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_CARD_CFG_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_CARD_CFG_V50), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySwipeIntervalTimeout) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_CARD_CFG_V50), + "::", + stringify!(bySwipeIntervalTimeout) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_CARD_CFG_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGroupCfg) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_CARD_CFG_V50), + "::", + stringify!(struGroupCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1448usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_CARD_CFG_V50), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_MULTI_CARD_CFG_V50 = tagNET_DVR_MULTI_CARD_CFG_V50; +pub type LPNET_DVR_MULTI_CARD_CFG_V50 = *mut tagNET_DVR_MULTI_CARD_CFG_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_T1TEST_PARAMCFG { + pub dwSize: DWORD, + pub wPort: WORD, + pub byPortState: BYTE, + pub byRes: [BYTE; 61usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_T1TEST_PARAMCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(NET_DVR_T1TEST_PARAMCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_T1TEST_PARAMCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_T1TEST_PARAMCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_T1TEST_PARAMCFG), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPortState) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_T1TEST_PARAMCFG), + "::", + stringify!(byPortState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_T1TEST_PARAMCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_T1TEST_PARAMCFG = *mut NET_DVR_T1TEST_PARAMCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ANTI_SNEAK_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwStartCardReaderNo: DWORD, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ANTI_SNEAK_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_ANTI_SNEAK_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ANTI_SNEAK_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANTI_SNEAK_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANTI_SNEAK_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANTI_SNEAK_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStartCardReaderNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANTI_SNEAK_CFG), + "::", + stringify!(dwStartCardReaderNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANTI_SNEAK_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ANTI_SNEAK_CFG = tagNET_DVR_ANTI_SNEAK_CFG; +pub type LPNET_DVR_ANTI_SNEAK_CFG = *mut tagNET_DVR_ANTI_SNEAK_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CARD_READER_ANTI_SNEAK_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwFollowUpCardReader: [DWORD; 8usize], + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CARD_READER_ANTI_SNEAK_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_CARD_READER_ANTI_SNEAK_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_CARD_READER_ANTI_SNEAK_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_ANTI_SNEAK_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_ANTI_SNEAK_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_ANTI_SNEAK_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFollowUpCardReader) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_ANTI_SNEAK_CFG), + "::", + stringify!(dwFollowUpCardReader) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_ANTI_SNEAK_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CARD_READER_ANTI_SNEAK_CFG = tagNET_DVR_CARD_READER_ANTI_SNEAK_CFG; +pub type LPNET_DVR_CARD_READER_ANTI_SNEAK_CFG = *mut tagNET_DVR_CARD_READER_ANTI_SNEAK_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PHONE_DOOR_RIGHT_CFG { + pub dwSize: DWORD, + pub byOpenRight: [BYTE; 256usize], + pub byCloseRight: [BYTE; 256usize], + pub byNormalOpenRight: [BYTE; 256usize], + pub byNormalCloseRight: [BYTE; 256usize], + pub byArmRight: [BYTE; 512usize], + pub byDisarmRight: [BYTE; 512usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PHONE_DOOR_RIGHT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2308usize, + concat!("Size of: ", stringify!(tagNET_DVR_PHONE_DOOR_RIGHT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PHONE_DOOR_RIGHT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONE_DOOR_RIGHT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOpenRight) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONE_DOOR_RIGHT_CFG), + "::", + stringify!(byOpenRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCloseRight) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONE_DOOR_RIGHT_CFG), + "::", + stringify!(byCloseRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNormalOpenRight) as usize - ptr as usize }, + 516usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONE_DOOR_RIGHT_CFG), + "::", + stringify!(byNormalOpenRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNormalCloseRight) as usize - ptr as usize }, + 772usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONE_DOOR_RIGHT_CFG), + "::", + stringify!(byNormalCloseRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byArmRight) as usize - ptr as usize }, + 1028usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONE_DOOR_RIGHT_CFG), + "::", + stringify!(byArmRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDisarmRight) as usize - ptr as usize }, + 1540usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONE_DOOR_RIGHT_CFG), + "::", + stringify!(byDisarmRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2052usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PHONE_DOOR_RIGHT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PHONE_DOOR_RIGHT_CFG = tagNET_DVR_PHONE_DOOR_RIGHT_CFG; +pub type LPNET_DVR_PHONE_DOOR_RIGHT_CFG = *mut tagNET_DVR_PHONE_DOOR_RIGHT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MULTI_DOOR_INTERLOCK_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwMultiDoorGroup: [[DWORD; 8usize]; 8usize], + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MULTI_DOOR_INTERLOCK_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 328usize, + concat!("Size of: ", stringify!(tagNET_DVR_MULTI_DOOR_INTERLOCK_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MULTI_DOOR_INTERLOCK_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_DOOR_INTERLOCK_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_DOOR_INTERLOCK_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_DOOR_INTERLOCK_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMultiDoorGroup) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_DOOR_INTERLOCK_CFG), + "::", + stringify!(dwMultiDoorGroup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTI_DOOR_INTERLOCK_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_MULTI_DOOR_INTERLOCK_CFG = tagNET_DVR_MULTI_DOOR_INTERLOCK_CFG; +pub type LPNET_DVR_MULTI_DOOR_INTERLOCK_CFG = *mut tagNET_DVR_MULTI_DOOR_INTERLOCK_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CARD_READER_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byCardReaderType: BYTE, + pub byOkLedPolarity: BYTE, + pub byErrorLedPolarity: BYTE, + pub byBuzzerPolarity: BYTE, + pub bySwipeInterval: BYTE, + pub byPressTimeout: BYTE, + pub byEnableFailAlarm: BYTE, + pub byMaxReadCardFailNum: BYTE, + pub byEnableTamperCheck: BYTE, + pub byOfflineCheckTime: BYTE, + pub byFingerPrintCheckLevel: BYTE, + pub byUseLocalController: BYTE, + pub byRes1: BYTE, + pub wLocalControllerID: WORD, + pub wLocalControllerReaderID: WORD, + pub wCardReaderChannel: WORD, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CARD_READER_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_CARD_READER_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CARD_READER_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardReaderType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG), + "::", + stringify!(byCardReaderType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOkLedPolarity) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG), + "::", + stringify!(byOkLedPolarity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byErrorLedPolarity) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG), + "::", + stringify!(byErrorLedPolarity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBuzzerPolarity) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG), + "::", + stringify!(byBuzzerPolarity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySwipeInterval) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG), + "::", + stringify!(bySwipeInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPressTimeout) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG), + "::", + stringify!(byPressTimeout) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableFailAlarm) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG), + "::", + stringify!(byEnableFailAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMaxReadCardFailNum) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG), + "::", + stringify!(byMaxReadCardFailNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableTamperCheck) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG), + "::", + stringify!(byEnableTamperCheck) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOfflineCheckTime) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG), + "::", + stringify!(byOfflineCheckTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerPrintCheckLevel) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG), + "::", + stringify!(byFingerPrintCheckLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseLocalController) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG), + "::", + stringify!(byUseLocalController) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalControllerID) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG), + "::", + stringify!(wLocalControllerID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalControllerReaderID) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG), + "::", + stringify!(wLocalControllerReaderID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCardReaderChannel) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG), + "::", + stringify!(wCardReaderChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CARD_READER_CFG = tagNET_DVR_CARD_READER_CFG; +pub type LPNET_DVR_CARD_READER_CFG = *mut tagNET_DVR_CARD_READER_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CARD_READER_CFG_V50 { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byCardReaderType: BYTE, + pub byOkLedPolarity: BYTE, + pub byErrorLedPolarity: BYTE, + pub byBuzzerPolarity: BYTE, + pub bySwipeInterval: BYTE, + pub byPressTimeout: BYTE, + pub byEnableFailAlarm: BYTE, + pub byMaxReadCardFailNum: BYTE, + pub byEnableTamperCheck: BYTE, + pub byOfflineCheckTime: BYTE, + pub byFingerPrintCheckLevel: BYTE, + pub byUseLocalController: BYTE, + pub byRes1: BYTE, + pub wLocalControllerID: WORD, + pub wLocalControllerReaderID: WORD, + pub wCardReaderChannel: WORD, + pub byFingerPrintImageQuality: BYTE, + pub byFingerPrintContrastTimeOut: BYTE, + pub byFingerPrintRecogizeInterval: BYTE, + pub byFingerPrintMatchFastMode: BYTE, + pub byFingerPrintModuleSensitive: BYTE, + pub byFingerPrintModuleLightCondition: BYTE, + pub byFaceMatchThresholdN: BYTE, + pub byFaceQuality: BYTE, + pub byFaceRecogizeTimeOut: BYTE, + pub byFaceRecogizeInterval: BYTE, + pub wCardReaderFunction: WORD, + pub byCardReaderDescription: [BYTE; 32usize], + pub wFaceImageSensitometry: WORD, + pub byLivingBodyDetect: BYTE, + pub byFaceMatchThreshold1: BYTE, + pub wBuzzerTime: WORD, + pub byFaceMatch1SecurityLevel: BYTE, + pub byFaceMatchNSecurityLevel: BYTE, + pub byEnvirMode: BYTE, + pub byLiveDetLevelSet: BYTE, + pub byLiveDetAntiAttackCntLimit: BYTE, + pub byEnableLiveDetAntiAttack: BYTE, + pub bySupportDelFPByID: BYTE, + pub byFaceContrastMotionDetLevel: BYTE, + pub byDayFaceMatchThresholdN: BYTE, + pub byNightFaceMatchThresholdN: BYTE, + pub byFaceRecogizeEnable: BYTE, + pub byBlockListMatchThreshold: BYTE, + pub byRes3: BYTE, + pub byDefaultVerifyMode: BYTE, + pub dwFingerPrintCapacity: DWORD, + pub dwFingerPrintNum: DWORD, + pub byEnableFingerPrintNum: BYTE, + pub byEnableReverseCardNo: BYTE, + pub byRes2: [BYTE; 2usize], + pub dwIndependSwipeIntervals: DWORD, + pub byRes: [BYTE; 224usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CARD_READER_CFG_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 328usize, + concat!("Size of: ", stringify!(tagNET_DVR_CARD_READER_CFG_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CARD_READER_CFG_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardReaderType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byCardReaderType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOkLedPolarity) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byOkLedPolarity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byErrorLedPolarity) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byErrorLedPolarity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBuzzerPolarity) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byBuzzerPolarity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySwipeInterval) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(bySwipeInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPressTimeout) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byPressTimeout) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableFailAlarm) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byEnableFailAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMaxReadCardFailNum) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byMaxReadCardFailNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableTamperCheck) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byEnableTamperCheck) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOfflineCheckTime) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byOfflineCheckTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerPrintCheckLevel) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byFingerPrintCheckLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseLocalController) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byUseLocalController) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalControllerID) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(wLocalControllerID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalControllerReaderID) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(wLocalControllerReaderID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCardReaderChannel) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(wCardReaderChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerPrintImageQuality) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byFingerPrintImageQuality) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byFingerPrintContrastTimeOut) as usize - ptr as usize + }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byFingerPrintContrastTimeOut) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byFingerPrintRecogizeInterval) as usize - ptr as usize + }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byFingerPrintRecogizeInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerPrintMatchFastMode) as usize - ptr as usize }, + 27usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byFingerPrintMatchFastMode) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byFingerPrintModuleSensitive) as usize - ptr as usize + }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byFingerPrintModuleSensitive) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byFingerPrintModuleLightCondition) as usize - ptr as usize + }, + 29usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byFingerPrintModuleLightCondition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaceMatchThresholdN) as usize - ptr as usize }, + 30usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byFaceMatchThresholdN) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaceQuality) as usize - ptr as usize }, + 31usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byFaceQuality) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaceRecogizeTimeOut) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byFaceRecogizeTimeOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaceRecogizeInterval) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byFaceRecogizeInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCardReaderFunction) as usize - ptr as usize }, + 34usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(wCardReaderFunction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardReaderDescription) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byCardReaderDescription) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFaceImageSensitometry) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(wFaceImageSensitometry) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLivingBodyDetect) as usize - ptr as usize }, + 70usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byLivingBodyDetect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaceMatchThreshold1) as usize - ptr as usize }, + 71usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byFaceMatchThreshold1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBuzzerTime) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(wBuzzerTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaceMatch1SecurityLevel) as usize - ptr as usize }, + 74usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byFaceMatch1SecurityLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaceMatchNSecurityLevel) as usize - ptr as usize }, + 75usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byFaceMatchNSecurityLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnvirMode) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byEnvirMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLiveDetLevelSet) as usize - ptr as usize }, + 77usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byLiveDetLevelSet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLiveDetAntiAttackCntLimit) as usize - ptr as usize }, + 78usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byLiveDetAntiAttackCntLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableLiveDetAntiAttack) as usize - ptr as usize }, + 79usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byEnableLiveDetAntiAttack) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupportDelFPByID) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(bySupportDelFPByID) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byFaceContrastMotionDetLevel) as usize - ptr as usize + }, + 81usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byFaceContrastMotionDetLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDayFaceMatchThresholdN) as usize - ptr as usize }, + 82usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byDayFaceMatchThresholdN) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNightFaceMatchThresholdN) as usize - ptr as usize }, + 83usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byNightFaceMatchThresholdN) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaceRecogizeEnable) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byFaceRecogizeEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBlockListMatchThreshold) as usize - ptr as usize }, + 85usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byBlockListMatchThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDefaultVerifyMode) as usize - ptr as usize }, + 87usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byDefaultVerifyMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFingerPrintCapacity) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(dwFingerPrintCapacity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFingerPrintNum) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(dwFingerPrintNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableFingerPrintNum) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byEnableFingerPrintNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableReverseCardNo) as usize - ptr as usize }, + 97usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byEnableReverseCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 98usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIndependSwipeIntervals) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(dwIndependSwipeIntervals) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_READER_CFG_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CARD_READER_CFG_V50 = tagNET_DVR_CARD_READER_CFG_V50; +pub type LPNET_DVR_CARD_READER_CFG_V50 = *mut tagNET_DVR_CARD_READER_CFG_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FAILED_FACE_COND { + pub dwSize: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FAILED_FACE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_FAILED_FACE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FAILED_FACE_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FAILED_FACE_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FAILED_FACE_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FAILED_FACE_COND = tagNET_DVR_FAILED_FACE_COND; +pub type LPNET_DVR_FAILED_FACE_COND = *mut tagNET_DVR_FAILED_FACE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FAILED_FACE_INFO { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub byErrorCode: BYTE, + pub byRes1: [BYTE; 3usize], + pub byEmployeeNo: [BYTE; 32usize], + pub byRes: [BYTE; 92usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FAILED_FACE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 164usize, + concat!("Size of: ", stringify!(tagNET_DVR_FAILED_FACE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FAILED_FACE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FAILED_FACE_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FAILED_FACE_INFO), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byErrorCode) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FAILED_FACE_INFO), + "::", + stringify!(byErrorCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FAILED_FACE_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEmployeeNo) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FAILED_FACE_INFO), + "::", + stringify!(byEmployeeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FAILED_FACE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FAILED_FACE_INFO = tagNET_DVR_FAILED_FACE_INFO; +pub type LPNET_DVR_FAILED_FACE_INFO = *mut tagNET_DVR_FAILED_FACE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FACE_PARAM_COND { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub byEnableCardReader: [BYTE; 512usize], + pub dwFaceNum: DWORD, + pub byFaceID: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FACE_PARAM_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 680usize, + concat!("Size of: ", stringify!(tagNET_DVR_FACE_PARAM_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FACE_PARAM_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_COND), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableCardReader) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_COND), + "::", + stringify!(byEnableCardReader) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFaceNum) as usize - ptr as usize }, + 548usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_COND), + "::", + stringify!(dwFaceNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaceID) as usize - ptr as usize }, + 552usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_COND), + "::", + stringify!(byFaceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 553usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FACE_PARAM_COND = tagNET_DVR_FACE_PARAM_COND; +pub type LPNET_DVR_FACE_PARAM_COND = *mut tagNET_DVR_FACE_PARAM_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FACE_PARAM_CFG { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub dwFaceLen: DWORD, + pub pFaceBuffer: *mut ::std::os::raw::c_char, + pub byEnableCardReader: [BYTE; 512usize], + pub byFaceID: BYTE, + pub byFaceDataType: BYTE, + pub byRes: [BYTE; 126usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FACE_PARAM_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 688usize, + concat!("Size of: ", stringify!(tagNET_DVR_FACE_PARAM_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FACE_PARAM_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_CFG), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFaceLen) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_CFG), + "::", + stringify!(dwFaceLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pFaceBuffer) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_CFG), + "::", + stringify!(pFaceBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableCardReader) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_CFG), + "::", + stringify!(byEnableCardReader) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaceID) as usize - ptr as usize }, + 560usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_CFG), + "::", + stringify!(byFaceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaceDataType) as usize - ptr as usize }, + 561usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_CFG), + "::", + stringify!(byFaceDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 562usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FACE_PARAM_CFG = tagNET_DVR_FACE_PARAM_CFG; +pub type LPNET_DVR_FACE_PARAM_CFG = *mut tagNET_DVR_FACE_PARAM_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FACE_PARAM_STATUS { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub byCardReaderRecvStatus: [BYTE; 512usize], + pub byErrorMsg: [BYTE; 32usize], + pub dwCardReaderNo: DWORD, + pub byTotalStatus: BYTE, + pub byFaceID: BYTE, + pub byRes: [BYTE; 130usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FACE_PARAM_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 716usize, + concat!("Size of: ", stringify!(tagNET_DVR_FACE_PARAM_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FACE_PARAM_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_STATUS), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardReaderRecvStatus) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_STATUS), + "::", + stringify!(byCardReaderRecvStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byErrorMsg) as usize - ptr as usize }, + 548usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_STATUS), + "::", + stringify!(byErrorMsg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardReaderNo) as usize - ptr as usize }, + 580usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_STATUS), + "::", + stringify!(dwCardReaderNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTotalStatus) as usize - ptr as usize }, + 584usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_STATUS), + "::", + stringify!(byTotalStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaceID) as usize - ptr as usize }, + 585usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_STATUS), + "::", + stringify!(byFaceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 586usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FACE_PARAM_STATUS = tagNET_DVR_FACE_PARAM_STATUS; +pub type LPNET_DVR_FACE_PARAM_STATUS = *mut tagNET_DVR_FACE_PARAM_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FACE_PARAM_BYCARD { + pub byCardNo: [BYTE; 32usize], + pub byEnableCardReader: [BYTE; 512usize], + pub byFaceID: [BYTE; 2usize], + pub byRes1: [BYTE; 42usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FACE_PARAM_BYCARD() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 588usize, + concat!("Size of: ", stringify!(tagNET_DVR_FACE_PARAM_BYCARD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FACE_PARAM_BYCARD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_BYCARD), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableCardReader) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_BYCARD), + "::", + stringify!(byEnableCardReader) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaceID) as usize - ptr as usize }, + 544usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_BYCARD), + "::", + stringify!(byFaceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 546usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_BYCARD), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_FACE_PARAM_BYCARD = tagNET_DVR_FACE_PARAM_BYCARD; +pub type LPNET_DVR_FACE_PARAM_BYCARD = *mut tagNET_DVR_FACE_PARAM_BYCARD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FACE_PARAM_BYREADER { + pub dwCardReaderNo: DWORD, + pub byClearAllCard: BYTE, + pub byRes1: [BYTE; 3usize], + pub byCardNo: [BYTE; 32usize], + pub byRes: [BYTE; 548usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FACE_PARAM_BYREADER() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 588usize, + concat!("Size of: ", stringify!(tagNET_DVR_FACE_PARAM_BYREADER)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FACE_PARAM_BYREADER)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardReaderNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_BYREADER), + "::", + stringify!(dwCardReaderNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byClearAllCard) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_BYREADER), + "::", + stringify!(byClearAllCard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_BYREADER), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_BYREADER), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_BYREADER), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FACE_PARAM_BYREADER = tagNET_DVR_FACE_PARAM_BYREADER; +pub type LPNET_DVR_FACE_PARAM_BYREADER = *mut tagNET_DVR_FACE_PARAM_BYREADER; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_DEL_FACE_PARAM_MODE { + pub uLen: [BYTE; 588usize], + pub struByCard: NET_DVR_FACE_PARAM_BYCARD, + pub struByReader: NET_DVR_FACE_PARAM_BYREADER, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEL_FACE_PARAM_MODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 588usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEL_FACE_PARAM_MODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEL_FACE_PARAM_MODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_FACE_PARAM_MODE), + "::", + stringify!(uLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struByCard) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_FACE_PARAM_MODE), + "::", + stringify!(struByCard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struByReader) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_FACE_PARAM_MODE), + "::", + stringify!(struByReader) + ) + ); +} +pub type NET_DVR_DEL_FACE_PARAM_MODE = tagNET_DVR_DEL_FACE_PARAM_MODE; +pub type LPNET_DVR_DEL_FACE_PARAM_MODE = *mut tagNET_DVR_DEL_FACE_PARAM_MODE; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_FACE_PARAM_CTRL { + pub dwSize: DWORD, + pub byMode: BYTE, + pub byRes1: [BYTE; 3usize], + pub struProcessMode: NET_DVR_DEL_FACE_PARAM_MODE, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FACE_PARAM_CTRL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 660usize, + concat!("Size of: ", stringify!(tagNET_DVR_FACE_PARAM_CTRL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FACE_PARAM_CTRL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_CTRL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_CTRL), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_CTRL), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struProcessMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_CTRL), + "::", + stringify!(struProcessMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 596usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PARAM_CTRL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FACE_PARAM_CTRL = tagNET_DVR_FACE_PARAM_CTRL; +pub type LPNET_DVR_FACE_PARAM_CTRL = *mut tagNET_DVR_FACE_PARAM_CTRL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCAL_CONTROLLER_STATUS_COND { + pub dwSize: DWORD, + pub wLocalControllerID: WORD, + pub byRes: [BYTE; 306usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCAL_CONTROLLER_STATUS_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 312usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_LOCAL_CONTROLLER_STATUS_COND) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_LOCAL_CONTROLLER_STATUS_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_CONTROLLER_STATUS_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalControllerID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_CONTROLLER_STATUS_COND), + "::", + stringify!(wLocalControllerID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_CONTROLLER_STATUS_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOCAL_CONTROLLER_STATUS_COND = tagNET_DVR_LOCAL_CONTROLLER_STATUS_COND; +pub type LPNET_DVR_LOCAL_CONTROLLER_STATUS_COND = *mut tagNET_DVR_LOCAL_CONTROLLER_STATUS_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCAL_CONTROLLER_STATUS { + pub dwSize: DWORD, + pub wLocalControllerID: WORD, + pub byLocalAntiDismantleStatus: BYTE, + pub byPowerSupplyStatus: BYTE, + pub wBatteryVoltage: WORD, + pub byBatteryLowVoltage: BYTE, + pub byFireAlarm: BYTE, + pub bySerialNumber: [BYTE; 48usize], + pub byMagneticStatus: [BYTE; 32usize], + pub byDoorLockStatus: [BYTE; 32usize], + pub byCardReaderOnlineStatus: [BYTE; 64usize], + pub wLocalControllerStatus: WORD, + pub byRes2: [BYTE; 122usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCAL_CONTROLLER_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 312usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOCAL_CONTROLLER_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_LOCAL_CONTROLLER_STATUS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_CONTROLLER_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalControllerID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_CONTROLLER_STATUS), + "::", + stringify!(wLocalControllerID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalAntiDismantleStatus) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_CONTROLLER_STATUS), + "::", + stringify!(byLocalAntiDismantleStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPowerSupplyStatus) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_CONTROLLER_STATUS), + "::", + stringify!(byPowerSupplyStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBatteryVoltage) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_CONTROLLER_STATUS), + "::", + stringify!(wBatteryVoltage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBatteryLowVoltage) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_CONTROLLER_STATUS), + "::", + stringify!(byBatteryLowVoltage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFireAlarm) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_CONTROLLER_STATUS), + "::", + stringify!(byFireAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySerialNumber) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_CONTROLLER_STATUS), + "::", + stringify!(bySerialNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMagneticStatus) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_CONTROLLER_STATUS), + "::", + stringify!(byMagneticStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDoorLockStatus) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_CONTROLLER_STATUS), + "::", + stringify!(byDoorLockStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardReaderOnlineStatus) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_CONTROLLER_STATUS), + "::", + stringify!(byCardReaderOnlineStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalControllerStatus) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_CONTROLLER_STATUS), + "::", + stringify!(wLocalControllerStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 190usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_CONTROLLER_STATUS), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_LOCAL_CONTROLLER_STATUS = tagNET_DVR_LOCAL_CONTROLLER_STATUS; +pub type LPNET_DVR_LOCAL_CONTROLLER_STATUS = *mut tagNET_DVR_LOCAL_CONTROLLER_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ONLINE_LOCAL_CONTROLLER_CFG { + pub dwSize: DWORD, + pub byLocalControllerName: [BYTE; 32usize], + pub wLocalControllerID: WORD, + pub wDevPort: WORD, + pub struDevIP: NET_DVR_IPADDR, + pub struSubnetMask: NET_DVR_IPADDR, + pub struGateway: NET_DVR_IPADDR, + pub bySearchProgress: BYTE, + pub byEffectData: BYTE, + pub byRes: [BYTE; 302usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ONLINE_LOCAL_CONTROLLER_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 776usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ONLINE_LOCAL_CONTROLLER_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ONLINE_LOCAL_CONTROLLER_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINE_LOCAL_CONTROLLER_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalControllerName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINE_LOCAL_CONTROLLER_CFG), + "::", + stringify!(byLocalControllerName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalControllerID) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINE_LOCAL_CONTROLLER_CFG), + "::", + stringify!(wLocalControllerID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevPort) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINE_LOCAL_CONTROLLER_CFG), + "::", + stringify!(wDevPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevIP) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINE_LOCAL_CONTROLLER_CFG), + "::", + stringify!(struDevIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSubnetMask) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINE_LOCAL_CONTROLLER_CFG), + "::", + stringify!(struSubnetMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGateway) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINE_LOCAL_CONTROLLER_CFG), + "::", + stringify!(struGateway) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySearchProgress) as usize - ptr as usize }, + 472usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINE_LOCAL_CONTROLLER_CFG), + "::", + stringify!(bySearchProgress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEffectData) as usize - ptr as usize }, + 473usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINE_LOCAL_CONTROLLER_CFG), + "::", + stringify!(byEffectData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 474usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINE_LOCAL_CONTROLLER_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ONLINE_LOCAL_CONTROLLER_CFG = tagNET_DVR_ONLINE_LOCAL_CONTROLLER_CFG; +pub type LPNET_DVR_ONLINE_LOCAL_CONTROLLER_CFG = *mut tagNET_DVR_ONLINE_LOCAL_CONTROLLER_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ACS_WORK_STATUS { + pub dwSize: DWORD, + pub byDoorLockStatus: [BYTE; 32usize], + pub byDoorStatus: [BYTE; 32usize], + pub byMagneticStatus: [BYTE; 32usize], + pub byCaseStatus: [BYTE; 8usize], + #[doc = "�¼�������״\u{32c}��0-�����룬1-������"] + pub wBatteryVoltage: WORD, + pub byBatteryLowVoltage: BYTE, + pub byPowerSupplyStatus: BYTE, + pub byMultiDoorInterlockStatus: BYTE, + pub byAntiSneakStatus: BYTE, + pub byHostAntiDismantleStatus: BYTE, + pub byIndicatorLightStatus: BYTE, + pub byCardReaderOnlineStatus: [BYTE; 64usize], + pub byCardReaderAntiDismantleStatus: [BYTE; 64usize], + pub byCardReaderVerifyMode: [BYTE; 64usize], + pub bySetupAlarmStatus: [BYTE; 512usize], + pub byAlarmInStatus: [BYTE; 512usize], + pub byAlarmOutStatus: [BYTE; 512usize], + pub dwCardNum: DWORD, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ACS_WORK_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1880usize, + concat!("Size of: ", stringify!(tagNET_DVR_ACS_WORK_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ACS_WORK_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDoorLockStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS), + "::", + stringify!(byDoorLockStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDoorStatus) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS), + "::", + stringify!(byDoorStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMagneticStatus) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS), + "::", + stringify!(byMagneticStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseStatus) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS), + "::", + stringify!(byCaseStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBatteryVoltage) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS), + "::", + stringify!(wBatteryVoltage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBatteryLowVoltage) as usize - ptr as usize }, + 110usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS), + "::", + stringify!(byBatteryLowVoltage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPowerSupplyStatus) as usize - ptr as usize }, + 111usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS), + "::", + stringify!(byPowerSupplyStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMultiDoorInterlockStatus) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS), + "::", + stringify!(byMultiDoorInterlockStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAntiSneakStatus) as usize - ptr as usize }, + 113usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS), + "::", + stringify!(byAntiSneakStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHostAntiDismantleStatus) as usize - ptr as usize }, + 114usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS), + "::", + stringify!(byHostAntiDismantleStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIndicatorLightStatus) as usize - ptr as usize }, + 115usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS), + "::", + stringify!(byIndicatorLightStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardReaderOnlineStatus) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS), + "::", + stringify!(byCardReaderOnlineStatus) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byCardReaderAntiDismantleStatus) as usize - ptr as usize + }, + 180usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS), + "::", + stringify!(byCardReaderAntiDismantleStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardReaderVerifyMode) as usize - ptr as usize }, + 244usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS), + "::", + stringify!(byCardReaderVerifyMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySetupAlarmStatus) as usize - ptr as usize }, + 308usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS), + "::", + stringify!(bySetupAlarmStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInStatus) as usize - ptr as usize }, + 820usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS), + "::", + stringify!(byAlarmInStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutStatus) as usize - ptr as usize }, + 1332usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS), + "::", + stringify!(byAlarmOutStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardNum) as usize - ptr as usize }, + 1844usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS), + "::", + stringify!(dwCardNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1848usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ACS_WORK_STATUS = tagNET_DVR_ACS_WORK_STATUS; +pub type LPNET_DVR_ACS_WORK_STATUS = *mut tagNET_DVR_ACS_WORK_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ACS_WORK_STATUS_V50 { + pub dwSize: DWORD, + pub byDoorLockStatus: [BYTE; 256usize], + pub byDoorStatus: [BYTE; 256usize], + pub byMagneticStatus: [BYTE; 256usize], + pub byCaseStatus: [BYTE; 8usize], + pub wBatteryVoltage: WORD, + pub byBatteryLowVoltage: BYTE, + pub byPowerSupplyStatus: BYTE, + pub byMultiDoorInterlockStatus: BYTE, + pub byAntiSneakStatus: BYTE, + pub byHostAntiDismantleStatus: BYTE, + pub byIndicatorLightStatus: BYTE, + pub byCardReaderOnlineStatus: [BYTE; 512usize], + pub byCardReaderAntiDismantleStatus: [BYTE; 512usize], + pub byCardReaderVerifyMode: [BYTE; 512usize], + pub bySetupAlarmStatus: [BYTE; 512usize], + pub byAlarmInStatus: [BYTE; 512usize], + pub byAlarmOutStatus: [BYTE; 512usize], + pub dwCardNum: DWORD, + pub byFireAlarmStatus: BYTE, + pub byBatteryChargeStatus: BYTE, + pub byMasterChannelControllerStatus: BYTE, + pub bySlaveChannelControllerStatus: BYTE, + pub byAntiSneakServerStatus: BYTE, + pub byRes3: [BYTE; 3usize], + pub dwAllowFaceNum: DWORD, + pub dwBlockFaceNum: DWORD, + pub byRes2: [BYTE; 108usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ACS_WORK_STATUS_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 3988usize, + concat!("Size of: ", stringify!(tagNET_DVR_ACS_WORK_STATUS_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ACS_WORK_STATUS_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDoorLockStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(byDoorLockStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDoorStatus) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(byDoorStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMagneticStatus) as usize - ptr as usize }, + 516usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(byMagneticStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseStatus) as usize - ptr as usize }, + 772usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(byCaseStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBatteryVoltage) as usize - ptr as usize }, + 780usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(wBatteryVoltage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBatteryLowVoltage) as usize - ptr as usize }, + 782usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(byBatteryLowVoltage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPowerSupplyStatus) as usize - ptr as usize }, + 783usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(byPowerSupplyStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMultiDoorInterlockStatus) as usize - ptr as usize }, + 784usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(byMultiDoorInterlockStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAntiSneakStatus) as usize - ptr as usize }, + 785usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(byAntiSneakStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHostAntiDismantleStatus) as usize - ptr as usize }, + 786usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(byHostAntiDismantleStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIndicatorLightStatus) as usize - ptr as usize }, + 787usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(byIndicatorLightStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardReaderOnlineStatus) as usize - ptr as usize }, + 788usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(byCardReaderOnlineStatus) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byCardReaderAntiDismantleStatus) as usize - ptr as usize + }, + 1300usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(byCardReaderAntiDismantleStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardReaderVerifyMode) as usize - ptr as usize }, + 1812usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(byCardReaderVerifyMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySetupAlarmStatus) as usize - ptr as usize }, + 2324usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(bySetupAlarmStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInStatus) as usize - ptr as usize }, + 2836usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(byAlarmInStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutStatus) as usize - ptr as usize }, + 3348usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(byAlarmOutStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardNum) as usize - ptr as usize }, + 3860usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(dwCardNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFireAlarmStatus) as usize - ptr as usize }, + 3864usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(byFireAlarmStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBatteryChargeStatus) as usize - ptr as usize }, + 3865usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(byBatteryChargeStatus) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byMasterChannelControllerStatus) as usize - ptr as usize + }, + 3866usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(byMasterChannelControllerStatus) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).bySlaveChannelControllerStatus) as usize - ptr as usize + }, + 3867usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(bySlaveChannelControllerStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAntiSneakServerStatus) as usize - ptr as usize }, + 3868usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(byAntiSneakServerStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 3869usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAllowFaceNum) as usize - ptr as usize }, + 3872usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(dwAllowFaceNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBlockFaceNum) as usize - ptr as usize }, + 3876usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(dwBlockFaceNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 3880usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_WORK_STATUS_V50), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ACS_WORK_STATUS_V50 = tagNET_DVR_ACS_WORK_STATUS_V50; +pub type LPNET_DVR_ACS_WORK_STATUS_V50 = *mut tagNET_DVR_ACS_WORK_STATUS_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CASE_SENSOR_CFG { + pub dwSize: DWORD, + pub byHostBuzzer: BYTE, + pub byRes1: [BYTE; 3usize], + pub byCardReaderBuzzer: [BYTE; 64usize], + pub byAssociateAlarmOut: [BYTE; 512usize], + pub byDoorOpen: [BYTE; 32usize], + pub byDoorClose: [BYTE; 32usize], + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CASE_SENSOR_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 712usize, + concat!("Size of: ", stringify!(tagNET_DVR_CASE_SENSOR_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CASE_SENSOR_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CASE_SENSOR_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHostBuzzer) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CASE_SENSOR_CFG), + "::", + stringify!(byHostBuzzer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CASE_SENSOR_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardReaderBuzzer) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CASE_SENSOR_CFG), + "::", + stringify!(byCardReaderBuzzer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAssociateAlarmOut) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CASE_SENSOR_CFG), + "::", + stringify!(byAssociateAlarmOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDoorOpen) as usize - ptr as usize }, + 584usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CASE_SENSOR_CFG), + "::", + stringify!(byDoorOpen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDoorClose) as usize - ptr as usize }, + 616usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CASE_SENSOR_CFG), + "::", + stringify!(byDoorClose) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 648usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CASE_SENSOR_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CASE_SENSOR_CFG = tagNET_DVR_CASE_SENSOR_CFG; +pub type LPNET_DVR_CASE_SENSOR_CFG = *mut tagNET_DVR_CASE_SENSOR_CFG; +pub const _ENUM_UPGRADE_TYPE_ENUM_UPGRADE_DVR: _ENUM_UPGRADE_TYPE = 0; +pub const _ENUM_UPGRADE_TYPE_ENUM_UPGRADE_ADAPTER: _ENUM_UPGRADE_TYPE = 1; +pub const _ENUM_UPGRADE_TYPE_ENUM_UPGRADE_VCALIB: _ENUM_UPGRADE_TYPE = 2; +pub const _ENUM_UPGRADE_TYPE_ENUM_UPGRADE_OPTICAL: _ENUM_UPGRADE_TYPE = 3; +pub const _ENUM_UPGRADE_TYPE_ENUM_UPGRADE_ACS: _ENUM_UPGRADE_TYPE = 4; +pub const _ENUM_UPGRADE_TYPE_ENUM_UPGRADE_AUXILIARY_DEV: _ENUM_UPGRADE_TYPE = 5; +pub const _ENUM_UPGRADE_TYPE_ENUM_UPGRADE_LED: _ENUM_UPGRADE_TYPE = 6; +pub const _ENUM_UPGRADE_TYPE_ENUM_UPGRADE_INTELLIGENT: _ENUM_UPGRADE_TYPE = 7; +pub const _ENUM_UPGRADE_TYPE_ENUM_UPGRADE_CUSTOM: _ENUM_UPGRADE_TYPE = 8; +pub type _ENUM_UPGRADE_TYPE = ::std::os::raw::c_uint; +pub use self::_ENUM_UPGRADE_TYPE as ENUM_UPGRADE_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ACS_EVENT_INFO { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub byCardType: BYTE, + pub byAllowListNo: BYTE, + pub byReportChannel: BYTE, + pub byCardReaderKind: BYTE, + pub dwCardReaderNo: DWORD, + pub dwDoorNo: DWORD, + pub dwVerifyNo: DWORD, + pub dwAlarmInNo: DWORD, + pub dwAlarmOutNo: DWORD, + pub dwCaseSensorNo: DWORD, + pub dwRs485No: DWORD, + pub dwMultiCardGroupNo: DWORD, + pub wAccessChannel: WORD, + pub byDeviceNo: BYTE, + pub byDistractControlNo: BYTE, + pub dwEmployeeNo: DWORD, + pub wLocalControllerID: WORD, + pub byInternetAccess: BYTE, + pub byType: BYTE, + pub byMACAddr: [BYTE; 6usize], + pub bySwipeCardType: BYTE, + pub byMask: BYTE, + pub dwSerialNo: DWORD, + pub byChannelControllerID: BYTE, + pub byChannelControllerLampID: BYTE, + pub byChannelControllerIRAdaptorID: BYTE, + pub byChannelControllerIREmitterID: BYTE, + pub byHelmet: BYTE, + pub byRes: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ACS_EVENT_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 104usize, + concat!("Size of: ", stringify!(tagNET_DVR_ACS_EVENT_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ACS_EVENT_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(byCardType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAllowListNo) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(byAllowListNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReportChannel) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(byReportChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardReaderKind) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(byCardReaderKind) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardReaderNo) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(dwCardReaderNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDoorNo) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(dwDoorNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVerifyNo) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(dwVerifyNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmInNo) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(dwAlarmInNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmOutNo) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(dwAlarmOutNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCaseSensorNo) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(dwCaseSensorNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRs485No) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(dwRs485No) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMultiCardGroupNo) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(dwMultiCardGroupNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAccessChannel) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(wAccessChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceNo) as usize - ptr as usize }, + 74usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(byDeviceNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDistractControlNo) as usize - ptr as usize }, + 75usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(byDistractControlNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEmployeeNo) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(dwEmployeeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalControllerID) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(wLocalControllerID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInternetAccess) as usize - ptr as usize }, + 82usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(byInternetAccess) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 83usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMACAddr) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(byMACAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySwipeCardType) as usize - ptr as usize }, + 90usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(bySwipeCardType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMask) as usize - ptr as usize }, + 91usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(byMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSerialNo) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(dwSerialNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannelControllerID) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(byChannelControllerID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannelControllerLampID) as usize - ptr as usize }, + 97usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(byChannelControllerLampID) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byChannelControllerIRAdaptorID) as usize - ptr as usize + }, + 98usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(byChannelControllerIRAdaptorID) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byChannelControllerIREmitterID) as usize - ptr as usize + }, + 99usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(byChannelControllerIREmitterID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHelmet) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(byHelmet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 101usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ACS_EVENT_INFO = tagNET_DVR_ACS_EVENT_INFO; +pub type LPNET_DVR_ACS_EVENT_INFO = *mut tagNET_DVR_ACS_EVENT_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ACS_EVENT_INFO_EXTEND { + pub dwFrontSerialNo: DWORD, + pub byUserType: BYTE, + pub byCurrentVerifyMode: BYTE, + pub byCurrentEvent: BYTE, + pub byPurePwdVerifyEnable: BYTE, + pub byEmployeeNo: [BYTE; 32usize], + pub byAttendanceStatus: BYTE, + pub byStatusValue: BYTE, + pub byRes2: [BYTE; 2usize], + pub byUUID: [BYTE; 36usize], + pub byDeviceName: [BYTE; 64usize], + pub byRes: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ACS_EVENT_INFO_EXTEND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 168usize, + concat!("Size of: ", stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFrontSerialNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND), + "::", + stringify!(dwFrontSerialNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUserType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND), + "::", + stringify!(byUserType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCurrentVerifyMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND), + "::", + stringify!(byCurrentVerifyMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCurrentEvent) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND), + "::", + stringify!(byCurrentEvent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPurePwdVerifyEnable) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND), + "::", + stringify!(byPurePwdVerifyEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEmployeeNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND), + "::", + stringify!(byEmployeeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAttendanceStatus) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND), + "::", + stringify!(byAttendanceStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatusValue) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND), + "::", + stringify!(byStatusValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUUID) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND), + "::", + stringify!(byUUID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceName) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND), + "::", + stringify!(byDeviceName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ACS_EVENT_INFO_EXTEND = tagNET_DVR_ACS_EVENT_INFO_EXTEND; +pub type LPNET_DVR_ACS_EVENT_INFO_EXTEND = *mut tagNET_DVR_ACS_EVENT_INFO_EXTEND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20 { + pub byRemoteCheck: BYTE, + pub byThermometryUnit: BYTE, + pub byIsAbnomalTemperature: BYTE, + pub byRes2: BYTE, + pub fCurrTemperature: f32, + pub struRegionCoordinates: NET_VCA_POINT, + pub dwQRCodeInfoLen: DWORD, + pub dwVisibleLightDataLen: DWORD, + pub dwThermalDataLen: DWORD, + pub pQRCodeInfo: *mut ::std::os::raw::c_char, + pub pVisibleLightData: *mut ::std::os::raw::c_char, + pub pThermalData: *mut ::std::os::raw::c_char, + pub byAttendanceLabel: [BYTE; 64usize], + pub wXCoordinate: WORD, + pub wYCoordinate: WORD, + pub wWidth: WORD, + pub wHeight: WORD, + pub byHealthCode: BYTE, + pub byNADCode: BYTE, + pub byTravelCode: BYTE, + pub byVaccineStatus: BYTE, + pub byRes: [BYTE; 948usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1080usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRemoteCheck) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20), + "::", + stringify!(byRemoteCheck) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byThermometryUnit) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20), + "::", + stringify!(byThermometryUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsAbnomalTemperature) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20), + "::", + stringify!(byIsAbnomalTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fCurrTemperature) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20), + "::", + stringify!(fCurrTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegionCoordinates) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20), + "::", + stringify!(struRegionCoordinates) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwQRCodeInfoLen) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20), + "::", + stringify!(dwQRCodeInfoLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVisibleLightDataLen) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20), + "::", + stringify!(dwVisibleLightDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwThermalDataLen) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20), + "::", + stringify!(dwThermalDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pQRCodeInfo) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20), + "::", + stringify!(pQRCodeInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pVisibleLightData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20), + "::", + stringify!(pVisibleLightData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pThermalData) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20), + "::", + stringify!(pThermalData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAttendanceLabel) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20), + "::", + stringify!(byAttendanceLabel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wXCoordinate) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20), + "::", + stringify!(wXCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wYCoordinate) as usize - ptr as usize }, + 122usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20), + "::", + stringify!(wYCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wWidth) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20), + "::", + stringify!(wWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHeight) as usize - ptr as usize }, + 126usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20), + "::", + stringify!(wHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHealthCode) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20), + "::", + stringify!(byHealthCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNADCode) as usize - ptr as usize }, + 129usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20), + "::", + stringify!(byNADCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTravelCode) as usize - ptr as usize }, + 130usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20), + "::", + stringify!(byTravelCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVaccineStatus) as usize - ptr as usize }, + 131usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20), + "::", + stringify!(byVaccineStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ACS_EVENT_INFO_EXTEND_V20 = tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20; +pub type LPNET_DVR_ACS_EVENT_INFO_EXTEND_V20 = *mut tagNET_DVR_ACS_EVENT_INFO_EXTEND_V20; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ACS_ALARM_INFO { + pub dwSize: DWORD, + pub dwMajor: DWORD, + pub dwMinor: DWORD, + pub struTime: NET_DVR_TIME, + pub sNetUser: [BYTE; 16usize], + pub struRemoteHostAddr: NET_DVR_IPADDR, + pub struAcsEventInfo: NET_DVR_ACS_EVENT_INFO, + pub dwPicDataLen: DWORD, + pub pPicData: *mut ::std::os::raw::c_char, + pub wInductiveEventType: WORD, + pub byPicTransType: BYTE, + pub byRes1: BYTE, + pub dwIOTChannelNo: DWORD, + pub pAcsEventInfoExtend: *mut ::std::os::raw::c_char, + pub byAcsEventInfoExtend: BYTE, + pub byTimeType: BYTE, + pub byRes2: BYTE, + pub byAcsEventInfoExtendV20: BYTE, + pub pAcsEventInfoExtendV20: *mut ::std::os::raw::c_char, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ACS_ALARM_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 352usize, + concat!("Size of: ", stringify!(tagNET_DVR_ACS_ALARM_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ACS_ALARM_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_ALARM_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMajor) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_ALARM_INFO), + "::", + stringify!(dwMajor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMinor) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_ALARM_INFO), + "::", + stringify!(dwMinor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_ALARM_INFO), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sNetUser) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_ALARM_INFO), + "::", + stringify!(sNetUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRemoteHostAddr) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_ALARM_INFO), + "::", + stringify!(struRemoteHostAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAcsEventInfo) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_ALARM_INFO), + "::", + stringify!(struAcsEventInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicDataLen) as usize - ptr as usize }, + 300usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_ALARM_INFO), + "::", + stringify!(dwPicDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPicData) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_ALARM_INFO), + "::", + stringify!(pPicData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInductiveEventType) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_ALARM_INFO), + "::", + stringify!(wInductiveEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicTransType) as usize - ptr as usize }, + 314usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_ALARM_INFO), + "::", + stringify!(byPicTransType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 315usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_ALARM_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIOTChannelNo) as usize - ptr as usize }, + 316usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_ALARM_INFO), + "::", + stringify!(dwIOTChannelNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pAcsEventInfoExtend) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_ALARM_INFO), + "::", + stringify!(pAcsEventInfoExtend) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAcsEventInfoExtend) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_ALARM_INFO), + "::", + stringify!(byAcsEventInfoExtend) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeType) as usize - ptr as usize }, + 329usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_ALARM_INFO), + "::", + stringify!(byTimeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 330usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_ALARM_INFO), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAcsEventInfoExtendV20) as usize - ptr as usize }, + 331usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_ALARM_INFO), + "::", + stringify!(byAcsEventInfoExtendV20) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pAcsEventInfoExtendV20) as usize - ptr as usize }, + 336usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_ALARM_INFO), + "::", + stringify!(pAcsEventInfoExtendV20) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 344usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_ALARM_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ACS_ALARM_INFO = tagNET_DVR_ACS_ALARM_INFO; +pub type LPNET_DVR_ACS_ALARM_INFO = *mut tagNET_DVR_ACS_ALARM_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUDIO_ACTIVATION_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwChanNo: DWORD, + pub bySensitivity: BYTE, + pub byPriority: BYTE, + pub wDelayTime: WORD, + pub byRes2: BYTE, + pub byEnablePreset: BYTE, + pub wPreset: WORD, + pub wBase: WORD, + pub byRes3: [BYTE; 2usize], + pub byVoChanNo: [BYTE; 9usize], + pub byRes: [BYTE; 255usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUDIO_ACTIVATION_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 288usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUDIO_ACTIVATION_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AUDIO_ACTIVATION_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_ACTIVATION_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_ACTIVATION_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_ACTIVATION_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChanNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_ACTIVATION_CFG), + "::", + stringify!(dwChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_ACTIVATION_CFG), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPriority) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_ACTIVATION_CFG), + "::", + stringify!(byPriority) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDelayTime) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_ACTIVATION_CFG), + "::", + stringify!(wDelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_ACTIVATION_CFG), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnablePreset) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_ACTIVATION_CFG), + "::", + stringify!(byEnablePreset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPreset) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_ACTIVATION_CFG), + "::", + stringify!(wPreset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBase) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_ACTIVATION_CFG), + "::", + stringify!(wBase) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_ACTIVATION_CFG), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVoChanNo) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_ACTIVATION_CFG), + "::", + stringify!(byVoChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_ACTIVATION_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AUDIO_ACTIVATION_CFG = tagNET_DVR_AUDIO_ACTIVATION_CFG; +pub type LPNET_DVR_AUDIO_ACTIVATION_CFG = *mut tagNET_DVR_AUDIO_ACTIVATION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INFRARED_OUTPUT_CTRL_CFG { + pub dwSize: DWORD, + pub byIROutPort: BYTE, + pub byIRCmdIndex: BYTE, + pub byRes: [BYTE; 254usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INFRARED_OUTPUT_CTRL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(tagNET_DVR_INFRARED_OUTPUT_CTRL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_INFRARED_OUTPUT_CTRL_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INFRARED_OUTPUT_CTRL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIROutPort) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INFRARED_OUTPUT_CTRL_CFG), + "::", + stringify!(byIROutPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIRCmdIndex) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INFRARED_OUTPUT_CTRL_CFG), + "::", + stringify!(byIRCmdIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INFRARED_OUTPUT_CTRL_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INFRARED_OUTPUT_CTRL_CFG = tagNET_DVR_INFRARED_OUTPUT_CTRL_CFG; +pub type LPNET_DVR_INFRARED_OUTPUT_CTRL_CFG = *mut tagNET_DVR_INFRARED_OUTPUT_CTRL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INFRARED_CMD_INFO { + pub sCmdName: [::std::os::raw::c_char; 32usize], + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INFRARED_CMD_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_INFRARED_CMD_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INFRARED_CMD_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCmdName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INFRARED_CMD_INFO), + "::", + stringify!(sCmdName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INFRARED_CMD_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INFRARED_CMD_INFO = tagNET_DVR_INFRARED_CMD_INFO; +pub type LPNET_DVR_INFRARED_CMD_INFO = *mut tagNET_DVR_INFRARED_CMD_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INFRARED_LEARN_CODE_CFG_ { + pub dwSize: DWORD, + pub sIROutName: [BYTE; 32usize], + pub struIRCmdInfo: [NET_DVR_INFRARED_CMD_INFO; 32usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INFRARED_LEARN_CODE_CFG_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1572usize, + concat!("Size of: ", stringify!(tagNET_DVR_INFRARED_LEARN_CODE_CFG_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_INFRARED_LEARN_CODE_CFG_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INFRARED_LEARN_CODE_CFG_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sIROutName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INFRARED_LEARN_CODE_CFG_), + "::", + stringify!(sIROutName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIRCmdInfo) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INFRARED_LEARN_CODE_CFG_), + "::", + stringify!(struIRCmdInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1316usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INFRARED_LEARN_CODE_CFG_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INFRARED_CMD_NAME_CFG = tagNET_DVR_INFRARED_LEARN_CODE_CFG_; +pub type LPNET_DVR_INFRARED_CMD_NAME_CFG = *mut tagNET_DVR_INFRARED_LEARN_CODE_CFG_; +pub const tagIR_LEARN_SEND_DATA_TYPE_ENUM_ENUM_SENDDATA: tagIR_LEARN_SEND_DATA_TYPE_ENUM = 0; +pub const tagIR_LEARN_SEND_DATA_TYPE_ENUM_ENUM_SEND_LEARN_IR_CMD_START: + tagIR_LEARN_SEND_DATA_TYPE_ENUM = 1; +pub const tagIR_LEARN_SEND_DATA_TYPE_ENUM_ENUM_SEND_LEARN_IR_CMD_END: + tagIR_LEARN_SEND_DATA_TYPE_ENUM = 2; +pub type tagIR_LEARN_SEND_DATA_TYPE_ENUM = ::std::os::raw::c_uint; +pub use self::tagIR_LEARN_SEND_DATA_TYPE_ENUM as IR_LEARN_SEND_DATA_TYPE_ENUM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INFRARED_LEARN_INFO { + pub dwSize: DWORD, + pub byIROutPort: BYTE, + pub byIRCmdIndex: BYTE, + pub byRes: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INFRARED_LEARN_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_INFRARED_LEARN_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INFRARED_LEARN_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INFRARED_LEARN_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIROutPort) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INFRARED_LEARN_INFO), + "::", + stringify!(byIROutPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIRCmdIndex) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INFRARED_LEARN_INFO), + "::", + stringify!(byIRCmdIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INFRARED_LEARN_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INFRARED_LEARN_INFO = tagNET_DVR_INFRARED_LEARN_INFO; +pub type LPNET_DVR_INFRARED_LEARN_INFO = *mut tagNET_DVR_INFRARED_LEARN_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INFRARED_LEARN_END { + pub dwSize: DWORD, + pub bySaveLearnInfo: BYTE, + pub byRes: [BYTE; 255usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INFRARED_LEARN_END() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(tagNET_DVR_INFRARED_LEARN_END)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INFRARED_LEARN_END)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INFRARED_LEARN_END), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySaveLearnInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INFRARED_LEARN_END), + "::", + stringify!(bySaveLearnInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INFRARED_LEARN_END), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INFRARED_LEARN_END = tagNET_DVR_INFRARED_LEARN_END; +pub type LPNET_DVR_INFRARED_LEARN_END = *mut tagNET_DVR_INFRARED_LEARN_END; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIDEOIN_TYPE_INFO { + pub wInType: WORD, + pub wInNum: WORD, + pub wStartNo: WORD, + pub byRes: [BYTE; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEOIN_TYPE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEOIN_TYPE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VIDEOIN_TYPE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOIN_TYPE_INFO), + "::", + stringify!(wInType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInNum) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOIN_TYPE_INFO), + "::", + stringify!(wInNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStartNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOIN_TYPE_INFO), + "::", + stringify!(wStartNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOIN_TYPE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VIDEOIN_TYPE_INFO = tagNET_DVR_VIDEOIN_TYPE_INFO; +pub type LPNET_DVR_VIDEOIN_TYPE_INFO = *mut tagNET_DVR_VIDEOIN_TYPE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRIAL_SYSTEM_INFO { + pub dwSize: DWORD, + pub byVideoInTypeNum: BYTE, + pub byRes1: [BYTE; 3usize], + pub struVideoIn: [NET_DVR_VIDEOIN_TYPE_INFO; 10usize], + pub byRes: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRIAL_SYSTEM_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 640usize, + concat!("Size of: ", stringify!(tagNET_DVR_TRIAL_SYSTEM_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TRIAL_SYSTEM_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRIAL_SYSTEM_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoInTypeNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRIAL_SYSTEM_INFO), + "::", + stringify!(byVideoInTypeNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRIAL_SYSTEM_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVideoIn) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRIAL_SYSTEM_INFO), + "::", + stringify!(struVideoIn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRIAL_SYSTEM_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TRIAL_SYSTEM_INFO = tagNET_DVR_TRIAL_SYSTEM_INFO; +pub type LPNET_DVR_TRIAL_SYSTEM_INFO = *mut tagNET_DVR_TRIAL_SYSTEM_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CASE_INFO { + pub dwSize: DWORD, + pub byCaseNo: [BYTE; 64usize], + pub byCaseName: [BYTE; 128usize], + pub byLitigant1: [BYTE; 32usize], + pub byLitigant2: [BYTE; 32usize], + pub byChiefJudge: [BYTE; 32usize], + pub byCaseType: BYTE, + pub byShowCaseInfoTime: BYTE, + pub byRes1: [BYTE; 2usize], + pub sCaseTypeCustom: [::std::os::raw::c_char; 32usize], + pub byRes: [BYTE; 220usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CASE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 548usize, + concat!("Size of: ", stringify!(tagNET_DVR_CASE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CASE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CASE_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CASE_INFO), + "::", + stringify!(byCaseNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseName) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CASE_INFO), + "::", + stringify!(byCaseName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLitigant1) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CASE_INFO), + "::", + stringify!(byLitigant1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLitigant2) as usize - ptr as usize }, + 228usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CASE_INFO), + "::", + stringify!(byLitigant2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChiefJudge) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CASE_INFO), + "::", + stringify!(byChiefJudge) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaseType) as usize - ptr as usize }, + 292usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CASE_INFO), + "::", + stringify!(byCaseType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShowCaseInfoTime) as usize - ptr as usize }, + 293usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CASE_INFO), + "::", + stringify!(byShowCaseInfoTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 294usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CASE_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCaseTypeCustom) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CASE_INFO), + "::", + stringify!(sCaseTypeCustom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CASE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CASE_INFO = tagNET_DVR_CASE_INFO; +pub type LPNET_DVR_CASE_INFO = *mut tagNET_DVR_CASE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_REMOTE_PLAY_ { + pub dwSize: DWORD, + pub byFileName: [BYTE; 32usize], + pub byVideoOut: [BYTE; 7usize], + pub byRes1: [BYTE; 5usize], + pub byType: BYTE, + pub byRes: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_REMOTE_PLAY_() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_REMOTE_PLAY_> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_REMOTE_PLAY_>(), + 80usize, + concat!("Size of: ", stringify!(_NET_DVR_REMOTE_PLAY_)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_REMOTE_PLAY_>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_REMOTE_PLAY_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_REMOTE_PLAY_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_REMOTE_PLAY_), + "::", + stringify!(byFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoOut) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_REMOTE_PLAY_), + "::", + stringify!(byVideoOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 43usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_REMOTE_PLAY_), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_REMOTE_PLAY_), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 49usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_REMOTE_PLAY_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_REMOTE_PLAY = _NET_DVR_REMOTE_PLAY_; +pub type LPNET_DVR_REMOTE_PLAY = *mut _NET_DVR_REMOTE_PLAY_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_TRIAL_MICROPHONE_STATUS { + pub dwSize: DWORD, + pub byMicrophoneStatus: [BYTE; 16usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_TRIAL_MICROPHONE_STATUS() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_TRIAL_MICROPHONE_STATUS> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_TRIAL_MICROPHONE_STATUS>(), + 52usize, + concat!("Size of: ", stringify!(_NET_DVR_TRIAL_MICROPHONE_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_TRIAL_MICROPHONE_STATUS>(), + 4usize, + concat!( + "Alignment of ", + stringify!(_NET_DVR_TRIAL_MICROPHONE_STATUS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_TRIAL_MICROPHONE_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMicrophoneStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_TRIAL_MICROPHONE_STATUS), + "::", + stringify!(byMicrophoneStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_TRIAL_MICROPHONE_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TRIAL_MICROPHONE_STATUS = _NET_DVR_TRIAL_MICROPHONE_STATUS; +pub type LPNET_DVR_TRIAL_MICROPHONE_STATUS = *mut _NET_DVR_TRIAL_MICROPHONE_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_TRIAL_HOST_STATUS { + pub dwSize: DWORD, + pub dwFanSpeed: [DWORD; 8usize], + pub wMainBoardTemp: [WORD; 8usize], + pub byFpgaTempWarn: [BYTE; 8usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_TRIAL_HOST_STATUS() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_TRIAL_HOST_STATUS> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_TRIAL_HOST_STATUS>(), + 92usize, + concat!("Size of: ", stringify!(_NET_DVR_TRIAL_HOST_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_TRIAL_HOST_STATUS>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_TRIAL_HOST_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_TRIAL_HOST_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFanSpeed) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_TRIAL_HOST_STATUS), + "::", + stringify!(dwFanSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMainBoardTemp) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_TRIAL_HOST_STATUS), + "::", + stringify!(wMainBoardTemp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFpgaTempWarn) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_TRIAL_HOST_STATUS), + "::", + stringify!(byFpgaTempWarn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_TRIAL_HOST_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TRIAL_HOST_STATUS = _NET_DVR_TRIAL_HOST_STATUS; +pub type LPNET_DVR_TRIAL_HOST_STATUS = *mut _NET_DVR_TRIAL_HOST_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_LOCAL_INPUT_INFO_ { + pub dwSize: DWORD, + pub byChannelName: [BYTE; 32usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_LOCAL_INPUT_INFO_() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_LOCAL_INPUT_INFO_> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_LOCAL_INPUT_INFO_>(), + 68usize, + concat!("Size of: ", stringify!(_NET_DVR_LOCAL_INPUT_INFO_)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_LOCAL_INPUT_INFO_>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_LOCAL_INPUT_INFO_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_LOCAL_INPUT_INFO_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannelName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_LOCAL_INPUT_INFO_), + "::", + stringify!(byChannelName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_LOCAL_INPUT_INFO_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOCAL_INPUT_INFO = _NET_DVR_LOCAL_INPUT_INFO_; +pub type LPNET_DVR_LOCAL_INPUT_INFO = *mut _NET_DVR_LOCAL_INPUT_INFO_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LAMP_STATUS { + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub byLampName: [BYTE; 32usize], + pub byLampState1: [BYTE; 32usize], + pub byLampState2: [BYTE; 32usize], + pub byLampState3: [BYTE; 32usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LAMP_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 164usize, + concat!("Size of: ", stringify!(tagNET_DVR_LAMP_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LAMP_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_STATUS), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_STATUS), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLampName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_STATUS), + "::", + stringify!(byLampName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLampState1) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_STATUS), + "::", + stringify!(byLampState1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLampState2) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_STATUS), + "::", + stringify!(byLampState2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLampState3) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_STATUS), + "::", + stringify!(byLampState3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LAMP_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LAMP_STATUS = tagNET_DVR_LAMP_STATUS; +pub type LPNET_DVR_LAMP_STATUS = *mut tagNET_DVR_LAMP_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_LAMP_OUT { + pub dwSize: DWORD, + pub struLampInfo: [NET_DVR_LAMP_STATUS; 2usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_LAMP_OUT() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_LAMP_OUT> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_LAMP_OUT>(), + 588usize, + concat!("Size of: ", stringify!(_NET_DVR_LAMP_OUT)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_LAMP_OUT>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_LAMP_OUT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_LAMP_OUT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLampInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_LAMP_OUT), + "::", + stringify!(struLampInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 332usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_LAMP_OUT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LAMP_OUT = _NET_DVR_LAMP_OUT; +pub type LPNET_DVR_LAMP_OUT = *mut _NET_DVR_LAMP_OUT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_LAMP_CONTROL { + pub dwSize: DWORD, + pub byLampNo: BYTE, + pub byLampStateNo: BYTE, + pub byRes: [BYTE; 14usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_LAMP_CONTROL() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_LAMP_CONTROL> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_LAMP_CONTROL>(), + 20usize, + concat!("Size of: ", stringify!(_NET_DVR_LAMP_CONTROL)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_LAMP_CONTROL>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_LAMP_CONTROL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_LAMP_CONTROL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLampNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_LAMP_CONTROL), + "::", + stringify!(byLampNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLampStateNo) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_LAMP_CONTROL), + "::", + stringify!(byLampStateNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_LAMP_CONTROL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LAMP_CONTROL = _NET_DVR_LAMP_CONTROL; +pub type LPNET_DVR_LAMP_CONTROL = *mut _NET_DVR_LAMP_CONTROL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TPS_PARAM { + pub byStart: BYTE, + pub byCMD: BYTE, + pub wSpaceHeadway: WORD, + pub wDeviceID: WORD, + pub wDataLen: WORD, + pub byLane: BYTE, + pub bySpeed: BYTE, + pub byLaneState: BYTE, + pub byQueueLen: BYTE, + pub wLoopState: WORD, + pub wStateMask: WORD, + pub dwDownwardFlow: DWORD, + pub dwUpwardFlow: DWORD, + pub byJamLevel: BYTE, + pub byVehicleDirection: BYTE, + pub byJamFlow: BYTE, + pub byChannelizationLane: BYTE, + pub byVehicleType: BYTE, + pub byRes1: [BYTE; 5usize], + pub wTimeHeadway: WORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TPS_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_TPS_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TPS_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStart) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_PARAM), + "::", + stringify!(byStart) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCMD) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_PARAM), + "::", + stringify!(byCMD) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSpaceHeadway) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_PARAM), + "::", + stringify!(wSpaceHeadway) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDeviceID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_PARAM), + "::", + stringify!(wDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDataLen) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_PARAM), + "::", + stringify!(wDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLane) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_PARAM), + "::", + stringify!(byLane) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpeed) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_PARAM), + "::", + stringify!(bySpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneState) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_PARAM), + "::", + stringify!(byLaneState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byQueueLen) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_PARAM), + "::", + stringify!(byQueueLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLoopState) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_PARAM), + "::", + stringify!(wLoopState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStateMask) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_PARAM), + "::", + stringify!(wStateMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDownwardFlow) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_PARAM), + "::", + stringify!(dwDownwardFlow) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwUpwardFlow) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_PARAM), + "::", + stringify!(dwUpwardFlow) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJamLevel) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_PARAM), + "::", + stringify!(byJamLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleDirection) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_PARAM), + "::", + stringify!(byVehicleDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJamFlow) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_PARAM), + "::", + stringify!(byJamFlow) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannelizationLane) as usize - ptr as usize }, + 27usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_PARAM), + "::", + stringify!(byChannelizationLane) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleType) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_PARAM), + "::", + stringify!(byVehicleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 29usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTimeHeadway) as usize - ptr as usize }, + 34usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_PARAM), + "::", + stringify!(wTimeHeadway) + ) + ); +} +pub type NET_DVR_TPS_PARAM = tagNET_DVR_TPS_PARAM; +pub type LPNET_DVR_TPS_PARAM = *mut tagNET_DVR_TPS_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TPS_REAL_TIME_INFO { + pub dwSize: DWORD, + pub dwChan: DWORD, + pub struTime: NET_DVR_TIME_V30, + pub struTPSRealTimeInfo: NET_DVR_TPS_PARAM, + pub pAddInfoBuffer: *mut BYTE, + pub byAddInfoFlag: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwDeviceIDEx: DWORD, + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TPS_REAL_TIME_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_TPS_REAL_TIME_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TPS_REAL_TIME_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_REAL_TIME_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_REAL_TIME_INFO), + "::", + stringify!(dwChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_REAL_TIME_INFO), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTPSRealTimeInfo) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_REAL_TIME_INFO), + "::", + stringify!(struTPSRealTimeInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pAddInfoBuffer) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_REAL_TIME_INFO), + "::", + stringify!(pAddInfoBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddInfoFlag) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_REAL_TIME_INFO), + "::", + stringify!(byAddInfoFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 65usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_REAL_TIME_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeviceIDEx) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_REAL_TIME_INFO), + "::", + stringify!(dwDeviceIDEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_REAL_TIME_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TPS_REAL_TIME_INFO = tagNET_DVR_TPS_REAL_TIME_INFO; +pub type LPNET_DVR_TPS_REAL_TIME_INFO = *mut tagNET_DVR_TPS_REAL_TIME_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TPS_LANE_PARAM { + pub byLane: BYTE, + pub bySpeed: BYTE, + pub wArrivalFlow: WORD, + pub dwLightVehicle: DWORD, + pub dwMidVehicle: DWORD, + pub dwHeavyVehicle: DWORD, + pub dwTimeHeadway: DWORD, + pub dwSpaceHeadway: DWORD, + pub fSpaceOccupyRation: f32, + pub fTimeOccupyRation: f32, + pub byStoppingTimes: BYTE, + pub byQueueLen: BYTE, + pub byFlag: BYTE, + pub byVehicelNum: BYTE, + pub wDelay: WORD, + pub byRes1: [BYTE; 6usize], + pub dwNonMotor: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TPS_LANE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_DVR_TPS_LANE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TPS_LANE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLane) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_LANE_PARAM), + "::", + stringify!(byLane) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpeed) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_LANE_PARAM), + "::", + stringify!(bySpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wArrivalFlow) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_LANE_PARAM), + "::", + stringify!(wArrivalFlow) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLightVehicle) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_LANE_PARAM), + "::", + stringify!(dwLightVehicle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMidVehicle) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_LANE_PARAM), + "::", + stringify!(dwMidVehicle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHeavyVehicle) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_LANE_PARAM), + "::", + stringify!(dwHeavyVehicle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTimeHeadway) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_LANE_PARAM), + "::", + stringify!(dwTimeHeadway) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSpaceHeadway) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_LANE_PARAM), + "::", + stringify!(dwSpaceHeadway) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fSpaceOccupyRation) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_LANE_PARAM), + "::", + stringify!(fSpaceOccupyRation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fTimeOccupyRation) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_LANE_PARAM), + "::", + stringify!(fTimeOccupyRation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStoppingTimes) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_LANE_PARAM), + "::", + stringify!(byStoppingTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byQueueLen) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_LANE_PARAM), + "::", + stringify!(byQueueLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlag) as usize - ptr as usize }, + 34usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_LANE_PARAM), + "::", + stringify!(byFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicelNum) as usize - ptr as usize }, + 35usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_LANE_PARAM), + "::", + stringify!(byVehicelNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDelay) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_LANE_PARAM), + "::", + stringify!(wDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_LANE_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNonMotor) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_LANE_PARAM), + "::", + stringify!(dwNonMotor) + ) + ); +} +pub type NET_DVR_TPS_LANE_PARAM = tagNET_DVR_TPS_LANE_PARAM; +pub type LPNET_DVR_TPS_LANE_PARAM = *mut tagNET_DVR_TPS_LANE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PANORAMA_LINKAGE { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PANORAMA_LINKAGE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_PANORAMA_LINKAGE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PANORAMA_LINKAGE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PANORAMA_LINKAGE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PANORAMA_LINKAGE), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PANORAMA_LINKAGE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PANORAMA_LINKAGE = tagNET_DVR_PANORAMA_LINKAGE; +pub type LPNET_DVR_PANORAMA_LINKAGE = *mut tagNET_DVR_PANORAMA_LINKAGE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TPS_STATISTICS_PARAM { + pub byStart: BYTE, + pub byCMD: BYTE, + pub byRes: [BYTE; 2usize], + pub wDeviceID: WORD, + pub wDataLen: WORD, + pub byTotalLaneNum: BYTE, + pub byRes2: [BYTE; 3usize], + pub dwDeviceIDEx: DWORD, + pub byRes1: [BYTE; 8usize], + pub struStartTime: NET_DVR_TIME_V30, + pub dwSamplePeriod: DWORD, + pub struLaneParam: [NET_DVR_TPS_LANE_PARAM; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TPS_STATISTICS_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 424usize, + concat!("Size of: ", stringify!(tagNET_DVR_TPS_STATISTICS_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TPS_STATISTICS_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStart) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_STATISTICS_PARAM), + "::", + stringify!(byStart) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCMD) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_STATISTICS_PARAM), + "::", + stringify!(byCMD) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_STATISTICS_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDeviceID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_STATISTICS_PARAM), + "::", + stringify!(wDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDataLen) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_STATISTICS_PARAM), + "::", + stringify!(wDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTotalLaneNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_STATISTICS_PARAM), + "::", + stringify!(byTotalLaneNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_STATISTICS_PARAM), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeviceIDEx) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_STATISTICS_PARAM), + "::", + stringify!(dwDeviceIDEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_STATISTICS_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_STATISTICS_PARAM), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSamplePeriod) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_STATISTICS_PARAM), + "::", + stringify!(dwSamplePeriod) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLaneParam) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_STATISTICS_PARAM), + "::", + stringify!(struLaneParam) + ) + ); +} +pub type NET_DVR_TPS_STATISTICS_PARAM = tagNET_DVR_TPS_STATISTICS_PARAM; +pub type LPNET_DVR_TPS_STATISTICS_PARAM = *mut tagNET_DVR_TPS_STATISTICS_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TPS_STATISTICS_INFO { + pub dwSize: DWORD, + pub dwChan: DWORD, + pub struTPSStatisticsInfo: NET_DVR_TPS_STATISTICS_PARAM, + pub dwJsonLen: DWORD, + pub pJsonBuf: *mut BYTE, + pub byJsonInfoFlag: BYTE, + pub byBrokenNetHttp: BYTE, + pub byRes: [BYTE; 114usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TPS_STATISTICS_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 568usize, + concat!("Size of: ", stringify!(tagNET_DVR_TPS_STATISTICS_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TPS_STATISTICS_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_STATISTICS_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_STATISTICS_INFO), + "::", + stringify!(dwChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTPSStatisticsInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_STATISTICS_INFO), + "::", + stringify!(struTPSStatisticsInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwJsonLen) as usize - ptr as usize }, + 432usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_STATISTICS_INFO), + "::", + stringify!(dwJsonLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pJsonBuf) as usize - ptr as usize }, + 440usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_STATISTICS_INFO), + "::", + stringify!(pJsonBuf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJsonInfoFlag) as usize - ptr as usize }, + 448usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_STATISTICS_INFO), + "::", + stringify!(byJsonInfoFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrokenNetHttp) as usize - ptr as usize }, + 449usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_STATISTICS_INFO), + "::", + stringify!(byBrokenNetHttp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 450usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_STATISTICS_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TPS_STATISTICS_INFO = tagNET_DVR_TPS_STATISTICS_INFO; +pub type LPNET_DVR_TPS_STATISTICS_INFO = *mut tagNET_DVR_TPS_STATISTICS_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DPC_PARAM { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub wCtrlType: WORD, + pub byDPCMode: BYTE, + pub byRes: BYTE, + pub struPoint: NET_VCA_POINT, + pub byRes1: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DPC_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 84usize, + concat!("Size of: ", stringify!(tagNET_DVR_DPC_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DPC_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DPC_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DPC_PARAM), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCtrlType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DPC_PARAM), + "::", + stringify!(wCtrlType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDPCMode) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DPC_PARAM), + "::", + stringify!(byDPCMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DPC_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPoint) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DPC_PARAM), + "::", + stringify!(struPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DPC_PARAM), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_DPC_PARAM = tagNET_DVR_DPC_PARAM; +pub type LPNET_DVR_DPC_PARAM = *mut tagNET_DVR_DPC_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FFC_MANUAL_INFO { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FFC_MANUAL_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_FFC_MANUAL_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FFC_MANUAL_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FFC_MANUAL_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FFC_MANUAL_INFO), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FFC_MANUAL_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FFC_MANUAL_INFO = tagNET_DVR_FFC_MANUAL_INFO; +pub type LPNET_DVR_FFC_MANUAL_INFO = *mut tagNET_DVR_FFC_MANUAL_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FFC_BACKCOMP_INFO { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FFC_BACKCOMP_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_FFC_BACKCOMP_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FFC_BACKCOMP_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FFC_BACKCOMP_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FFC_BACKCOMP_INFO), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FFC_BACKCOMP_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FFC_BACKCOMP_INFO = tagNET_DVR_FFC_BACKCOMP_INFO; +pub type LPNET_DVR_FFC_BACKCOMP_INFO = *mut tagNET_DVR_FFC_BACKCOMP_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_STORAGE_SERVER_SWITCH_CFG { + pub dwSize: DWORD, + pub byPicEnable: [BYTE; 64usize], + pub byAddInfoEnable: [BYTE; 64usize], + pub byRes: [BYTE; 324usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STORAGE_SERVER_SWITCH_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 456usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_STORAGE_SERVER_SWITCH_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_STORAGE_SERVER_SWITCH_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_SERVER_SWITCH_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_SERVER_SWITCH_CFG), + "::", + stringify!(byPicEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddInfoEnable) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_SERVER_SWITCH_CFG), + "::", + stringify!(byAddInfoEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_SERVER_SWITCH_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_STORAGE_SERVER_SWITCH_CFG = tagNET_DVR_STORAGE_SERVER_SWITCH_CFG; +pub type LPNET_DVR_STORAGE_SERVER_SWITCH_CFG = *mut tagNET_DVR_STORAGE_SERVER_SWITCH_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FORCESTOP_FORENSICS_CFG { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FORCESTOP_FORENSICS_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_FORCESTOP_FORENSICS_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FORCESTOP_FORENSICS_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FORCESTOP_FORENSICS_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FORCESTOP_FORENSICS_CFG), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FORCESTOP_FORENSICS_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FORCESTOP_FORENSICS_CFG = tagNET_DVR_FORCESTOP_FORENSICS_CFG; +pub type LPNET_DVR_FORCESTOP_FORENSICS_CFG = *mut tagNET_DVR_FORCESTOP_FORENSICS_CFG; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_DEC_VCA_ALARM { + pub dwSize: DWORD, + pub dwDisplayNo: DWORD, + pub bySubWinNo: BYTE, + pub byRes1: [BYTE; 3usize], + pub struTime: NET_DVR_TIME_V30, + pub struSourceInfo: NET_DVR_PU_STREAM_CFG_V41, + pub byAlarmPic: *mut BYTE, + pub dwAlarmPicSize: DWORD, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEC_VCA_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 480usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEC_VCA_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEC_VCA_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_VCA_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDisplayNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_VCA_ALARM), + "::", + stringify!(dwDisplayNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubWinNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_VCA_ALARM), + "::", + stringify!(bySubWinNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_VCA_ALARM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_VCA_ALARM), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSourceInfo) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_VCA_ALARM), + "::", + stringify!(struSourceInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmPic) as usize - ptr as usize }, + 400usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_VCA_ALARM), + "::", + stringify!(byAlarmPic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmPicSize) as usize - ptr as usize }, + 408usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_VCA_ALARM), + "::", + stringify!(dwAlarmPicSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 412usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_VCA_ALARM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DEC_VCA_ALARM = tagNET_DVR_DEC_VCA_ALARM; +pub type LPNET_DVR_DEC_VCA_ALARM = *mut tagNET_DVR_DEC_VCA_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEC_VCA_ALARM_LOGO { + pub byEnableLogo: BYTE, + pub byFlash: BYTE, + pub wFlashTime: WORD, + pub dwLogoX: DWORD, + pub dwLogoY: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEC_VCA_ALARM_LOGO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEC_VCA_ALARM_LOGO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEC_VCA_ALARM_LOGO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableLogo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_VCA_ALARM_LOGO), + "::", + stringify!(byEnableLogo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlash) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_VCA_ALARM_LOGO), + "::", + stringify!(byFlash) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFlashTime) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_VCA_ALARM_LOGO), + "::", + stringify!(wFlashTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLogoX) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_VCA_ALARM_LOGO), + "::", + stringify!(dwLogoX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLogoY) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_VCA_ALARM_LOGO), + "::", + stringify!(dwLogoY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_VCA_ALARM_LOGO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DEC_VCA_ALARM_LOGO = tagNET_DVR_DEC_VCA_ALARM_LOGO; +pub type LPNET_DVR_DEC_VCA_ALARM_LOGO = *mut tagNET_DVR_DEC_VCA_ALARM_LOGO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEC_VCA_ALARM_PIC { + pub byUploadPic: BYTE, + pub byOverlayTargetInfo: BYTE, + pub byOverlayRuleInfo: BYTE, + pub byPicQuality: BYTE, + pub byPicSize: BYTE, + pub byRes: [BYTE; 27usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEC_VCA_ALARM_PIC() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEC_VCA_ALARM_PIC)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEC_VCA_ALARM_PIC)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUploadPic) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_VCA_ALARM_PIC), + "::", + stringify!(byUploadPic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverlayTargetInfo) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_VCA_ALARM_PIC), + "::", + stringify!(byOverlayTargetInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverlayRuleInfo) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_VCA_ALARM_PIC), + "::", + stringify!(byOverlayRuleInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicQuality) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_VCA_ALARM_PIC), + "::", + stringify!(byPicQuality) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicSize) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_VCA_ALARM_PIC), + "::", + stringify!(byPicSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_VCA_ALARM_PIC), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DEC_VCA_ALARM_PIC = tagNET_DVR_DEC_VCA_ALARM_PIC; +pub type LPNET_DVR_DEC_VCA_ALARM_PIC = *mut tagNET_DVR_DEC_VCA_ALARM_PIC; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEC_VCA_ALARM_CFG { + pub dwSize: DWORD, + pub struAlarmLogo: NET_DVR_DEC_VCA_ALARM_LOGO, + pub struAlarmPic: NET_DVR_DEC_VCA_ALARM_PIC, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEC_VCA_ALARM_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEC_VCA_ALARM_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEC_VCA_ALARM_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_VCA_ALARM_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmLogo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_VCA_ALARM_CFG), + "::", + stringify!(struAlarmLogo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmPic) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_VCA_ALARM_CFG), + "::", + stringify!(struAlarmPic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEC_VCA_ALARM_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VCA_ALARM_CFG = tagNET_DVR_DEC_VCA_ALARM_CFG; +pub type LPNET_DVR_DEC_VCA_ALARM_CFG = *mut tagNET_DVR_DEC_VCA_ALARM_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OUTPUT_PIC_INFO { + pub dwSize: DWORD, + pub sPicName: [BYTE; 32usize], + pub byUsed: BYTE, + pub byRes: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OUTPUT_PIC_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_OUTPUT_PIC_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OUTPUT_PIC_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_PIC_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPicName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_PIC_INFO), + "::", + stringify!(sPicName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUsed) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_PIC_INFO), + "::", + stringify!(byUsed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_PIC_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_OUTPUT_PIC_INFO = tagNET_DVR_OUTPUT_PIC_INFO; +pub type LPNET_DVR_OUTPUT_PIC_INFO = *mut tagNET_DVR_OUTPUT_PIC_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OUTPUT_PIC_CFG { + pub dwSize: DWORD, + pub dwOutputPicNo: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub struRect: NET_DVR_RECTCFG_EX, + pub byFlash: BYTE, + pub byTranslucent: BYTE, + pub byRes2: [BYTE; 2usize], + pub dwOutputPicWinNo: DWORD, + pub byRes3: [BYTE; 28usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OUTPUT_PIC_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_OUTPUT_PIC_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OUTPUT_PIC_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_PIC_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOutputPicNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_PIC_CFG), + "::", + stringify!(dwOutputPicNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_PIC_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_PIC_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRect) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_PIC_CFG), + "::", + stringify!(struRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlash) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_PIC_CFG), + "::", + stringify!(byFlash) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTranslucent) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_PIC_CFG), + "::", + stringify!(byTranslucent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 34usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_PIC_CFG), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOutputPicWinNo) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_PIC_CFG), + "::", + stringify!(dwOutputPicWinNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_PIC_CFG), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_OUTPUT_PIC_CFG = tagNET_DVR_OUTPUT_PIC_CFG; +pub type LPNET_DVR_OUTPUT_PIC_CFG = *mut tagNET_DVR_OUTPUT_PIC_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OUTPUT_OSD_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byFontSize: BYTE, + pub byOSDColor: BYTE, + pub byRes1: [BYTE; 1usize], + pub byOsdContent: [BYTE; 64usize], + pub struRect: NET_DVR_RECTCFG_EX, + pub dwOsdWinNo: DWORD, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OUTPUT_OSD_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_DVR_OUTPUT_OSD_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OUTPUT_OSD_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_OSD_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_OSD_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFontSize) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_OSD_CFG), + "::", + stringify!(byFontSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOSDColor) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_OSD_CFG), + "::", + stringify!(byOSDColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_OSD_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOsdContent) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_OSD_CFG), + "::", + stringify!(byOsdContent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRect) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_OSD_CFG), + "::", + stringify!(struRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOsdWinNo) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_OSD_CFG), + "::", + stringify!(dwOsdWinNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_OSD_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_OUTPUT_OSD_CFG = tagNET_DVR_OUTPUT_OSD_CFG; +pub type LPNET_DVR_OUTPUT_OSD_CFG = *mut tagNET_DVR_OUTPUT_OSD_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CHAN_RELATION_RESOURCE { + pub dwSize: DWORD, + pub dwDisplayChan: DWORD, + pub byRelateAudio: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwSubWinNo: DWORD, + pub dwChannel: DWORD, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CHAN_RELATION_RESOURCE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 52usize, + concat!("Size of: ", stringify!(tagNET_DVR_CHAN_RELATION_RESOURCE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_CHAN_RELATION_RESOURCE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_RELATION_RESOURCE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDisplayChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_RELATION_RESOURCE), + "::", + stringify!(dwDisplayChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelateAudio) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_RELATION_RESOURCE), + "::", + stringify!(byRelateAudio) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_RELATION_RESOURCE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSubWinNo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_RELATION_RESOURCE), + "::", + stringify!(dwSubWinNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_RELATION_RESOURCE), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHAN_RELATION_RESOURCE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CHAN_RELATION_RESOURCE = tagNET_DVR_CHAN_RELATION_RESOURCE; +pub type LPNET_DVR_CHAN_RELATION_RESOURCE = *mut tagNET_DVR_CHAN_RELATION_RESOURCE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARM_CHAN_ABLITITY { + pub dwSize: DWORD, + pub bySensorChan: [BYTE; 64usize], + pub byAlarmInChan: [BYTE; 64usize], + pub byAlarmOutChan: [BYTE; 64usize], + pub by485Chan: [BYTE; 64usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARM_CHAN_ABLITITY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 388usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARM_CHAN_ABLITITY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARM_CHAN_ABLITITY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_CHAN_ABLITITY), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensorChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_CHAN_ABLITITY), + "::", + stringify!(bySensorChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInChan) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_CHAN_ABLITITY), + "::", + stringify!(byAlarmInChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutChan) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_CHAN_ABLITITY), + "::", + stringify!(byAlarmOutChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).by485Chan) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_CHAN_ABLITITY), + "::", + stringify!(by485Chan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_CHAN_ABLITITY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARM_CHAN_ABLITITY = tagNET_DVR_ALARM_CHAN_ABLITITY; +pub type LPNET_DVR_ALARM_CHAN_ABLITITY = *mut tagNET_DVR_ALARM_CHAN_ABLITITY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_OUT_SCALE_CFG { + pub dwSize: DWORD, + pub byOutScale: [BYTE; 8usize], + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_OUT_SCALE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28usize, + concat!("Size of: ", stringify!(NET_DVR_OUT_SCALE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_OUT_SCALE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_OUT_SCALE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutScale) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_OUT_SCALE_CFG), + "::", + stringify!(byOutScale) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_OUT_SCALE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_OUT_SCALE_CFG = *mut NET_DVR_OUT_SCALE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MONITOR_LOCATION_COND { + pub dwSize: DWORD, + pub dwChan: DWORD, + pub byRelateType: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MONITOR_LOCATION_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_MONITOR_LOCATION_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MONITOR_LOCATION_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_LOCATION_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_LOCATION_COND), + "::", + stringify!(dwChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelateType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_LOCATION_COND), + "::", + stringify!(byRelateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_LOCATION_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MONITOR_LOCATION_COND = tagNET_DVR_MONITOR_LOCATION_COND; +pub type LPNET_DVR_MONITOR_LOCATION_COND = *mut tagNET_DVR_MONITOR_LOCATION_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MONITOR_LOCATION_CFG { + pub dwSize: DWORD, + pub byMonitoringSiteID: [BYTE; 48usize], + pub byDeviceID: [BYTE; 48usize], + pub byDirectionNo: BYTE, + pub byRes1: [BYTE; 3usize], + pub byMonitorInfo: [BYTE; 48usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MONITOR_LOCATION_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 280usize, + concat!("Size of: ", stringify!(tagNET_DVR_MONITOR_LOCATION_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MONITOR_LOCATION_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_LOCATION_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonitoringSiteID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_LOCATION_CFG), + "::", + stringify!(byMonitoringSiteID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_LOCATION_CFG), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDirectionNo) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_LOCATION_CFG), + "::", + stringify!(byDirectionNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 101usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_LOCATION_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonitorInfo) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_LOCATION_CFG), + "::", + stringify!(byMonitorInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MONITOR_LOCATION_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MONITOR_LOCATION_CFG = tagNET_DVR_MONITOR_LOCATION_CFG; +pub type LPNET_DVR_MONITOR_LOCATION_CFG = *mut tagNET_DVR_MONITOR_LOCATION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REMOTECONTROL_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REMOTECONTROL_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_REMOTECONTROL_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_REMOTECONTROL_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROL_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROL_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROL_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_REMOTECONTROL_COND = tagNET_DVR_REMOTECONTROL_COND; +pub type LPNET_DVR_REMOTECONTROL_COND = *mut tagNET_DVR_REMOTECONTROL_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REMOTECONTROL_STATUS_ { + pub dwSize: DWORD, + pub byAlarmStatus: BYTE, + pub byRes: [BYTE; 3usize], + pub wAlarmDealyTime: WORD, + pub wDisAlarmDealyTime: WORD, + pub byRes1: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REMOTECONTROL_STATUS_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_REMOTECONTROL_STATUS_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_REMOTECONTROL_STATUS_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROL_STATUS_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROL_STATUS_), + "::", + stringify!(byAlarmStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROL_STATUS_), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAlarmDealyTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROL_STATUS_), + "::", + stringify!(wAlarmDealyTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDisAlarmDealyTime) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROL_STATUS_), + "::", + stringify!(wDisAlarmDealyTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROL_STATUS_), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_REMOTECONTROL_STATUS = tagNET_DVR_REMOTECONTROL_STATUS_; +pub type LPNET_DVR_REMOTECONTROL_STATUS = *mut tagNET_DVR_REMOTECONTROL_STATUS_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SECURITY_CFG { + pub dwSize: DWORD, + pub byCommuMode: BYTE, + pub byRes1: [BYTE; 2usize], + pub byWebAuthentication: BYTE, + pub byRtspAuthentication: BYTE, + pub byTelnetServer: BYTE, + pub bySSHServer: BYTE, + pub byIllegalLoginLock: BYTE, + pub byStreamEncryption: BYTE, + pub byAntiAttack: BYTE, + pub byRes: [BYTE; 26usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SECURITY_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_SECURITY_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SECURITY_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SECURITY_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCommuMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SECURITY_CFG), + "::", + stringify!(byCommuMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SECURITY_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWebAuthentication) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SECURITY_CFG), + "::", + stringify!(byWebAuthentication) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRtspAuthentication) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SECURITY_CFG), + "::", + stringify!(byRtspAuthentication) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTelnetServer) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SECURITY_CFG), + "::", + stringify!(byTelnetServer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySSHServer) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SECURITY_CFG), + "::", + stringify!(bySSHServer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIllegalLoginLock) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SECURITY_CFG), + "::", + stringify!(byIllegalLoginLock) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamEncryption) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SECURITY_CFG), + "::", + stringify!(byStreamEncryption) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAntiAttack) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SECURITY_CFG), + "::", + stringify!(byAntiAttack) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SECURITY_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SECURITY_CFG = tagNET_DVR_SECURITY_CFG; +pub type LPNET_DVR_SECURITY_CFG = *mut tagNET_DVR_SECURITY_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PASSWORD_MANAGE_CFG { + pub dwSize: DWORD, + pub byRes: [BYTE; 3usize], + pub byLockCount: BYTE, + pub dwLockTime: DWORD, + pub byRes1: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PASSWORD_MANAGE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 140usize, + concat!("Size of: ", stringify!(tagNET_DVR_PASSWORD_MANAGE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PASSWORD_MANAGE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSWORD_MANAGE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSWORD_MANAGE_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLockCount) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSWORD_MANAGE_CFG), + "::", + stringify!(byLockCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLockTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSWORD_MANAGE_CFG), + "::", + stringify!(dwLockTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSWORD_MANAGE_CFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_PASSWORD_MANAGE_CFG = tagNET_DVR_PASSWORD_MANAGE_CFG; +pub type LPNET_DVR_PASSWORD_MANAGE_CFG = *mut tagNET_DVR_PASSWORD_MANAGE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_UNLOCK_INFO { + pub dwSize: DWORD, + pub byUnlockType: BYTE, + pub byIPVersion: BYTE, + pub byRes1: [BYTE; 2usize], + pub struIPAddr: NET_DVR_IPADDR, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_UNLOCK_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 216usize, + concat!("Size of: ", stringify!(tagNET_DVR_UNLOCK_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_UNLOCK_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNLOCK_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUnlockType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNLOCK_INFO), + "::", + stringify!(byUnlockType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIPVersion) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNLOCK_INFO), + "::", + stringify!(byIPVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNLOCK_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPAddr) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNLOCK_INFO), + "::", + stringify!(struIPAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UNLOCK_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_UNLOCK_INFO = tagNET_DVR_UNLOCK_INFO; +pub type LPNET_DVR_UNLOCK_INFO = *mut tagNET_DVR_UNLOCK_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCKED_INFO { + pub dwSize: DWORD, + pub byIPType: BYTE, + pub byRes1: [BYTE; 3usize], + pub struIPAddress: NET_DVR_IPADDR, + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCKED_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 172usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOCKED_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOCKED_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCKED_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIPType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCKED_INFO), + "::", + stringify!(byIPType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCKED_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPAddress) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCKED_INFO), + "::", + stringify!(struIPAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCKED_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOCKED_INFO = tagNET_DVR_LOCKED_INFO; +pub type LPNET_DVR_LOCKED_INFO = *mut tagNET_DVR_LOCKED_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VEHICLE_PARA { + pub sLicense: [BYTE; 16usize], + pub byCountry: BYTE, + pub byRes: [BYTE; 239usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VEHICLE_PARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_VEHICLE_PARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VEHICLE_PARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLicense) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_PARA), + "::", + stringify!(sLicense) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCountry) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_PARA), + "::", + stringify!(byCountry) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_PARA), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VEHICLE_PARA = tagNET_DVR_VEHICLE_PARA; +pub type LPNET_DVR_VEHICLE_PARA = *mut tagNET_DVR_VEHICLE_PARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FACE_PIC_DATA_INFO { + pub dwImageLen: DWORD, + pub struVcaRect: NET_VCA_RECT, + pub dwFaceScore: DWORD, + pub byVcaRectOnly: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwPID: DWORD, + pub dwFaceSearchNum: DWORD, + pub struMultiVcaRect: [NET_VCA_RECT; 5usize], + pub byRes: [BYTE; 136usize], + pub pImage: *mut BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FACE_PIC_DATA_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_DVR_FACE_PIC_DATA_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FACE_PIC_DATA_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwImageLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PIC_DATA_INFO), + "::", + stringify!(dwImageLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaRect) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PIC_DATA_INFO), + "::", + stringify!(struVcaRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFaceScore) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PIC_DATA_INFO), + "::", + stringify!(dwFaceScore) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVcaRectOnly) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PIC_DATA_INFO), + "::", + stringify!(byVcaRectOnly) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PIC_DATA_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPID) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PIC_DATA_INFO), + "::", + stringify!(dwPID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFaceSearchNum) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PIC_DATA_INFO), + "::", + stringify!(dwFaceSearchNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMultiVcaRect) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PIC_DATA_INFO), + "::", + stringify!(struMultiVcaRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PIC_DATA_INFO), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pImage) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_PIC_DATA_INFO), + "::", + stringify!(pImage) + ) + ); +} +pub type NET_DVR_FACE_PIC_DATA_INFO = tagNET_DVR_FACE_PIC_DATA_INFO; +pub type LPNET_DVR_FACE_PIC_DATA_INFO = *mut tagNET_DVR_FACE_PIC_DATA_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BEHAVIOUR_COND { + pub dwSearchType: DWORD, + pub byHumanMisinfo: BYTE, + pub byRes: [BYTE; 251usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BEHAVIOUR_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_BEHAVIOUR_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BEHAVIOUR_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSearchType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BEHAVIOUR_COND), + "::", + stringify!(dwSearchType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHumanMisinfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BEHAVIOUR_COND), + "::", + stringify!(byHumanMisinfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BEHAVIOUR_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BEHAVIOUR_COND = tagNET_DVR_BEHAVIOUR_COND; +pub type LPNET_DVR_BEHAVIOUR_COND = *mut tagNET_DVR_BEHAVIOUR_COND; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_SMARTSEARCH_PIC_UNION { + pub byLen: [BYTE; 256usize], + pub struVehiclePara: NET_DVR_VEHICLE_PARA, + pub struHumaFeature: NET_VCA_HUMAN_FEATURE, + pub struHumaPic: NET_DVR_FACE_PIC_DATA_INFO, + pub struBehaviourCond: NET_DVR_BEHAVIOUR_COND, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SMARTSEARCH_PIC_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_DVR_SMARTSEARCH_PIC_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SMARTSEARCH_PIC_UNION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTSEARCH_PIC_UNION), + "::", + stringify!(byLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVehiclePara) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTSEARCH_PIC_UNION), + "::", + stringify!(struVehiclePara) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHumaFeature) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTSEARCH_PIC_UNION), + "::", + stringify!(struHumaFeature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHumaPic) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTSEARCH_PIC_UNION), + "::", + stringify!(struHumaPic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBehaviourCond) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMARTSEARCH_PIC_UNION), + "::", + stringify!(struBehaviourCond) + ) + ); +} +pub type NET_DVR_SMARTSEARCH_PIC_UNION = tagNET_DVR_SMARTSEARCH_PIC_UNION; +pub type LPNET_DVR_SMARTSEARCH_PIC_UNION = *mut tagNET_DVR_SMARTSEARCH_PIC_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SMART_SEARCH_PIC_PARA { + pub dwChanNo: DWORD, + pub byStreamID: [DWORD; 32usize], + pub struStartTime: NET_DVR_TIME_EX, + pub struEndTime: NET_DVR_TIME_EX, + pub wSearchType: WORD, + pub byRes1: [BYTE; 2usize], + pub uSmartSearchCond: NET_DVR_SMARTSEARCH_PIC_UNION, + pub byISO8601: BYTE, + pub cStartTimeDifferenceH: ::std::os::raw::c_char, + pub cStartTimeDifferenceM: ::std::os::raw::c_char, + pub cStopTimeDifferenceH: ::std::os::raw::c_char, + pub cStopTimeDifferenceM: ::std::os::raw::c_char, + pub byRes: [BYTE; 59usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SMART_SEARCH_PIC_PARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 480usize, + concat!("Size of: ", stringify!(tagNET_DVR_SMART_SEARCH_PIC_PARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SMART_SEARCH_PIC_PARA) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChanNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PIC_PARA), + "::", + stringify!(dwChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PIC_PARA), + "::", + stringify!(byStreamID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PIC_PARA), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PIC_PARA), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSearchType) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PIC_PARA), + "::", + stringify!(wSearchType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PIC_PARA), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uSmartSearchCond) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PIC_PARA), + "::", + stringify!(uSmartSearchCond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byISO8601) as usize - ptr as usize }, + 416usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PIC_PARA), + "::", + stringify!(byISO8601) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStartTimeDifferenceH) as usize - ptr as usize }, + 417usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PIC_PARA), + "::", + stringify!(cStartTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStartTimeDifferenceM) as usize - ptr as usize }, + 418usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PIC_PARA), + "::", + stringify!(cStartTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStopTimeDifferenceH) as usize - ptr as usize }, + 419usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PIC_PARA), + "::", + stringify!(cStopTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cStopTimeDifferenceM) as usize - ptr as usize }, + 420usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PIC_PARA), + "::", + stringify!(cStopTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 421usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PIC_PARA), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SMART_SEARCH_PIC_PARA = tagNET_DVR_SMART_SEARCH_PIC_PARA; +pub type LPNET_DVR_SMART_SEARCH_PIC_PARA = *mut tagNET_DVR_SMART_SEARCH_PIC_PARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FACE_SUB_PIC_INFO { + pub dwSimilarity: DWORD, + pub struVcaRect: NET_VCA_RECT, + pub byRes2: [BYTE; 236usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FACE_SUB_PIC_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_FACE_SUB_PIC_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FACE_SUB_PIC_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSimilarity) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_SUB_PIC_INFO), + "::", + stringify!(dwSimilarity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaRect) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_SUB_PIC_INFO), + "::", + stringify!(struVcaRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_SUB_PIC_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_FACE_SUB_PIC_INFO = tagNET_DVR_FACE_SUB_PIC_INFO; +pub type LPNET_DVR_FACE_SUB_PIC_INFO = *mut tagNET_DVR_FACE_SUB_PIC_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BEHAVIOR_INFO { + pub struVcaRect: NET_VCA_RECT, + pub wPeopleNum: WORD, + pub byRes2: [BYTE; 238usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BEHAVIOR_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_BEHAVIOR_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BEHAVIOR_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaRect) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BEHAVIOR_INFO), + "::", + stringify!(struVcaRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPeopleNum) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BEHAVIOR_INFO), + "::", + stringify!(wPeopleNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BEHAVIOR_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_BEHAVIOR_INFO = tagNET_DVR_BEHAVIOR_INFO; +pub type LPNET_DVR_BEHAVIOR_INFO = *mut tagNET_DVR_BEHAVIOR_INFO; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_PIC_FEATURE_UNION { + pub byLen: [BYTE; 256usize], + pub struPlateInfo: NET_DVR_PLATE_INFO, + pub struFaceSubInfo: NET_DVR_FACE_SUB_PIC_INFO, + pub struBehavior: NET_DVR_BEHAVIOR_INFO, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PIC_FEATURE_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_PIC_FEATURE_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PIC_FEATURE_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_FEATURE_UNION), + "::", + stringify!(byLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_FEATURE_UNION), + "::", + stringify!(struPlateInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFaceSubInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_FEATURE_UNION), + "::", + stringify!(struFaceSubInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBehavior) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_FEATURE_UNION), + "::", + stringify!(struBehavior) + ) + ); +} +pub type NET_DVR_PIC_FEATURE_UNION = tagNET_DVR_PIC_FEATURE_UNION; +pub type LPNET_DVR_PIC_FEATURE_UNION = *mut tagNET_DVR_PIC_FEATURE_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SMART_SEARCH_PIC_RET { + pub sFileName: [::std::os::raw::c_char; 64usize], + pub struTime: NET_DVR_TIME_EX, + pub dwFileSize: DWORD, + pub wPicType: WORD, + pub byRes1: [BYTE; 2usize], + pub uPicFeature: NET_DVR_PIC_FEATURE_UNION, + pub byISO8601: BYTE, + pub cTimeDifferenceH: ::std::os::raw::c_char, + pub cTimeDifferenceM: ::std::os::raw::c_char, + pub byRes: [BYTE; 29usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SMART_SEARCH_PIC_RET() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 368usize, + concat!("Size of: ", stringify!(tagNET_DVR_SMART_SEARCH_PIC_RET)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SMART_SEARCH_PIC_RET)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PIC_RET), + "::", + stringify!(sFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PIC_RET), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileSize) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PIC_RET), + "::", + stringify!(dwFileSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPicType) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PIC_RET), + "::", + stringify!(wPicType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 78usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PIC_RET), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uPicFeature) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PIC_RET), + "::", + stringify!(uPicFeature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byISO8601) as usize - ptr as usize }, + 336usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PIC_RET), + "::", + stringify!(byISO8601) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceH) as usize - ptr as usize }, + 337usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PIC_RET), + "::", + stringify!(cTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceM) as usize - ptr as usize }, + 338usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PIC_RET), + "::", + stringify!(cTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 339usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMART_SEARCH_PIC_RET), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SMART_SEARCH_PIC_RET = tagNET_DVR_SMART_SEARCH_PIC_RET; +pub type LPNET_DVR_SMART_SEARCH_PIC_RET = *mut tagNET_DVR_SMART_SEARCH_PIC_RET; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_T1TEST_SEND_DATA_BUZZER { + pub byHearSound: BYTE, + pub byRes: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_T1TEST_SEND_DATA_BUZZER() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_DVR_T1TEST_SEND_DATA_BUZZER)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_T1TEST_SEND_DATA_BUZZER) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHearSound) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_T1TEST_SEND_DATA_BUZZER), + "::", + stringify!(byHearSound) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_T1TEST_SEND_DATA_BUZZER), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_T1TEST_SEND_DATA_BUZZER = tagNET_DVR_T1TEST_SEND_DATA_BUZZER; +pub type LPNET_DVR_T1TEST_SEND_DATA_BUZZER = *mut tagNET_DVR_T1TEST_SEND_DATA_BUZZER; +#[repr(C)] +#[derive(Copy, Clone)] +pub union NET_DVR_T1TEST_DATA_UNION { + pub byUnionLen: [BYTE; 32usize], + pub struBuzzer: NET_DVR_T1TEST_SEND_DATA_BUZZER, + pub struCurTime: NET_DVR_TIME_V30, +} +#[test] +fn bindgen_test_layout_NET_DVR_T1TEST_DATA_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(NET_DVR_T1TEST_DATA_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(NET_DVR_T1TEST_DATA_UNION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUnionLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_T1TEST_DATA_UNION), + "::", + stringify!(byUnionLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBuzzer) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_T1TEST_DATA_UNION), + "::", + stringify!(struBuzzer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCurTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_T1TEST_DATA_UNION), + "::", + stringify!(struCurTime) + ) + ); +} +pub type LPNET_DVR_T1TEST_DATA_UNION = *mut NET_DVR_T1TEST_DATA_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_T1TEST_SEND_DATA { + pub dwSize: DWORD, + pub byDataType: BYTE, + pub byRes1: [BYTE; 3usize], + pub uSendData: NET_DVR_T1TEST_DATA_UNION, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_T1TEST_SEND_DATA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 104usize, + concat!("Size of: ", stringify!(tagNET_DVR_T1TEST_SEND_DATA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_T1TEST_SEND_DATA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_T1TEST_SEND_DATA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_T1TEST_SEND_DATA), + "::", + stringify!(byDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_T1TEST_SEND_DATA), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uSendData) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_T1TEST_SEND_DATA), + "::", + stringify!(uSendData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_T1TEST_SEND_DATA), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_T1TEST_SEND_DATA = tagNET_DVR_T1TEST_SEND_DATA; +pub type LPNET_DVR_T1TEST_SEND_DATA = *mut tagNET_DVR_T1TEST_SEND_DATA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PIC_MODEL_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PIC_MODEL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_PIC_MODEL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PIC_MODEL_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_MODEL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_MODEL_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_MODEL_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PIC_MODEL_CFG = tagNET_DVR_PIC_MODEL_CFG; +pub type LPNET_DVR_PIC_MODEL_CFG = *mut tagNET_DVR_PIC_MODEL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MOUSE_EVENT_PARAM { + pub dwSize: DWORD, + pub byMouseEvent: BYTE, + pub byRes1: [BYTE; 3usize], + pub struPoint: NET_VCA_POINT, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MOUSE_EVENT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_MOUSE_EVENT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MOUSE_EVENT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOUSE_EVENT_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMouseEvent) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOUSE_EVENT_PARAM), + "::", + stringify!(byMouseEvent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOUSE_EVENT_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPoint) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOUSE_EVENT_PARAM), + "::", + stringify!(struPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOUSE_EVENT_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MOUSE_EVENT_PARAM = tagNET_DVR_MOUSE_EVENT_PARAM; +pub type LPNET_DVR_MOUSE_EVENT_PARAM = *mut tagNET_DVR_MOUSE_EVENT_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUTO_LIMIT_WAVE_CFG { + pub byFBCEnable: BYTE, + pub byMode: BYTE, + pub byFilterQValue: BYTE, + pub byStaticFilterNum: BYTE, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUTO_LIMIT_WAVE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUTO_LIMIT_WAVE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AUTO_LIMIT_WAVE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFBCEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTO_LIMIT_WAVE_CFG), + "::", + stringify!(byFBCEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTO_LIMIT_WAVE_CFG), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFilterQValue) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTO_LIMIT_WAVE_CFG), + "::", + stringify!(byFilterQValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStaticFilterNum) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTO_LIMIT_WAVE_CFG), + "::", + stringify!(byStaticFilterNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTO_LIMIT_WAVE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AUTO_LIMIT_WAVE_CFG = tagNET_DVR_AUTO_LIMIT_WAVE_CFG; +pub type LPNET_DVR_AUTO_LIMIT_WAVE_CFG = *mut tagNET_DVR_AUTO_LIMIT_WAVE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_DSP_PARAMETER_CFG { + pub byFBCEnable: BYTE, + pub byVolume: BYTE, + pub byRes: [BYTE; 22usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_DSP_PARAMETER_CFG() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_DSP_PARAMETER_CFG> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_DSP_PARAMETER_CFG>(), + 24usize, + concat!("Size of: ", stringify!(_NET_DVR_DSP_PARAMETER_CFG)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_DSP_PARAMETER_CFG>(), + 1usize, + concat!("Alignment of ", stringify!(_NET_DVR_DSP_PARAMETER_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFBCEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_DSP_PARAMETER_CFG), + "::", + stringify!(byFBCEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVolume) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_DSP_PARAMETER_CFG), + "::", + stringify!(byVolume) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_DSP_PARAMETER_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DSP_PARAMETER_CFG = _NET_DVR_DSP_PARAMETER_CFG; +pub type LPNET_DVR_DSP_PARAMETER_CFG = *mut _NET_DVR_DSP_PARAMETER_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MIX_AUDIOIN_CFG { + pub dwSize: DWORD, + pub dwHighPassFilter: DWORD, + pub dwNoiseMargin: DWORD, + pub struLimitWave: NET_DVR_AUTO_LIMIT_WAVE_CFG, + pub struDSPParameter: NET_DVR_DSP_PARAMETER_CFG, + pub byRes: [BYTE; 40usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MIX_AUDIOIN_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 96usize, + concat!("Size of: ", stringify!(tagNET_DVR_MIX_AUDIOIN_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MIX_AUDIOIN_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIX_AUDIOIN_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHighPassFilter) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIX_AUDIOIN_CFG), + "::", + stringify!(dwHighPassFilter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNoiseMargin) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIX_AUDIOIN_CFG), + "::", + stringify!(dwNoiseMargin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLimitWave) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIX_AUDIOIN_CFG), + "::", + stringify!(struLimitWave) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDSPParameter) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIX_AUDIOIN_CFG), + "::", + stringify!(struDSPParameter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIX_AUDIOIN_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MIX_AUDIOIN_CFG = tagNET_DVR_MIX_AUDIOIN_CFG; +pub type LPNET_DVR_MIX_AUDIOIN_CFG = *mut tagNET_DVR_MIX_AUDIOIN_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MIX_AUDIOOUT_CFG { + pub dwSize: DWORD, + pub byModulatorEnbale: BYTE, + pub byPostFilter: BYTE, + pub byLimitPressure: BYTE, + pub byRes1: BYTE, + pub wModulatorValue: WORD, + pub wTriggerTime: WORD, + pub wFreeTime: WORD, + pub byCompressThreshold: BYTE, + pub byCompressMode: BYTE, + pub byCompressRate: BYTE, + pub byRecoveryGain: BYTE, + pub byOutputGain: BYTE, + pub byOutputMute: BYTE, + pub iOutputGainEx: ::std::os::raw::c_int, + pub bySoundQualityHanding: BYTE, + pub byRes: [BYTE; 55usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MIX_AUDIOOUT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_MIX_AUDIOOUT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MIX_AUDIOOUT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIX_AUDIOOUT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byModulatorEnbale) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIX_AUDIOOUT_CFG), + "::", + stringify!(byModulatorEnbale) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPostFilter) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIX_AUDIOOUT_CFG), + "::", + stringify!(byPostFilter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLimitPressure) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIX_AUDIOOUT_CFG), + "::", + stringify!(byLimitPressure) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIX_AUDIOOUT_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wModulatorValue) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIX_AUDIOOUT_CFG), + "::", + stringify!(wModulatorValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTriggerTime) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIX_AUDIOOUT_CFG), + "::", + stringify!(wTriggerTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFreeTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIX_AUDIOOUT_CFG), + "::", + stringify!(wFreeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCompressThreshold) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIX_AUDIOOUT_CFG), + "::", + stringify!(byCompressThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCompressMode) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIX_AUDIOOUT_CFG), + "::", + stringify!(byCompressMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCompressRate) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIX_AUDIOOUT_CFG), + "::", + stringify!(byCompressRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecoveryGain) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIX_AUDIOOUT_CFG), + "::", + stringify!(byRecoveryGain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutputGain) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIX_AUDIOOUT_CFG), + "::", + stringify!(byOutputGain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutputMute) as usize - ptr as usize }, + 19usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIX_AUDIOOUT_CFG), + "::", + stringify!(byOutputMute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iOutputGainEx) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIX_AUDIOOUT_CFG), + "::", + stringify!(iOutputGainEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySoundQualityHanding) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIX_AUDIOOUT_CFG), + "::", + stringify!(bySoundQualityHanding) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MIX_AUDIOOUT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MIX_AUDIOOUT_CFG = tagNET_DVR_MIX_AUDIOOUT_CFG; +pub type LPNET_DVR_MIX_AUDIOOUT_CFG = *mut tagNET_DVR_MIX_AUDIOOUT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VOLUME_CFG { + pub dwSize: DWORD, + pub wVolume: [WORD; 8usize], + pub byPhantomPowerSupply: BYTE, + pub byEnableAEC: BYTE, + pub wTalkVolume: WORD, + pub byEnableFBC: [BYTE; 8usize], + pub wVolumeEx: [WORD; 8usize], + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VOLUME_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 52usize, + concat!("Size of: ", stringify!(tagNET_DVR_VOLUME_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VOLUME_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOLUME_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wVolume) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOLUME_CFG), + "::", + stringify!(wVolume) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPhantomPowerSupply) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOLUME_CFG), + "::", + stringify!(byPhantomPowerSupply) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableAEC) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOLUME_CFG), + "::", + stringify!(byEnableAEC) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTalkVolume) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOLUME_CFG), + "::", + stringify!(wTalkVolume) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableFBC) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOLUME_CFG), + "::", + stringify!(byEnableFBC) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wVolumeEx) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOLUME_CFG), + "::", + stringify!(wVolumeEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOLUME_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VOLUME_CFG = tagNET_DVR_VOLUME_CFG; +pub type LPNET_DVR_VOLUME_CFG = *mut tagNET_DVR_VOLUME_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIDEOOUT_RESOLUTION_CFG { + pub dwSize: DWORD, + pub byResolution: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEOOUT_RESOLUTION_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEOOUT_RESOLUTION_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VIDEOOUT_RESOLUTION_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOOUT_RESOLUTION_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byResolution) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOOUT_RESOLUTION_CFG), + "::", + stringify!(byResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOOUT_RESOLUTION_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VIDEOOUT_RESOLUTION_CFG = tagNET_DVR_VIDEOOUT_RESOLUTION_CFG; +pub type LPNET_DVR_VIDEOOUT_RESOLUTION_CFG = *mut tagNET_DVR_VIDEOOUT_RESOLUTION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ADDR_DOMAIN_INFO { + pub szDomainAddr: [BYTE; 64usize], + pub wPort: WORD, + pub byRes: [BYTE; 2usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ADDR_DOMAIN_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_ADDR_DOMAIN_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ADDR_DOMAIN_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDomainAddr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADDR_DOMAIN_INFO), + "::", + stringify!(szDomainAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADDR_DOMAIN_INFO), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 66usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADDR_DOMAIN_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ADDR_DOMAIN_INFO = tagNET_DVR_ADDR_DOMAIN_INFO; +pub type LPNET_DVR_ADDR_DOMAIN_INFO = *mut tagNET_DVR_ADDR_DOMAIN_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMCENTER_NETCFG { + pub dwSize: DWORD, + pub byAuxiliaryAlarmAddr: [BYTE; 64usize], + pub wAuxiliaryAlarmPort: WORD, + pub struHostAddr: [NET_DVR_ADDR_DOMAIN_INFO; 6usize], + pub byRes: [BYTE; 172usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMCENTER_NETCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 652usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMCENTER_NETCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMCENTER_NETCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMCENTER_NETCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAuxiliaryAlarmAddr) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMCENTER_NETCFG), + "::", + stringify!(byAuxiliaryAlarmAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAuxiliaryAlarmPort) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMCENTER_NETCFG), + "::", + stringify!(wAuxiliaryAlarmPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHostAddr) as usize - ptr as usize }, + 70usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMCENTER_NETCFG), + "::", + stringify!(struHostAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 478usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMCENTER_NETCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMCENTER_NETCFG = tagNET_DVR_ALARMCENTER_NETCFG; +pub type LPNET_DVR_ALARMCENTER_NETCFG = *mut tagNET_DVR_ALARMCENTER_NETCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARM_LINKAGE_PARAM { + pub dwSize: DWORD, + pub wChanRec: WORD, + pub byRes1: [BYTE; 2usize], + pub wRecTime: [WORD; 16usize], + pub wChanPic: WORD, + pub byRes2: [BYTE; 2usize], + pub byPicNum: [BYTE; 16usize], + pub byTriggerEnabled: [BYTE; 64usize], + pub bySensorJointAlarmOut: [BYTE; 64usize], + pub byRes3: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARM_LINKAGE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 316usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARM_LINKAGE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARM_LINKAGE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_LINKAGE_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wChanRec) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_LINKAGE_PARAM), + "::", + stringify!(wChanRec) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_LINKAGE_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRecTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_LINKAGE_PARAM), + "::", + stringify!(wRecTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wChanPic) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_LINKAGE_PARAM), + "::", + stringify!(wChanPic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_LINKAGE_PARAM), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicNum) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_LINKAGE_PARAM), + "::", + stringify!(byPicNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTriggerEnabled) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_LINKAGE_PARAM), + "::", + stringify!(byTriggerEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensorJointAlarmOut) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_LINKAGE_PARAM), + "::", + stringify!(bySensorJointAlarmOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_LINKAGE_PARAM), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_ALARM_LINKAGE_PARAM = tagNET_DVR_ALARM_LINKAGE_PARAM; +pub type LPNET_DVR_ALARM_LINKAGE_PARAM = *mut tagNET_DVR_ALARM_LINKAGE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARM_RADARINFO { + pub dwSize: DWORD, + pub dwRadarTriggerTimeSecond: DWORD, + pub dwRadarTriggerTimeMSecond: DWORD, + pub dwVedioTriggerTimeSecond: DWORD, + pub dwVedioTriggerTimeMSecond: DWORD, + pub dwVedioRadarDiffTimeMSecond: DWORD, + pub dwRadarSpeed: DWORD, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARM_RADARINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARM_RADARINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARM_RADARINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RADARINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRadarTriggerTimeSecond) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RADARINFO), + "::", + stringify!(dwRadarTriggerTimeSecond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRadarTriggerTimeMSecond) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RADARINFO), + "::", + stringify!(dwRadarTriggerTimeMSecond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVedioTriggerTimeSecond) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RADARINFO), + "::", + stringify!(dwVedioTriggerTimeSecond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVedioTriggerTimeMSecond) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RADARINFO), + "::", + stringify!(dwVedioTriggerTimeMSecond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVedioRadarDiffTimeMSecond) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RADARINFO), + "::", + stringify!(dwVedioRadarDiffTimeMSecond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRadarSpeed) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RADARINFO), + "::", + stringify!(dwRadarSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_RADARINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARM_RADARINFO = tagNET_DVR_ALARM_RADARINFO; +pub type LPNET_DVR_ALARM_RADARINFO = *mut tagNET_DVR_ALARM_RADARINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FINGER_PRINT_CFG { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub dwFingerPrintLen: DWORD, + pub byEnableCardReader: [BYTE; 512usize], + pub byFingerPrintID: BYTE, + pub byFingerType: BYTE, + pub byRes1: [BYTE; 30usize], + pub byFingerData: [BYTE; 768usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FINGER_PRINT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1416usize, + concat!("Size of: ", stringify!(tagNET_DVR_FINGER_PRINT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FINGER_PRINT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_CFG), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFingerPrintLen) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_CFG), + "::", + stringify!(dwFingerPrintLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableCardReader) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_CFG), + "::", + stringify!(byEnableCardReader) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerPrintID) as usize - ptr as usize }, + 552usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_CFG), + "::", + stringify!(byFingerPrintID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerType) as usize - ptr as usize }, + 553usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_CFG), + "::", + stringify!(byFingerType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 554usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerData) as usize - ptr as usize }, + 584usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_CFG), + "::", + stringify!(byFingerData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1352usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FINGER_PRINT_CFG = tagNET_DVR_FINGER_PRINT_CFG; +pub type LPNET_DVR_FINGER_PRINT_CFG = *mut tagNET_DVR_FINGER_PRINT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FINGER_PRINT_STATUS { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub byCardReaderRecvStatus: [BYTE; 512usize], + pub byFingerPrintID: BYTE, + pub byFingerType: BYTE, + pub byTotalStatus: BYTE, + pub byRes1: BYTE, + pub byErrorMsg: [BYTE; 32usize], + pub dwCardReaderNo: DWORD, + pub byRes: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FINGER_PRINT_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 612usize, + concat!("Size of: ", stringify!(tagNET_DVR_FINGER_PRINT_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FINGER_PRINT_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_STATUS), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardReaderRecvStatus) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_STATUS), + "::", + stringify!(byCardReaderRecvStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerPrintID) as usize - ptr as usize }, + 548usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_STATUS), + "::", + stringify!(byFingerPrintID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerType) as usize - ptr as usize }, + 549usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_STATUS), + "::", + stringify!(byFingerType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTotalStatus) as usize - ptr as usize }, + 550usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_STATUS), + "::", + stringify!(byTotalStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 551usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_STATUS), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byErrorMsg) as usize - ptr as usize }, + 552usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_STATUS), + "::", + stringify!(byErrorMsg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardReaderNo) as usize - ptr as usize }, + 584usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_STATUS), + "::", + stringify!(dwCardReaderNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 588usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FINGER_PRINT_STATUS = tagNET_DVR_FINGER_PRINT_STATUS; +pub type LPNET_DVR_FINGER_PRINT_STATUS = *mut tagNET_DVR_FINGER_PRINT_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FINGER_PRINT_INFO_COND { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub byEnableCardReader: [BYTE; 512usize], + pub dwFingerPrintNum: DWORD, + pub byFingerPrintID: BYTE, + pub byCallbackMode: BYTE, + pub byRes1: [BYTE; 26usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FINGER_PRINT_INFO_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 580usize, + concat!("Size of: ", stringify!(tagNET_DVR_FINGER_PRINT_INFO_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_COND), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableCardReader) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_COND), + "::", + stringify!(byEnableCardReader) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFingerPrintNum) as usize - ptr as usize }, + 548usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_COND), + "::", + stringify!(dwFingerPrintNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerPrintID) as usize - ptr as usize }, + 552usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_COND), + "::", + stringify!(byFingerPrintID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCallbackMode) as usize - ptr as usize }, + 553usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_COND), + "::", + stringify!(byCallbackMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 554usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_COND), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_FINGER_PRINT_INFO_COND = tagNET_DVR_FINGER_PRINT_INFO_COND; +pub type LPNET_DVR_FINGER_PRINT_INFO_COND = *mut tagNET_DVR_FINGER_PRINT_INFO_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FINGER_PRINT_CFG_V50 { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub dwFingerPrintLen: DWORD, + pub byEnableCardReader: [BYTE; 512usize], + pub byFingerPrintID: BYTE, + pub byFingerType: BYTE, + pub byRes1: [BYTE; 30usize], + pub byFingerData: [BYTE; 768usize], + pub byEmployeeNo: [BYTE; 32usize], + pub byLeaderFP: [BYTE; 256usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FINGER_PRINT_CFG_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1768usize, + concat!("Size of: ", stringify!(tagNET_DVR_FINGER_PRINT_CFG_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FINGER_PRINT_CFG_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_CFG_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_CFG_V50), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFingerPrintLen) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_CFG_V50), + "::", + stringify!(dwFingerPrintLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableCardReader) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_CFG_V50), + "::", + stringify!(byEnableCardReader) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerPrintID) as usize - ptr as usize }, + 552usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_CFG_V50), + "::", + stringify!(byFingerPrintID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerType) as usize - ptr as usize }, + 553usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_CFG_V50), + "::", + stringify!(byFingerType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 554usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_CFG_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerData) as usize - ptr as usize }, + 584usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_CFG_V50), + "::", + stringify!(byFingerData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEmployeeNo) as usize - ptr as usize }, + 1352usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_CFG_V50), + "::", + stringify!(byEmployeeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLeaderFP) as usize - ptr as usize }, + 1384usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_CFG_V50), + "::", + stringify!(byLeaderFP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1640usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_CFG_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FINGER_PRINT_CFG_V50 = tagNET_DVR_FINGER_PRINT_CFG_V50; +pub type LPNET_DVR_FINGER_PRINT_CFG_V50 = *mut tagNET_DVR_FINGER_PRINT_CFG_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FINGER_PRINT_STATUS_V50 { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub byCardReaderRecvStatus: [BYTE; 512usize], + pub byFingerPrintID: BYTE, + pub byFingerType: BYTE, + pub byTotalStatus: BYTE, + pub byRecvStatus: BYTE, + pub byErrorMsg: [BYTE; 32usize], + pub dwCardReaderNo: DWORD, + pub byEmployeeNo: [BYTE; 32usize], + pub byErrorEmployeeNo: [BYTE; 32usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FINGER_PRINT_STATUS_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 780usize, + concat!("Size of: ", stringify!(tagNET_DVR_FINGER_PRINT_STATUS_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FINGER_PRINT_STATUS_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_STATUS_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_STATUS_V50), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardReaderRecvStatus) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_STATUS_V50), + "::", + stringify!(byCardReaderRecvStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerPrintID) as usize - ptr as usize }, + 548usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_STATUS_V50), + "::", + stringify!(byFingerPrintID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerType) as usize - ptr as usize }, + 549usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_STATUS_V50), + "::", + stringify!(byFingerType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTotalStatus) as usize - ptr as usize }, + 550usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_STATUS_V50), + "::", + stringify!(byTotalStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecvStatus) as usize - ptr as usize }, + 551usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_STATUS_V50), + "::", + stringify!(byRecvStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byErrorMsg) as usize - ptr as usize }, + 552usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_STATUS_V50), + "::", + stringify!(byErrorMsg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardReaderNo) as usize - ptr as usize }, + 584usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_STATUS_V50), + "::", + stringify!(dwCardReaderNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEmployeeNo) as usize - ptr as usize }, + 588usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_STATUS_V50), + "::", + stringify!(byEmployeeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byErrorEmployeeNo) as usize - ptr as usize }, + 620usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_STATUS_V50), + "::", + stringify!(byErrorEmployeeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 652usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_STATUS_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FINGER_PRINT_STATUS_V50 = tagNET_DVR_FINGER_PRINT_STATUS_V50; +pub type LPNET_DVR_FINGER_PRINT_STATUS_V50 = *mut tagNET_DVR_FINGER_PRINT_STATUS_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FINGER_PRINT_INFO_COND_V50 { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub byEnableCardReader: [BYTE; 512usize], + pub dwFingerPrintNum: DWORD, + pub byFingerPrintID: BYTE, + pub byCallbackMode: BYTE, + pub byRes2: [BYTE; 2usize], + pub byEmployeeNo: [BYTE; 32usize], + pub byRes1: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FINGER_PRINT_INFO_COND_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 716usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_COND_V50) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_COND_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_COND_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_COND_V50), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableCardReader) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_COND_V50), + "::", + stringify!(byEnableCardReader) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFingerPrintNum) as usize - ptr as usize }, + 548usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_COND_V50), + "::", + stringify!(dwFingerPrintNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerPrintID) as usize - ptr as usize }, + 552usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_COND_V50), + "::", + stringify!(byFingerPrintID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCallbackMode) as usize - ptr as usize }, + 553usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_COND_V50), + "::", + stringify!(byCallbackMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 554usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_COND_V50), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEmployeeNo) as usize - ptr as usize }, + 556usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_COND_V50), + "::", + stringify!(byEmployeeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 588usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_COND_V50), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_FINGER_PRINT_INFO_COND_V50 = tagNET_DVR_FINGER_PRINT_INFO_COND_V50; +pub type LPNET_DVR_FINGER_PRINT_INFO_COND_V50 = *mut tagNET_DVR_FINGER_PRINT_INFO_COND_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FINGER_PRINT_BYCARD { + pub byCardNo: [BYTE; 32usize], + pub byEnableCardReader: [BYTE; 512usize], + pub byFingerPrintID: [BYTE; 10usize], + pub byRes1: [BYTE; 34usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FINGER_PRINT_BYCARD() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 588usize, + concat!("Size of: ", stringify!(tagNET_DVR_FINGER_PRINT_BYCARD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FINGER_PRINT_BYCARD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_BYCARD), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableCardReader) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_BYCARD), + "::", + stringify!(byEnableCardReader) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerPrintID) as usize - ptr as usize }, + 544usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_BYCARD), + "::", + stringify!(byFingerPrintID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 554usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_BYCARD), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_FINGER_PRINT_BYCARD = tagNET_DVR_FINGER_PRINT_BYCARD; +pub type LPNET_DVR_FINGER_PRINT_BYCARD = *mut tagNET_DVR_FINGER_PRINT_BYCARD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FINGER_PRINT_BYREADER { + pub dwCardReaderNo: DWORD, + pub byClearAllCard: BYTE, + pub byRes1: [BYTE; 3usize], + pub byCardNo: [BYTE; 32usize], + pub byRes: [BYTE; 548usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FINGER_PRINT_BYREADER() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 588usize, + concat!("Size of: ", stringify!(tagNET_DVR_FINGER_PRINT_BYREADER)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FINGER_PRINT_BYREADER) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardReaderNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_BYREADER), + "::", + stringify!(dwCardReaderNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byClearAllCard) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_BYREADER), + "::", + stringify!(byClearAllCard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_BYREADER), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_BYREADER), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_BYREADER), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FINGER_PRINT_BYREADER = tagNET_DVR_FINGER_PRINT_BYREADER; +pub type LPNET_DVR_FINGER_PRINT_BYREADER = *mut tagNET_DVR_FINGER_PRINT_BYREADER; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_DEL_FINGER_PRINT_MODE { + pub uLen: [BYTE; 588usize], + pub struByCard: NET_DVR_FINGER_PRINT_BYCARD, + pub struByReader: NET_DVR_FINGER_PRINT_BYREADER, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEL_FINGER_PRINT_MODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 588usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEL_FINGER_PRINT_MODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_DEL_FINGER_PRINT_MODE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_FINGER_PRINT_MODE), + "::", + stringify!(uLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struByCard) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_FINGER_PRINT_MODE), + "::", + stringify!(struByCard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struByReader) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_FINGER_PRINT_MODE), + "::", + stringify!(struByReader) + ) + ); +} +pub type NET_DVR_DEL_FINGER_PRINT_MODE = tagNET_DVR_DEL_FINGER_PRINT_MODE; +pub type LPNET_DVR_DEL_FINGER_PRINT_MODE = *mut tagNET_DVR_DEL_FINGER_PRINT_MODE; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_FINGER_PRINT_INFO_CTRL { + pub dwSize: DWORD, + pub byMode: BYTE, + pub byRes1: [BYTE; 3usize], + pub struProcessMode: NET_DVR_DEL_FINGER_PRINT_MODE, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FINGER_PRINT_INFO_CTRL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 660usize, + concat!("Size of: ", stringify!(tagNET_DVR_FINGER_PRINT_INFO_CTRL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_CTRL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_CTRL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_CTRL), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_CTRL), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struProcessMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_CTRL), + "::", + stringify!(struProcessMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 596usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_CTRL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FINGER_PRINT_INFO_CTRL = tagNET_DVR_FINGER_PRINT_INFO_CTRL; +pub type LPNET_DVR_FINGER_PRINT_INFO_CTRL = *mut tagNET_DVR_FINGER_PRINT_INFO_CTRL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FINGER_PRINT_BYCARD_V50 { + pub byCardNo: [BYTE; 32usize], + pub byEnableCardReader: [BYTE; 512usize], + pub byFingerPrintID: [BYTE; 10usize], + pub byRes1: [BYTE; 2usize], + pub byEmployeeNo: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FINGER_PRINT_BYCARD_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 588usize, + concat!("Size of: ", stringify!(tagNET_DVR_FINGER_PRINT_BYCARD_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FINGER_PRINT_BYCARD_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_BYCARD_V50), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableCardReader) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_BYCARD_V50), + "::", + stringify!(byEnableCardReader) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerPrintID) as usize - ptr as usize }, + 544usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_BYCARD_V50), + "::", + stringify!(byFingerPrintID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 554usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_BYCARD_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEmployeeNo) as usize - ptr as usize }, + 556usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_BYCARD_V50), + "::", + stringify!(byEmployeeNo) + ) + ); +} +pub type NET_DVR_FINGER_PRINT_BYCARD_V50 = tagNET_DVR_FINGER_PRINT_BYCARD_V50; +pub type LPNET_DVR_FINGER_PRINT_BYCARD_V50 = *mut tagNET_DVR_FINGER_PRINT_BYCARD_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FINGER_PRINT_BYREADER_V50 { + pub dwCardReaderNo: DWORD, + pub byClearAllCard: BYTE, + pub byRes1: [BYTE; 3usize], + pub byCardNo: [BYTE; 32usize], + pub byEmployeeNo: [BYTE; 32usize], + pub byRes: [BYTE; 516usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FINGER_PRINT_BYREADER_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 588usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_FINGER_PRINT_BYREADER_V50) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FINGER_PRINT_BYREADER_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardReaderNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_BYREADER_V50), + "::", + stringify!(dwCardReaderNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byClearAllCard) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_BYREADER_V50), + "::", + stringify!(byClearAllCard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_BYREADER_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_BYREADER_V50), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEmployeeNo) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_BYREADER_V50), + "::", + stringify!(byEmployeeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_BYREADER_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FINGER_PRINT_BYREADER_V50 = tagNET_DVR_FINGER_PRINT_BYREADER_V50; +pub type LPNET_DVR_FINGER_PRINT_BYREADER_V50 = *mut tagNET_DVR_FINGER_PRINT_BYREADER_V50; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_DEL_FINGER_PRINT_MODE_V50 { + pub uLen: [BYTE; 588usize], + pub struByCard: NET_DVR_FINGER_PRINT_BYCARD_V50, + pub struByReader: NET_DVR_FINGER_PRINT_BYREADER_V50, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEL_FINGER_PRINT_MODE_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 588usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_DEL_FINGER_PRINT_MODE_V50) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_DEL_FINGER_PRINT_MODE_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_FINGER_PRINT_MODE_V50), + "::", + stringify!(uLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struByCard) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_FINGER_PRINT_MODE_V50), + "::", + stringify!(struByCard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struByReader) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_FINGER_PRINT_MODE_V50), + "::", + stringify!(struByReader) + ) + ); +} +pub type NET_DVR_DEL_FINGER_PRINT_MODE_V50 = tagNET_DVR_DEL_FINGER_PRINT_MODE_V50; +pub type LPNET_DVR_DEL_FINGER_PRINT_MODE_V50 = *mut tagNET_DVR_DEL_FINGER_PRINT_MODE_V50; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_FINGER_PRINT_INFO_CTRL_V50 { + pub dwSize: DWORD, + pub byMode: BYTE, + pub byRes1: [BYTE; 3usize], + pub struProcessMode: NET_DVR_DEL_FINGER_PRINT_MODE_V50, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FINGER_PRINT_INFO_CTRL_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 660usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_CTRL_V50) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_CTRL_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_CTRL_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_CTRL_V50), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_CTRL_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struProcessMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_CTRL_V50), + "::", + stringify!(struProcessMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 596usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_CTRL_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FINGER_PRINT_INFO_CTRL_V50 = tagNET_DVR_FINGER_PRINT_INFO_CTRL_V50; +pub type LPNET_DVR_FINGER_PRINT_INFO_CTRL_V50 = *mut tagNET_DVR_FINGER_PRINT_INFO_CTRL_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FINGER_PRINT_INFO_STATUS_V50 { + pub dwSize: DWORD, + pub dwCardReaderNo: DWORD, + pub byStatus: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FINGER_PRINT_INFO_STATUS_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_STATUS_V50) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_STATUS_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_STATUS_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardReaderNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_STATUS_V50), + "::", + stringify!(dwCardReaderNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_STATUS_V50), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGER_PRINT_INFO_STATUS_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FINGER_PRINT_INFO_STATUS_V50 = tagNET_DVR_FINGER_PRINT_INFO_STATUS_V50; +pub type LPNET_DVR_FINGER_PRINT_INFO_STATUS_V50 = *mut tagNET_DVR_FINGER_PRINT_INFO_STATUS_V50; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_HOST_ANTI_DISMANTLE: _ACS_DEV_SUBEVENT_ENUM_ = 0; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_OFFLINE_ECENT_NEARLY_FULL: _ACS_DEV_SUBEVENT_ENUM_ = 1; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_NET_BROKEN: _ACS_DEV_SUBEVENT_ENUM_ = 2; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_NET_RESUME: _ACS_DEV_SUBEVENT_ENUM_ = 3; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_LOW_BATTERY: _ACS_DEV_SUBEVENT_ENUM_ = 4; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_BATTERY_RESUME: _ACS_DEV_SUBEVENT_ENUM_ = 5; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_AC_OFF: _ACS_DEV_SUBEVENT_ENUM_ = 6; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_AC_RESUME: _ACS_DEV_SUBEVENT_ENUM_ = 7; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_SD_CARD_FULL: _ACS_DEV_SUBEVENT_ENUM_ = 8; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_LINKAGE_CAPTURE_PIC: _ACS_DEV_SUBEVENT_ENUM_ = 9; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_IMAGE_QUALITY_LOW: _ACS_DEV_SUBEVENT_ENUM_ = 10; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_FINGER_PRINT_QUALITY_LOW: _ACS_DEV_SUBEVENT_ENUM_ = 11; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_BATTERY_ELECTRIC_LOW: _ACS_DEV_SUBEVENT_ENUM_ = 12; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_BATTERY_ELECTRIC_RESUME: _ACS_DEV_SUBEVENT_ENUM_ = 13; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_FIRE_IMPORT_SHORT_CIRCUIT: _ACS_DEV_SUBEVENT_ENUM_ = 14; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_FIRE_IMPORT_BROKEN_CIRCUIT: _ACS_DEV_SUBEVENT_ENUM_ = + 15; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_FIRE_IMPORT_RESUME: _ACS_DEV_SUBEVENT_ENUM_ = 16; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_MASTER_RS485_LOOPNODE_BROKEN: _ACS_DEV_SUBEVENT_ENUM_ = + 17; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_MASTER_RS485_LOOPNODE_RESUME: _ACS_DEV_SUBEVENT_ENUM_ = + 18; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_LOCAL_CONTROL_OFFLINE: _ACS_DEV_SUBEVENT_ENUM_ = 19; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_LOCAL_CONTROL_RESUME: _ACS_DEV_SUBEVENT_ENUM_ = 20; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_LOCAL_DOWNSIDE_RS485_LOOPNODE_BROKEN: + _ACS_DEV_SUBEVENT_ENUM_ = 21; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_LOCAL_DOWNSIDE_RS485_LOOPNODE_RESUME: + _ACS_DEV_SUBEVENT_ENUM_ = 22; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_DISTRACT_CONTROLLER_ONLINE: _ACS_DEV_SUBEVENT_ENUM_ = + 23; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_DISTRACT_CONTROLLER_OFFLINE: _ACS_DEV_SUBEVENT_ENUM_ = + 24; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_FIRE_BUTTON_TRIGGER: _ACS_DEV_SUBEVENT_ENUM_ = 25; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_FIRE_BUTTON_RESUME: _ACS_DEV_SUBEVENT_ENUM_ = 26; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_MAINTENANCE_BUTTON_TRIGGER: _ACS_DEV_SUBEVENT_ENUM_ = + 27; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_MAINTENANCE_BUTTON_RESUME: _ACS_DEV_SUBEVENT_ENUM_ = 28; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_EMERGENCY_BUTTON_TRIGGER: _ACS_DEV_SUBEVENT_ENUM_ = 29; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_EMERGENCY_BUTTON_RESUME: _ACS_DEV_SUBEVENT_ENUM_ = 30; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_RES: _ACS_DEV_SUBEVENT_ENUM_ = 31; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_SUBMARINEBACK_COMM_BREAK: _ACS_DEV_SUBEVENT_ENUM_ = 32; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_SUBMARINEBACK_COMM_RESUME: _ACS_DEV_SUBEVENT_ENUM_ = 33; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_REMOTE_ACTUAL_GUARD: _ACS_DEV_SUBEVENT_ENUM_ = 34; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_REMOTE_ACTUAL_UNGUARD: _ACS_DEV_SUBEVENT_ENUM_ = 35; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_MOTOR_SENSOR_EXCEPTION: _ACS_DEV_SUBEVENT_ENUM_ = 36; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_CAN_BUS_EXCEPTION: _ACS_DEV_SUBEVENT_ENUM_ = 37; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_CAN_BUS_RESUME: _ACS_DEV_SUBEVENT_ENUM_ = 38; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_GATE_TEMPERATURE_OVERRUN: _ACS_DEV_SUBEVENT_ENUM_ = 39; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_IR_EMITTER_EXCEPTION: _ACS_DEV_SUBEVENT_ENUM_ = 40; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_IR_EMITTER_RESUME: _ACS_DEV_SUBEVENT_ENUM_ = 41; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_LAMP_BOARD_COMM_EXCEPTION: _ACS_DEV_SUBEVENT_ENUM_ = 42; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_LAMP_BOARD_COMM_RESUME: _ACS_DEV_SUBEVENT_ENUM_ = 43; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_IR_ADAPTOR_BOARD_COMM_EXCEPTION: + _ACS_DEV_SUBEVENT_ENUM_ = 44; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_IR_ADAPTOR_BOARD_COMM_RESUME: _ACS_DEV_SUBEVENT_ENUM_ = + 45; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_CHANNEL_CONTROLLER_DESMANTLE_ALARM: + _ACS_DEV_SUBEVENT_ENUM_ = 46; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_CHANNEL_CONTROLLER_DESMANTLE_RESUME: + _ACS_DEV_SUBEVENT_ENUM_ = 47; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_CHANNEL_CONTROLLER_FIRE_IMPORT_ALARM: + _ACS_DEV_SUBEVENT_ENUM_ = 48; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_CHANNEL_CONTROLLER_FIRE_IMPORT_RESUME: + _ACS_DEV_SUBEVENT_ENUM_ = 49; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_STAY_EVENT: _ACS_DEV_SUBEVENT_ENUM_ = 50; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_LEGAL_EVENT_NEARLY_FULL: _ACS_DEV_SUBEVENT_ENUM_ = 51; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_FIRE_IMPORT_ALARM: _ACS_DEV_SUBEVENT_ENUM_ = 52; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_NOMASK_ALARM: _ACS_DEV_SUBEVENT_ENUM_ = 53; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_FIREMATRIX_EVENT: _ACS_DEV_SUBEVENT_ENUM_ = 54; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_HEALTH_INFO_ABNORMAL_LOCK: _ACS_DEV_SUBEVENT_ENUM_ = 55; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_HEALTH_INFO_ABNORMAL_UNLOCK: _ACS_DEV_SUBEVENT_ENUM_ = + 56; +pub const _ACS_DEV_SUBEVENT_ENUM__EVENT_ACS_IPC_EVENT: _ACS_DEV_SUBEVENT_ENUM_ = 57; +pub type _ACS_DEV_SUBEVENT_ENUM_ = ::std::os::raw::c_uint; +pub use self::_ACS_DEV_SUBEVENT_ENUM_ as ACS_DEV_SUBEVENT_ENUM; +pub const _ACS_ALARM_SUBEVENT_ENUM__EVENT_ACS_ALARMIN_SHORT_CIRCUIT: _ACS_ALARM_SUBEVENT_ENUM_ = 0; +pub const _ACS_ALARM_SUBEVENT_ENUM__EVENT_ACS_ALARMIN_BROKEN_CIRCUIT: _ACS_ALARM_SUBEVENT_ENUM_ = 1; +pub const _ACS_ALARM_SUBEVENT_ENUM__EVENT_ACS_ALARMIN_EXCEPTION: _ACS_ALARM_SUBEVENT_ENUM_ = 2; +pub const _ACS_ALARM_SUBEVENT_ENUM__EVENT_ACS_ALARMIN_RESUME: _ACS_ALARM_SUBEVENT_ENUM_ = 3; +pub const _ACS_ALARM_SUBEVENT_ENUM__EVENT_ACS_CASE_SENSOR_ALARM: _ACS_ALARM_SUBEVENT_ENUM_ = 4; +pub const _ACS_ALARM_SUBEVENT_ENUM__EVENT_ACS_CASE_SENSOR_RESUME: _ACS_ALARM_SUBEVENT_ENUM_ = 5; +pub type _ACS_ALARM_SUBEVENT_ENUM_ = ::std::os::raw::c_uint; +pub use self::_ACS_ALARM_SUBEVENT_ENUM_ as ACS_ALARM_SUBEVENT_ENUM; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_LEADER_CARD_OPEN_BEGIN: _ACS_DOOR_SUBEVENT_ENUM_ = 0; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_LEADER_CARD_OPEN_END: _ACS_DOOR_SUBEVENT_ENUM_ = 1; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_ALWAYS_OPEN_BEGIN: _ACS_DOOR_SUBEVENT_ENUM_ = 2; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_ALWAYS_OPEN_END: _ACS_DOOR_SUBEVENT_ENUM_ = 3; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_ALWAYS_CLOSE_BEGIN: _ACS_DOOR_SUBEVENT_ENUM_ = 4; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_ALWAYS_CLOSE_END: _ACS_DOOR_SUBEVENT_ENUM_ = 5; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_LOCK_OPEN: _ACS_DOOR_SUBEVENT_ENUM_ = 6; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_LOCK_CLOSE: _ACS_DOOR_SUBEVENT_ENUM_ = 7; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_DOOR_BUTTON_PRESS: _ACS_DOOR_SUBEVENT_ENUM_ = 8; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_DOOR_BUTTON_RELEASE: _ACS_DOOR_SUBEVENT_ENUM_ = 9; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_DOOR_OPEN_NORMAL: _ACS_DOOR_SUBEVENT_ENUM_ = 10; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_DOOR_CLOSE_NORMAL: _ACS_DOOR_SUBEVENT_ENUM_ = 11; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_DOOR_OPEN_ABNORMAL: _ACS_DOOR_SUBEVENT_ENUM_ = 12; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_DOOR_OPEN_TIMEOUT: _ACS_DOOR_SUBEVENT_ENUM_ = 13; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_REMOTE_OPEN_DOOR: _ACS_DOOR_SUBEVENT_ENUM_ = 14; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_REMOTE_CLOSE_DOOR: _ACS_DOOR_SUBEVENT_ENUM_ = 15; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_REMOTE_ALWAYS_OPEN: _ACS_DOOR_SUBEVENT_ENUM_ = 16; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_REMOTE_ALWAYS_CLOSE: _ACS_DOOR_SUBEVENT_ENUM_ = 17; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_NOT_BELONG_MULTI_GROUP: _ACS_DOOR_SUBEVENT_ENUM_ = 18; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_INVALID_MULTI_VERIFY_PERIOD: _ACS_DOOR_SUBEVENT_ENUM_ = + 19; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_MULTI_VERIFY_SUPER_RIGHT_FAIL: + _ACS_DOOR_SUBEVENT_ENUM_ = 20; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_MULTI_VERIFY_REMOTE_RIGHT_FAIL: + _ACS_DOOR_SUBEVENT_ENUM_ = 21; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_MULTI_VERIFY_SUCCESS: _ACS_DOOR_SUBEVENT_ENUM_ = 22; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_MULTI_VERIFY_NEED_REMOTE_OPEN: + _ACS_DOOR_SUBEVENT_ENUM_ = 23; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_MULTI_VERIFY_SUPERPASSWD_VERIFY_SUCCESS: + _ACS_DOOR_SUBEVENT_ENUM_ = 24; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_MULTI_VERIFY_REPEAT_VERIFY_FAIL: + _ACS_DOOR_SUBEVENT_ENUM_ = 25; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_MULTI_VERIFY_TIMEOUT: _ACS_DOOR_SUBEVENT_ENUM_ = 26; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_REMOTE_CAPTURE_PIC: _ACS_DOOR_SUBEVENT_ENUM_ = 27; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_DOORBELL_RINGING: _ACS_DOOR_SUBEVENT_ENUM_ = 28; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_SECURITY_MODULE_DESMANTLE_ALARM: + _ACS_DOOR_SUBEVENT_ENUM_ = 29; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_CALL_CENTER: _ACS_DOOR_SUBEVENT_ENUM_ = 30; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_FIRSTCARD_AUTHORIZE_BEGIN: _ACS_DOOR_SUBEVENT_ENUM_ = + 31; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_FIRSTCARD_AUTHORIZE_END: _ACS_DOOR_SUBEVENT_ENUM_ = 32; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_DOORLOCK_INPUT_SHORT_CIRCUIT: + _ACS_DOOR_SUBEVENT_ENUM_ = 33; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_DOORLOCK_INPUT_BROKEN_CIRCUIT: + _ACS_DOOR_SUBEVENT_ENUM_ = 34; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_DOORLOCK_INPUT_EXCEPTION: _ACS_DOOR_SUBEVENT_ENUM_ = + 35; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_DOORCONTACT_INPUT_SHORT_CIRCUIT: + _ACS_DOOR_SUBEVENT_ENUM_ = 36; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_DOORCONTACT_INPUT_BROKEN_CIRCUIT: + _ACS_DOOR_SUBEVENT_ENUM_ = 37; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_DOORCONTACT_INPUT_EXCEPTION: _ACS_DOOR_SUBEVENT_ENUM_ = + 38; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_OPENBUTTON_INPUT_SHORT_CIRCUIT: + _ACS_DOOR_SUBEVENT_ENUM_ = 39; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_OPENBUTTON_INPUT_BROKEN_CIRCUIT: + _ACS_DOOR_SUBEVENT_ENUM_ = 40; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_OPENBUTTON_INPUT_EXCEPTION: _ACS_DOOR_SUBEVENT_ENUM_ = + 41; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_DOORLOCK_OPEN_EXCEPTION: _ACS_DOOR_SUBEVENT_ENUM_ = 42; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_DOORLOCK_OPEN_TIMEOUT: _ACS_DOOR_SUBEVENT_ENUM_ = 43; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_FIRSTCARD_OPEN_WITHOUT_AUTHORIZE: + _ACS_DOOR_SUBEVENT_ENUM_ = 44; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_CALL_LADDER_RELAY_BREAK: _ACS_DOOR_SUBEVENT_ENUM_ = 45; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_CALL_LADDER_RELAY_CLOSE: _ACS_DOOR_SUBEVENT_ENUM_ = 46; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_AUTO_KEY_RELAY_BREAK: _ACS_DOOR_SUBEVENT_ENUM_ = 47; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_AUTO_KEY_RELAY_CLOSE: _ACS_DOOR_SUBEVENT_ENUM_ = 48; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_KEY_CONTROL_RELAY_BREAK: _ACS_DOOR_SUBEVENT_ENUM_ = 49; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_KEY_CONTROL_RELAY_CLOSE: _ACS_DOOR_SUBEVENT_ENUM_ = 50; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_REMOTE_VISITOR_CALL_LADDER: _ACS_DOOR_SUBEVENT_ENUM_ = + 51; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_REMOTE_HOUSEHOLD_CALL_LADDER: + _ACS_DOOR_SUBEVENT_ENUM_ = 52; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_LEGAL_MESSAGE: _ACS_DOOR_SUBEVENT_ENUM_ = 53; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_ILLEGAL_MESSAGE: _ACS_DOOR_SUBEVENT_ENUM_ = 54; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_TRAILING: _ACS_DOOR_SUBEVENT_ENUM_ = 55; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_REVERSE_ACCESS: _ACS_DOOR_SUBEVENT_ENUM_ = 56; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_FORCE_ACCESS: _ACS_DOOR_SUBEVENT_ENUM_ = 57; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_CLIMBING_OVER_GATE: _ACS_DOOR_SUBEVENT_ENUM_ = 58; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_PASSING_TIMEOUT: _ACS_DOOR_SUBEVENT_ENUM_ = 59; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_INTRUSION_ALARM: _ACS_DOOR_SUBEVENT_ENUM_ = 60; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_FREE_GATE_PASS_NOT_AUTH: _ACS_DOOR_SUBEVENT_ENUM_ = 61; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_DROP_ARM_BLOCK: _ACS_DOOR_SUBEVENT_ENUM_ = 62; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_DROP_ARM_BLOCK_RESUME: _ACS_DOOR_SUBEVENT_ENUM_ = 63; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_REMOTE_CONTROL_CLOSE_DOOR: _ACS_DOOR_SUBEVENT_ENUM_ = + 64; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_REMOTE_CONTROL_OPEN_DOOR: _ACS_DOOR_SUBEVENT_ENUM_ = + 65; +pub const _ACS_DOOR_SUBEVENT_ENUM__EVENT_ACS_REMOTE_CONTROL_ALWAYS_OPEN_DOOR: + _ACS_DOOR_SUBEVENT_ENUM_ = 66; +pub type _ACS_DOOR_SUBEVENT_ENUM_ = ::std::os::raw::c_uint; +pub use self::_ACS_DOOR_SUBEVENT_ENUM_ as ACS_DOOR_SUBEVENT_ENUM; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_STRESS_ALARM: _ACS_CARD_READER_SUBEVENT_ENUM_ = + 0; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_CARD_READER_DESMANTLE_ALARM: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 1; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_LEGAL_CARD_PASS: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 2; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_CARD_AND_PSW_PASS: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 3; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_CARD_AND_PSW_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 4; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_CARD_AND_PSW_TIMEOUT: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 5; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_CARD_MAX_AUTHENTICATE_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 6; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_CARD_NO_RIGHT: _ACS_CARD_READER_SUBEVENT_ENUM_ = + 7; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_CARD_INVALID_PERIOD: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 8; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_CARD_OUT_OF_DATE: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 9; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_INVALID_CARD: _ACS_CARD_READER_SUBEVENT_ENUM_ = + 10; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_ANTI_SNEAK_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 11; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_INTERLOCK_DOOR_NOT_CLOSE: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 12; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_FINGERPRINT_COMPARE_PASS: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 13; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_FINGERPRINT_COMPARE_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 14; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_CARD_FINGERPRINT_VERIFY_PASS: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 15; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_CARD_FINGERPRINT_VERIFY_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 16; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_CARD_FINGERPRINT_VERIFY_TIMEOUT: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 17; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_CARD_FINGERPRINT_PASSWD_VERIFY_PASS: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 18; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_CARD_FINGERPRINT_PASSWD_VERIFY_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 19; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_CARD_FINGERPRINT_PASSWD_VERIFY_TIMEOUT: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 20; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_FINGERPRINT_PASSWD_VERIFY_PASS: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 21; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_FINGERPRINT_PASSWD_VERIFY_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 22; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_FINGERPRINT_PASSWD_VERIFY_TIMEOUT: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 23; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_FINGERPRINT_INEXISTENCE: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 24; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_FACE_VERIFY_PASS: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 25; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_FACE_VERIFY_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 26; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_FACE_AND_FP_VERIFY_PASS: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 27; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_FACE_AND_FP_VERIFY_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 28; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_FACE_AND_FP_VERIFY_TIMEOUT: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 29; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_FACE_AND_PW_VERIFY_PASS: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 30; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_FACE_AND_PW_VERIFY_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 31; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_FACE_AND_PW_VERIFY_TIMEOUT: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 32; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_FACE_AND_CARD_VERIFY_PASS: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 33; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_FACE_AND_CARD_VERIFY_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 34; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_FACE_AND_CARD_VERIFY_TIMEOUT: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 35; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_FACE_AND_PW_AND_FP_VERIFY_PASS: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 36; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_FACE_AND_PW_AND_FP_VERIFY_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 37; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_FACE_AND_PW_AND_FP_VERIFY_TIMEOUT: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 38; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_FACE_AND_CARD_AND_FP_VERIFY_PASS: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 39; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_FACE_AND_CARD_AND_FP_VERIFY_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 40; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_FACE_AND_CARD_AND_FP_VERIFY_TIMEOUT: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 41; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_EMPLOYEENO_AND_FP_VERIFY_PASS: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 42; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_EMPLOYEENO_AND_FP_VERIFY_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 43; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_EMPLOYEENO_AND_FP_VERIFY_TIMEOUT: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 44; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_EMPLOYEENO_AND_FP_AND_PW_VERIFY_PASS: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 45; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_EMPLOYEENO_AND_FP_AND_PW_VERIFY_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 46; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_EMPLOYEENO_AND_FP_AND_PW_VERIFY_TIMEOUT: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 47; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_EMPLOYEENO_AND_FACE_VERIFY_PASS: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 48; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_EMPLOYEENO_AND_FACE_VERIFY_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 49; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_EMPLOYEENO_AND_FACE_VERIFY_TIMEOUT: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 50; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_FACE_RECOGNIZE_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 51; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_EMPLOYEENO_AND_PW_PASS: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 52; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_EMPLOYEENO_AND_PW_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 53; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_EMPLOYEENO_AND_PW_TIMEOUT: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 54; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_HUMAN_DETECT_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 55; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_PEOPLE_AND_ID_CARD_COMPARE_PASS: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 56; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_PEOPLE_AND_ID_CARD_COMPARE_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 57; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_DOOR_OPEN_OR_DORMANT_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 58; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_AUTH_PLAN_DORMANT_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 59; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_CARD_ENCRYPT_VERIFY_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 60; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_SUBMARINEBACK_REPLY_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 61; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_PASSWORD_MISMATCH: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 62; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_EMPLOYEE_NO_NOT_EXIST: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 63; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_COMBINED_VERIFY_PASS: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 64; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_COMBINED_VERIFY_TIMEOUT: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 65; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_VERIFY_MODE_MISMATCH: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 66; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_PSW_ERROR_OVER_TIMES: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 67; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_PSW_VERIFY_PASS: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 68; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_PSW_VERIFY_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 69; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_ORCODE_VERIFY_PASS: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 70; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_ORCODE_VERIFY_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 71; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_HOUSEHOLDER_AUTHORIZE_PASS: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 72; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_BLUETOOTH_VERIFY_PASS: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 73; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_BLUETOOTH_VERIFY_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 74; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_INFORMAL_MIFARE_CARD_VERIFY_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 75; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_CPU_CARD_ENCRYPT_VERIFY_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 76; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_NFC_DISABLE_VERIFY_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 77; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_EM_CARD_RECOGNIZE_NOT_ENABLED: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 78; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_M1_CARD_RECOGNIZE_NOT_ENABLED: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 79; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_CPU_CARD_RECOGNIZE_NOT_ENABLED: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 80; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_ID_CARD_RECOGNIZE_NOT_ENABLED: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 81; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_CARD_SET_SECRET_KEY_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 82; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_DESFIRE_CARD_ENCRYPT_VERIFY_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 83; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_DESFIRE_CARD_RECOGNIZE_NOT_ENABLED: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 84; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_IRIS_VERIFY_PASS: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 85; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_IRIS_VERIFY_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 86; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_IRIS_BIOASSAY_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 87; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_FELICA_CARD_RECOGNIZE_NOT_ENABLED: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 88; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_ORCODE_RECOGNIZE_PASS: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 89; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_VP_ANTI_SPOOFING_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 90; +pub const _ACS_CARD_READER_SUBEVENT_ENUM__EVENT_ACS_VP_VERIFY_FAIL: + _ACS_CARD_READER_SUBEVENT_ENUM_ = 91; +pub type _ACS_CARD_READER_SUBEVENT_ENUM_ = ::std::os::raw::c_uint; +pub use self::_ACS_CARD_READER_SUBEVENT_ENUM_ as ACS_CARD_READER_SUBEVENT_ENUM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EVENT_LINKAGE_INFO { + pub wMainEventType: WORD, + pub wSubEventType: WORD, + pub byRes: [BYTE; 28usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EVENT_LINKAGE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_DVR_EVENT_LINKAGE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EVENT_LINKAGE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMainEventType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_INFO), + "::", + stringify!(wMainEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSubEventType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_INFO), + "::", + stringify!(wSubEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EVENT_LINKAGE_INFO = tagNET_DVR_EVENT_LINKAGE_INFO; +pub type LPNET_DVR_EVENT_LINKAGE_INFO = *mut tagNET_DVR_EVENT_LINKAGE_INFO; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_EVETN_CARD_LINKAGE_UNION { + pub byCardNo: [BYTE; 32usize], + pub struEventLinkage: NET_DVR_EVENT_LINKAGE_INFO, + pub byMACAddr: [BYTE; 6usize], + pub byEmployeeNo: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EVETN_CARD_LINKAGE_UNION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_DVR_EVETN_CARD_LINKAGE_UNION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_EVETN_CARD_LINKAGE_UNION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVETN_CARD_LINKAGE_UNION), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEventLinkage) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVETN_CARD_LINKAGE_UNION), + "::", + stringify!(struEventLinkage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMACAddr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVETN_CARD_LINKAGE_UNION), + "::", + stringify!(byMACAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEmployeeNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVETN_CARD_LINKAGE_UNION), + "::", + stringify!(byEmployeeNo) + ) + ); +} +pub type NET_DVR_EVETN_CARD_LINKAGE_UNION = tagNET_DVR_EVETN_CARD_LINKAGE_UNION; +pub type LPNET_DVR_EVETN_CARD_LINKAGE_UNION = *mut tagNET_DVR_EVETN_CARD_LINKAGE_UNION; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_EVENT_CARD_LINKAGE_CFG { + pub dwSize: DWORD, + pub byProMode: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwEventSourceID: DWORD, + pub uLinkageInfo: NET_DVR_EVETN_CARD_LINKAGE_UNION, + pub byAlarmout: [BYTE; 512usize], + pub byRes2: [BYTE; 32usize], + pub byOpenDoor: [BYTE; 256usize], + pub byCloseDoor: [BYTE; 256usize], + pub byNormalOpen: [BYTE; 256usize], + pub byNormalClose: [BYTE; 256usize], + pub byMainDevBuzzer: BYTE, + pub byCapturePic: BYTE, + pub byRecordVideo: BYTE, + pub byRes3: [BYTE; 29usize], + pub byReaderBuzzer: [BYTE; 512usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EVENT_CARD_LINKAGE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2284usize, + concat!("Size of: ", stringify!(tagNET_DVR_EVENT_CARD_LINKAGE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_EVENT_CARD_LINKAGE_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CARD_LINKAGE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CARD_LINKAGE_CFG), + "::", + stringify!(byProMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CARD_LINKAGE_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEventSourceID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CARD_LINKAGE_CFG), + "::", + stringify!(dwEventSourceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLinkageInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CARD_LINKAGE_CFG), + "::", + stringify!(uLinkageInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmout) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CARD_LINKAGE_CFG), + "::", + stringify!(byAlarmout) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 556usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CARD_LINKAGE_CFG), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOpenDoor) as usize - ptr as usize }, + 588usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CARD_LINKAGE_CFG), + "::", + stringify!(byOpenDoor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCloseDoor) as usize - ptr as usize }, + 844usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CARD_LINKAGE_CFG), + "::", + stringify!(byCloseDoor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNormalOpen) as usize - ptr as usize }, + 1100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CARD_LINKAGE_CFG), + "::", + stringify!(byNormalOpen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNormalClose) as usize - ptr as usize }, + 1356usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CARD_LINKAGE_CFG), + "::", + stringify!(byNormalClose) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainDevBuzzer) as usize - ptr as usize }, + 1612usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CARD_LINKAGE_CFG), + "::", + stringify!(byMainDevBuzzer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCapturePic) as usize - ptr as usize }, + 1613usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CARD_LINKAGE_CFG), + "::", + stringify!(byCapturePic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordVideo) as usize - ptr as usize }, + 1614usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CARD_LINKAGE_CFG), + "::", + stringify!(byRecordVideo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 1615usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CARD_LINKAGE_CFG), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReaderBuzzer) as usize - ptr as usize }, + 1644usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CARD_LINKAGE_CFG), + "::", + stringify!(byReaderBuzzer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CARD_LINKAGE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EVENT_CARD_LINKAGE_CFG = tagNET_DVR_EVENT_CARD_LINKAGE_CFG; +pub type LPNET_DVR_EVENT_CARD_LINKAGE_CFG = *mut tagNET_DVR_EVENT_CARD_LINKAGE_CFG; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50 { + pub dwSize: DWORD, + pub byProMode: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwEventSourceID: DWORD, + pub uLinkageInfo: NET_DVR_EVETN_CARD_LINKAGE_UNION, + pub byAlarmout: [BYTE; 512usize], + pub byRes2: [BYTE; 32usize], + pub byOpenDoor: [BYTE; 256usize], + pub byCloseDoor: [BYTE; 256usize], + pub byNormalOpen: [BYTE; 256usize], + pub byNormalClose: [BYTE; 256usize], + pub byMainDevBuzzer: BYTE, + pub byCapturePic: BYTE, + pub byRecordVideo: BYTE, + pub byRes3: [BYTE; 29usize], + pub byReaderBuzzer: [BYTE; 512usize], + pub byAlarmOutClose: [BYTE; 512usize], + pub byAlarmInSetup: [BYTE; 512usize], + pub byAlarmInClose: [BYTE; 512usize], + pub byRes: [BYTE; 500usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4192usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50), + "::", + stringify!(byProMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEventSourceID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50), + "::", + stringify!(dwEventSourceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLinkageInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50), + "::", + stringify!(uLinkageInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmout) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50), + "::", + stringify!(byAlarmout) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 556usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOpenDoor) as usize - ptr as usize }, + 588usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50), + "::", + stringify!(byOpenDoor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCloseDoor) as usize - ptr as usize }, + 844usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50), + "::", + stringify!(byCloseDoor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNormalOpen) as usize - ptr as usize }, + 1100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50), + "::", + stringify!(byNormalOpen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNormalClose) as usize - ptr as usize }, + 1356usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50), + "::", + stringify!(byNormalClose) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainDevBuzzer) as usize - ptr as usize }, + 1612usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50), + "::", + stringify!(byMainDevBuzzer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCapturePic) as usize - ptr as usize }, + 1613usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50), + "::", + stringify!(byCapturePic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordVideo) as usize - ptr as usize }, + 1614usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50), + "::", + stringify!(byRecordVideo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 1615usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReaderBuzzer) as usize - ptr as usize }, + 1644usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50), + "::", + stringify!(byReaderBuzzer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutClose) as usize - ptr as usize }, + 2156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50), + "::", + stringify!(byAlarmOutClose) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInSetup) as usize - ptr as usize }, + 2668usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50), + "::", + stringify!(byAlarmInSetup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInClose) as usize - ptr as usize }, + 3180usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50), + "::", + stringify!(byAlarmInClose) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3692usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EVENT_CARD_LINKAGE_CFG_V50 = tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50; +pub type LPNET_DVR_EVENT_CARD_LINKAGE_CFG_V50 = *mut tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51 { + pub dwSize: DWORD, + pub byProMode: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwEventSourceID: DWORD, + pub uLinkageInfo: NET_DVR_EVETN_CARD_LINKAGE_UNION, + pub byAlarmout: [BYTE; 512usize], + pub byRes2: [BYTE; 32usize], + pub byOpenDoor: [BYTE; 256usize], + pub byCloseDoor: [BYTE; 256usize], + pub byNormalOpen: [BYTE; 256usize], + pub byNormalClose: [BYTE; 256usize], + pub byMainDevBuzzer: BYTE, + pub byCapturePic: BYTE, + pub byRecordVideo: BYTE, + pub byMainDevStopBuzzer: BYTE, + pub wAudioDisplayID: WORD, + pub byAudioDisplayMode: BYTE, + pub byRes3: [BYTE; 25usize], + pub byReaderBuzzer: [BYTE; 512usize], + pub byAlarmOutClose: [BYTE; 512usize], + pub byAlarmInSetup: [BYTE; 512usize], + pub byAlarmInClose: [BYTE; 512usize], + pub byReaderStopBuzzer: [BYTE; 512usize], + pub byRes: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4716usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51), + "::", + stringify!(byProMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEventSourceID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51), + "::", + stringify!(dwEventSourceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLinkageInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51), + "::", + stringify!(uLinkageInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmout) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51), + "::", + stringify!(byAlarmout) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 556usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOpenDoor) as usize - ptr as usize }, + 588usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51), + "::", + stringify!(byOpenDoor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCloseDoor) as usize - ptr as usize }, + 844usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51), + "::", + stringify!(byCloseDoor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNormalOpen) as usize - ptr as usize }, + 1100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51), + "::", + stringify!(byNormalOpen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNormalClose) as usize - ptr as usize }, + 1356usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51), + "::", + stringify!(byNormalClose) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainDevBuzzer) as usize - ptr as usize }, + 1612usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51), + "::", + stringify!(byMainDevBuzzer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCapturePic) as usize - ptr as usize }, + 1613usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51), + "::", + stringify!(byCapturePic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordVideo) as usize - ptr as usize }, + 1614usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51), + "::", + stringify!(byRecordVideo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainDevStopBuzzer) as usize - ptr as usize }, + 1615usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51), + "::", + stringify!(byMainDevStopBuzzer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAudioDisplayID) as usize - ptr as usize }, + 1616usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51), + "::", + stringify!(wAudioDisplayID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioDisplayMode) as usize - ptr as usize }, + 1618usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51), + "::", + stringify!(byAudioDisplayMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 1619usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReaderBuzzer) as usize - ptr as usize }, + 1644usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51), + "::", + stringify!(byReaderBuzzer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmOutClose) as usize - ptr as usize }, + 2156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51), + "::", + stringify!(byAlarmOutClose) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInSetup) as usize - ptr as usize }, + 2668usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51), + "::", + stringify!(byAlarmInSetup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmInClose) as usize - ptr as usize }, + 3180usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51), + "::", + stringify!(byAlarmInClose) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReaderStopBuzzer) as usize - ptr as usize }, + 3692usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51), + "::", + stringify!(byReaderStopBuzzer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4204usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EVENT_CARD_LINKAGE_CFG_V51 = tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51; +pub type LPNET_DVR_EVENT_CARD_LINKAGE_CFG_V51 = *mut tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EVENT_CARD_LINKAGE_COND { + pub dwSize: DWORD, + pub dwEventID: DWORD, + pub wLocalControllerID: WORD, + pub byRes: [BYTE; 106usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EVENT_CARD_LINKAGE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 116usize, + concat!("Size of: ", stringify!(tagNET_DVR_EVENT_CARD_LINKAGE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_EVENT_CARD_LINKAGE_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CARD_LINKAGE_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEventID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CARD_LINKAGE_COND), + "::", + stringify!(dwEventID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalControllerID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CARD_LINKAGE_COND), + "::", + stringify!(wLocalControllerID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EVENT_CARD_LINKAGE_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EVENT_CARD_LINKAGE_COND = tagNET_DVR_EVENT_CARD_LINKAGE_COND; +pub type LPNET_DVR_EVENT_CARD_LINKAGE_COND = *mut tagNET_DVR_EVENT_CARD_LINKAGE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RIGHT_CONTROLLER_AUDIO_PARAM { + pub dwSize: DWORD, + pub dwFileSize: DWORD, + pub dwAudioID: DWORD, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RIGHT_CONTROLLER_AUDIO_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 268usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_RIGHT_CONTROLLER_AUDIO_PARAM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_RIGHT_CONTROLLER_AUDIO_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RIGHT_CONTROLLER_AUDIO_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileSize) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RIGHT_CONTROLLER_AUDIO_PARAM), + "::", + stringify!(dwFileSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAudioID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RIGHT_CONTROLLER_AUDIO_PARAM), + "::", + stringify!(dwAudioID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RIGHT_CONTROLLER_AUDIO_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RIGHT_CONTROLLER_AUDIO_PARAM = tagNET_DVR_RIGHT_CONTROLLER_AUDIO_PARAM; +pub type LPNET_DVR_RIGHT_CONTROLLER_AUDIO_PARAM = *mut tagNET_DVR_RIGHT_CONTROLLER_AUDIO_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CLIENT_CALIBFILE_PARAM { + pub dwSize: DWORD, + pub dwFileLen: DWORD, + pub byChannel: BYTE, + pub byFileType: BYTE, + pub byRes: [BYTE; 22usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CLIENT_CALIBFILE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_DVR_CLIENT_CALIBFILE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_CLIENT_CALIBFILE_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLIENT_CALIBFILE_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileLen) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLIENT_CALIBFILE_PARAM), + "::", + stringify!(dwFileLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLIENT_CALIBFILE_PARAM), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileType) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLIENT_CALIBFILE_PARAM), + "::", + stringify!(byFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLIENT_CALIBFILE_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CLIENT_CALIBFILE_PARAM = tagNET_DVR_CLIENT_CALIBFILE_PARAM; +pub type LPNET_DVR_CLIENT_CALIBFILE_PARAM = *mut tagNET_DVR_CLIENT_CALIBFILE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RATIOSTITCHING_PARAM { + pub dwSize: DWORD, + pub dwFileLen: DWORD, + pub byChannel: BYTE, + pub byRes: [BYTE; 23usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RATIOSTITCHING_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_DVR_RATIOSTITCHING_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RATIOSTITCHING_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RATIOSTITCHING_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileLen) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RATIOSTITCHING_PARAM), + "::", + stringify!(dwFileLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RATIOSTITCHING_PARAM), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RATIOSTITCHING_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RATIOSTITCHING_PARAM = tagNET_DVR_RATIOSTITCHING_PARAM; +pub type LPNET_DVR_RATIOSTITCHING_PARAM = *mut tagNET_DVR_RATIOSTITCHING_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIDEOWALL_MATERIAL_COND { + pub dwSize: DWORD, + pub byWallNo: BYTE, + pub byWindowType: BYTE, + pub byFileType: BYTE, + pub byRes1: BYTE, + pub dwWindowNo: DWORD, + pub dwMaterialNo: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEOWALL_MATERIAL_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEOWALL_MATERIAL_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VIDEOWALL_MATERIAL_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALL_MATERIAL_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWallNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALL_MATERIAL_COND), + "::", + stringify!(byWallNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWindowType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALL_MATERIAL_COND), + "::", + stringify!(byWindowType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileType) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALL_MATERIAL_COND), + "::", + stringify!(byFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALL_MATERIAL_COND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWindowNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALL_MATERIAL_COND), + "::", + stringify!(dwWindowNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaterialNo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALL_MATERIAL_COND), + "::", + stringify!(dwMaterialNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEOWALL_MATERIAL_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VIDEOWALL_MATERIAL_COND = tagNET_DVR_VIDEOWALL_MATERIAL_COND; +pub type LPNET_DVR_VIDEOWALL_MATERIAL_COND = *mut tagNET_DVR_VIDEOWALL_MATERIAL_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CORRECT_TABLE_3200W_PARAM { + pub dwSize: DWORD, + pub dwFileLen: DWORD, + pub byChannel: BYTE, + pub byFileType: BYTE, + pub byRes: [BYTE; 22usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CORRECT_TABLE_3200W_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_CORRECT_TABLE_3200W_PARAM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_CORRECT_TABLE_3200W_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CORRECT_TABLE_3200W_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileLen) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CORRECT_TABLE_3200W_PARAM), + "::", + stringify!(dwFileLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CORRECT_TABLE_3200W_PARAM), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileType) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CORRECT_TABLE_3200W_PARAM), + "::", + stringify!(byFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CORRECT_TABLE_3200W_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CORRECT_TABLE_3200W_PARAM = tagNET_DVR_CORRECT_TABLE_3200W_PARAM; +pub type LPNET_DVR_CORRECT_TABLE_3200W_PARAM = *mut tagNET_DVR_CORRECT_TABLE_3200W_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FOUR_CAMERAS_PICTURES { + pub dwSize: DWORD, + pub dwFileLen: DWORD, + pub byChannel: BYTE, + pub byRes: [BYTE; 23usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FOUR_CAMERAS_PICTURES() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_DVR_FOUR_CAMERAS_PICTURES)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FOUR_CAMERAS_PICTURES) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FOUR_CAMERAS_PICTURES), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileLen) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FOUR_CAMERAS_PICTURES), + "::", + stringify!(dwFileLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FOUR_CAMERAS_PICTURES), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FOUR_CAMERAS_PICTURES), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FOUR_CAMERAS_PICTURES = tagNET_DVR_FOUR_CAMERAS_PICTURES; +pub type LPNET_DVR_FOUR_CAMERAS_PICTURES = *mut tagNET_DVR_FOUR_CAMERAS_PICTURES; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEVTYPE_CALIBFILE_PARAM { + pub dwSize: DWORD, + pub dwFileLen: DWORD, + pub byChannel: BYTE, + pub byFileType: BYTE, + pub byRes: [BYTE; 22usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEVTYPE_CALIBFILE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEVTYPE_CALIBFILE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_DEVTYPE_CALIBFILE_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVTYPE_CALIBFILE_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileLen) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVTYPE_CALIBFILE_PARAM), + "::", + stringify!(dwFileLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannel) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVTYPE_CALIBFILE_PARAM), + "::", + stringify!(byChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileType) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVTYPE_CALIBFILE_PARAM), + "::", + stringify!(byFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVTYPE_CALIBFILE_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DEVTYPE_CALIBFILE_PARAM = tagNET_DVR_DEVTYPE_CALIBFILE_PARAM; +pub type LPNET_DVR_DEVTYPE_CALIBFILE_PARAM = *mut tagNET_DVR_DEVTYPE_CALIBFILE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ANTI_SNEAK_HOST_INFO { + pub struDVRIP: NET_DVR_ADDRESS, + pub byIsStartAddr: BYTE, + pub byHostNo: BYTE, + pub byRes: [BYTE; 34usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ANTI_SNEAK_HOST_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 184usize, + concat!("Size of: ", stringify!(tagNET_DVR_ANTI_SNEAK_HOST_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ANTI_SNEAK_HOST_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDVRIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANTI_SNEAK_HOST_INFO), + "::", + stringify!(struDVRIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsStartAddr) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANTI_SNEAK_HOST_INFO), + "::", + stringify!(byIsStartAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHostNo) as usize - ptr as usize }, + 149usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANTI_SNEAK_HOST_INFO), + "::", + stringify!(byHostNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANTI_SNEAK_HOST_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ANTI_SNEAK_HOST_INFO = tagNET_DVR_ANTI_SNEAK_HOST_INFO; +pub type LPNET_DVR_ANTI_SNEAK_HOST_INFO = *mut tagNET_DVR_ANTI_SNEAK_HOST_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ANTI_SNEAK_HOST_READER_INFO { + pub byAntiSnealHostNo: BYTE, + pub byRes: [BYTE; 5usize], + pub wFollowUpCardReader: WORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ANTI_SNEAK_HOST_READER_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ANTI_SNEAK_HOST_READER_INFO) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ANTI_SNEAK_HOST_READER_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAntiSnealHostNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANTI_SNEAK_HOST_READER_INFO), + "::", + stringify!(byAntiSnealHostNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANTI_SNEAK_HOST_READER_INFO), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFollowUpCardReader) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANTI_SNEAK_HOST_READER_INFO), + "::", + stringify!(wFollowUpCardReader) + ) + ); +} +pub type NET_DVR_ANTI_SNEAK_HOST_READER_INFO = tagNET_DVR_ANTI_SNEAK_HOST_READER_INFO; +pub type LPNET_DVR_ANTI_SNEAK_HOST_READER_INFO = *mut tagNET_DVR_ANTI_SNEAK_HOST_READER_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ANTI_SNEAK_MULTI_HOST_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub struSneakHost: [NET_DVR_ANTI_SNEAK_HOST_INFO; 8usize], + pub struStartReader: NET_DVR_ANTI_SNEAK_HOST_READER_INFO, + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ANTI_SNEAK_MULTI_HOST_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1616usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ANTI_SNEAK_MULTI_HOST_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ANTI_SNEAK_MULTI_HOST_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANTI_SNEAK_MULTI_HOST_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANTI_SNEAK_MULTI_HOST_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANTI_SNEAK_MULTI_HOST_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSneakHost) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANTI_SNEAK_MULTI_HOST_CFG), + "::", + stringify!(struSneakHost) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartReader) as usize - ptr as usize }, + 1480usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANTI_SNEAK_MULTI_HOST_CFG), + "::", + stringify!(struStartReader) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1488usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANTI_SNEAK_MULTI_HOST_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ANTI_SNEAK_MULTI_HOST_CFG = tagNET_DVR_ANTI_SNEAK_MULTI_HOST_CFG; +pub type LPNET_DVR_ANTI_SNEAK_MULTI_HOST_CFG = *mut tagNET_DVR_ANTI_SNEAK_MULTI_HOST_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ANTI_SNEAK_READER_CFG { + pub byEnable: BYTE, + pub byAntiSnealHostNo: BYTE, + pub wReaderID: WORD, + pub struSneakReaderInfo: [NET_DVR_ANTI_SNEAK_HOST_READER_INFO; 8usize], + pub byRes2: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ANTI_SNEAK_READER_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_ANTI_SNEAK_READER_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ANTI_SNEAK_READER_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANTI_SNEAK_READER_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAntiSnealHostNo) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANTI_SNEAK_READER_CFG), + "::", + stringify!(byAntiSnealHostNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wReaderID) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANTI_SNEAK_READER_CFG), + "::", + stringify!(wReaderID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSneakReaderInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANTI_SNEAK_READER_CFG), + "::", + stringify!(struSneakReaderInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANTI_SNEAK_READER_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ANTI_SNEAK_READER_CFG = tagNET_DVR_ANTI_SNEAK_READER_CFG; +pub type LPNET_DVR_ANTI_SNEAK_READER_CFG = *mut tagNET_DVR_ANTI_SNEAK_READER_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ANTI_SNEAK_MULTI_HOST_READERS_CFG { + pub dwSize: DWORD, + pub struReaderCfg: [NET_DVR_ANTI_SNEAK_READER_CFG; 16usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ANTI_SNEAK_MULTI_HOST_READERS_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1348usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ANTI_SNEAK_MULTI_HOST_READERS_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ANTI_SNEAK_MULTI_HOST_READERS_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANTI_SNEAK_MULTI_HOST_READERS_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struReaderCfg) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANTI_SNEAK_MULTI_HOST_READERS_CFG), + "::", + stringify!(struReaderCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ANTI_SNEAK_MULTI_HOST_READERS_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ANTI_SNEAK_MULTI_HOST_READERS_CFG = tagNET_DVR_ANTI_SNEAK_MULTI_HOST_READERS_CFG; +pub type LPNET_DVR_ANTI_SNEAK_MULTI_HOST_READERS_CFG = + *mut tagNET_DVR_ANTI_SNEAK_MULTI_HOST_READERS_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ACS_CFG { + pub dwSize: DWORD, + pub byRS485Backup: BYTE, + pub byShowCapPic: BYTE, + pub byShowCardNo: BYTE, + pub byShowUserInfo: BYTE, + pub byOverlayUserInfo: BYTE, + pub byVoicePrompt: BYTE, + pub byUploadCapPic: BYTE, + pub bySaveCapPic: BYTE, + pub byInputCardNo: BYTE, + pub byEnableWifiDetect: BYTE, + pub byEnable3G4G: BYTE, + pub byProtocol: BYTE, + pub byRes: [BYTE; 500usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ACS_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 516usize, + concat!("Size of: ", stringify!(tagNET_DVR_ACS_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ACS_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRS485Backup) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_CFG), + "::", + stringify!(byRS485Backup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShowCapPic) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_CFG), + "::", + stringify!(byShowCapPic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShowCardNo) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_CFG), + "::", + stringify!(byShowCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShowUserInfo) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_CFG), + "::", + stringify!(byShowUserInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverlayUserInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_CFG), + "::", + stringify!(byOverlayUserInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVoicePrompt) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_CFG), + "::", + stringify!(byVoicePrompt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUploadCapPic) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_CFG), + "::", + stringify!(byUploadCapPic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySaveCapPic) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_CFG), + "::", + stringify!(bySaveCapPic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInputCardNo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_CFG), + "::", + stringify!(byInputCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableWifiDetect) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_CFG), + "::", + stringify!(byEnableWifiDetect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable3G4G) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_CFG), + "::", + stringify!(byEnable3G4G) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProtocol) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_CFG), + "::", + stringify!(byProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ACS_CFG = tagNET_DVR_ACS_CFG; +pub type LPNET_DVR_ACS_CFG = *mut tagNET_DVR_ACS_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLATFORM_VERIFY_CFG { + pub dwSize: DWORD, + pub dwDoorNo: DWORD, + pub byResultType: BYTE, + pub byRes1: [BYTE; 3usize], + pub byScreenDisplay: [BYTE; 512usize], + pub byRes: [BYTE; 300usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLATFORM_VERIFY_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 824usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLATFORM_VERIFY_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PLATFORM_VERIFY_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATFORM_VERIFY_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDoorNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATFORM_VERIFY_CFG), + "::", + stringify!(dwDoorNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byResultType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATFORM_VERIFY_CFG), + "::", + stringify!(byResultType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATFORM_VERIFY_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScreenDisplay) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATFORM_VERIFY_CFG), + "::", + stringify!(byScreenDisplay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 524usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATFORM_VERIFY_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PLATFORM_VERIFY_CFG = tagNET_DVR_PLATFORM_VERIFY_CFG; +pub type LPNET_DVR_PLATFORM_VERIFY_CFG = *mut tagNET_DVR_PLATFORM_VERIFY_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PERSON_STATISTICS_CFG { + pub dwSize: DWORD, + pub byEnableStatistics: BYTE, + pub byEnableOfflineStatistics: BYTE, + pub byCountSignalStatisticalStandard: BYTE, + pub byRes: [BYTE; 605usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PERSON_STATISTICS_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 612usize, + concat!("Size of: ", stringify!(tagNET_DVR_PERSON_STATISTICS_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PERSON_STATISTICS_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PERSON_STATISTICS_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableStatistics) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PERSON_STATISTICS_CFG), + "::", + stringify!(byEnableStatistics) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableOfflineStatistics) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PERSON_STATISTICS_CFG), + "::", + stringify!(byEnableOfflineStatistics) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byCountSignalStatisticalStandard) as usize - ptr as usize + }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PERSON_STATISTICS_CFG), + "::", + stringify!(byCountSignalStatisticalStandard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PERSON_STATISTICS_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PERSON_STATISTICS_CFG = tagNET_DVR_PERSON_STATISTICS_CFG; +pub type LPNET_DVR_PERSON_STATISTICS_CFG = *mut tagNET_DVR_PERSON_STATISTICS_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ACS_SCREEN_DISPLAY_CFG { + pub dwSize: DWORD, + pub dwFontSize: DWORD, + pub dwRowSpacing: DWORD, + pub dwColumnSpacing: DWORD, + pub dwFirstRowPosition: DWORD, + pub byDegree: BYTE, + pub byScreenType: BYTE, + pub byRes: [BYTE; 306usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ACS_SCREEN_DISPLAY_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 328usize, + concat!("Size of: ", stringify!(tagNET_DVR_ACS_SCREEN_DISPLAY_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ACS_SCREEN_DISPLAY_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_SCREEN_DISPLAY_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFontSize) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_SCREEN_DISPLAY_CFG), + "::", + stringify!(dwFontSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRowSpacing) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_SCREEN_DISPLAY_CFG), + "::", + stringify!(dwRowSpacing) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwColumnSpacing) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_SCREEN_DISPLAY_CFG), + "::", + stringify!(dwColumnSpacing) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFirstRowPosition) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_SCREEN_DISPLAY_CFG), + "::", + stringify!(dwFirstRowPosition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDegree) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_SCREEN_DISPLAY_CFG), + "::", + stringify!(byDegree) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScreenType) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_SCREEN_DISPLAY_CFG), + "::", + stringify!(byScreenType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_SCREEN_DISPLAY_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ACS_SCREEN_DISPLAY_CFG = tagNET_DVR_ACS_SCREEN_DISPLAY_CFG; +pub type LPNET_DVR_ACS_SCREEN_DISPLAY_CFG = *mut tagNET_DVR_ACS_SCREEN_DISPLAY_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GATE_TIME_CFG { + pub dwSize: DWORD, + pub dwHoldOnALarmTime: DWORD, + pub dwHoldOnGateOpenTime: DWORD, + pub dwPostponeIntrusionAlarmTime: DWORD, + pub dwNoLaneAccessTimeLimitTime: DWORD, + pub dwSafetyZoneStayTime: DWORD, + pub byIRTriggerTimeoutTime: BYTE, + pub byRes: [BYTE; 299usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GATE_TIME_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 324usize, + concat!("Size of: ", stringify!(tagNET_DVR_GATE_TIME_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GATE_TIME_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_TIME_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHoldOnALarmTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_TIME_CFG), + "::", + stringify!(dwHoldOnALarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHoldOnGateOpenTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_TIME_CFG), + "::", + stringify!(dwHoldOnGateOpenTime) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).dwPostponeIntrusionAlarmTime) as usize - ptr as usize + }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_TIME_CFG), + "::", + stringify!(dwPostponeIntrusionAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNoLaneAccessTimeLimitTime) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_TIME_CFG), + "::", + stringify!(dwNoLaneAccessTimeLimitTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSafetyZoneStayTime) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_TIME_CFG), + "::", + stringify!(dwSafetyZoneStayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIRTriggerTimeoutTime) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_TIME_CFG), + "::", + stringify!(byIRTriggerTimeoutTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_TIME_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GATE_TIME_CFG = tagNET_DVR_GATE_TIME_CFG; +pub type LPNET_DVR_GATE_TIME_CFG = *mut tagNET_DVR_GATE_TIME_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CARD_PASSWD_CFG { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub byCardPassword: [BYTE; 8usize], + pub dwErrorCode: DWORD, + pub byCardValid: BYTE, + pub byRes2: [BYTE; 23usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CARD_PASSWD_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_CARD_PASSWD_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CARD_PASSWD_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PASSWD_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PASSWD_CFG), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardPassword) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PASSWD_CFG), + "::", + stringify!(byCardPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwErrorCode) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PASSWD_CFG), + "::", + stringify!(dwErrorCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardValid) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PASSWD_CFG), + "::", + stringify!(byCardValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 49usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PASSWD_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CARD_PASSWD_CFG = tagNET_DVR_CARD_PASSWD_CFG; +pub type LPNET_DVR_CARD_PASSWD_CFG = *mut tagNET_DVR_CARD_PASSWD_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CARD_PASSWD_STATUS { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub dwErrorCode: DWORD, + pub byRes2: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CARD_PASSWD_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(tagNET_DVR_CARD_PASSWD_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CARD_PASSWD_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PASSWD_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PASSWD_STATUS), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwErrorCode) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PASSWD_STATUS), + "::", + stringify!(dwErrorCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PASSWD_STATUS), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CARD_PASSWD_STATUS = tagNET_DVR_CARD_PASSWD_STATUS; +pub type LPNET_DVR_CARD_PASSWD_STATUS = *mut tagNET_DVR_CARD_PASSWD_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VEHICLE_RECOG_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VEHICLE_RECOG_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_VEHICLE_RECOG_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VEHICLE_RECOG_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VEHICLE_RECOG_COND = tagNET_DVR_VEHICLE_RECOG_COND; +pub type LPNET_DVR_VEHICLE_RECOG_COND = *mut tagNET_DVR_VEHICLE_RECOG_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VEHICLE_RECOG_CFG { + pub dwSize: DWORD, + pub sDataIndex: [::std::os::raw::c_char; 64usize], + pub wTaskNo: WORD, + pub byRes1: [BYTE; 2usize], + pub struPlateRect: NET_VCA_RECT, + pub sLicense: [::std::os::raw::c_char; 16usize], + pub dwRecogOperate: DWORD, + pub dwDataUploadType: DWORD, + pub dwPostID: DWORD, + pub struPostTime: NET_DVR_TIME_V30, + pub dwJsonLen: DWORD, + pub pJsonBuffer: *mut BYTE, + pub byRes: [BYTE; 107usize], + pub byPicDataType: BYTE, + pub sPicDataPath: [::std::os::raw::c_char; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VEHICLE_RECOG_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(tagNET_DVR_VEHICLE_RECOG_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VEHICLE_RECOG_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDataIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_CFG), + "::", + stringify!(sDataIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTaskNo) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_CFG), + "::", + stringify!(wTaskNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 70usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRect) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_CFG), + "::", + stringify!(struPlateRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLicense) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_CFG), + "::", + stringify!(sLicense) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecogOperate) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_CFG), + "::", + stringify!(dwRecogOperate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataUploadType) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_CFG), + "::", + stringify!(dwDataUploadType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPostID) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_CFG), + "::", + stringify!(dwPostID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPostTime) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_CFG), + "::", + stringify!(struPostTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwJsonLen) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_CFG), + "::", + stringify!(dwJsonLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pJsonBuffer) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_CFG), + "::", + stringify!(pJsonBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicDataType) as usize - ptr as usize }, + 251usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_CFG), + "::", + stringify!(byPicDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPicDataPath) as usize - ptr as usize }, + 252usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_CFG), + "::", + stringify!(sPicDataPath) + ) + ); +} +pub type NET_DVR_VEHICLE_RECOG_CFG = tagNET_DVR_VEHICLE_RECOG_CFG; +pub type LPNET_DVR_VEHICLE_RECOG_CFG = *mut tagNET_DVR_VEHICLE_RECOG_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VEHICLERECOG_TASK_RESULT { + pub dwSize: DWORD, + pub sDevDataIndex: [::std::os::raw::c_char; 64usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VEHICLERECOG_TASK_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 324usize, + concat!("Size of: ", stringify!(tagNET_DVR_VEHICLERECOG_TASK_RESULT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VEHICLERECOG_TASK_RESULT) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLERECOG_TASK_RESULT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDevDataIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLERECOG_TASK_RESULT), + "::", + stringify!(sDevDataIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLERECOG_TASK_RESULT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VEHICLERECOG_TASK_RESULT = tagNET_DVR_VEHICLERECOG_TASK_RESULT; +pub type LPNET_DVR_VEHICLERECOG_TASK_RESULT = *mut tagNET_DVR_VEHICLERECOG_TASK_RESULT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VEHICLE_RECOG_TASK_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub sDataIndex: [::std::os::raw::c_char; 64usize], + pub wTaskNo: WORD, + pub byTask: BYTE, + pub byRes1: BYTE, + pub sDevDataIndex: [::std::os::raw::c_char; 64usize], + pub byRes: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VEHICLE_RECOG_TASK_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 200usize, + concat!("Size of: ", stringify!(tagNET_DVR_VEHICLE_RECOG_TASK_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VEHICLE_RECOG_TASK_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_TASK_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_TASK_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDataIndex) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_TASK_COND), + "::", + stringify!(sDataIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTaskNo) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_TASK_COND), + "::", + stringify!(wTaskNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTask) as usize - ptr as usize }, + 74usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_TASK_COND), + "::", + stringify!(byTask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 75usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_TASK_COND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDevDataIndex) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_TASK_COND), + "::", + stringify!(sDevDataIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_TASK_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VEHICLE_RECOG_TASK_COND = tagNET_DVR_VEHICLE_RECOG_TASK_COND; +pub type LPNET_DVR_VEHICLE_RECOG_TASK_COND = *mut tagNET_DVR_VEHICLE_RECOG_TASK_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VEHICLE_RECOG_TASK_INFO { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub sDataIndex: [::std::os::raw::c_char; 64usize], + pub wTaskNo: WORD, + pub wTaskProgress: WORD, + pub byTaskState: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwRecogOperate: DWORD, + pub dwPostID: DWORD, + pub struPostTime: NET_DVR_TIME_V30, + pub dwJsonLen: DWORD, + pub pJsonBuffer: *mut BYTE, + pub byRes: [BYTE; 104usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VEHICLE_RECOG_TASK_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 216usize, + concat!("Size of: ", stringify!(tagNET_DVR_VEHICLE_RECOG_TASK_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VEHICLE_RECOG_TASK_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_TASK_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_TASK_INFO), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDataIndex) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_TASK_INFO), + "::", + stringify!(sDataIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTaskNo) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_TASK_INFO), + "::", + stringify!(wTaskNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTaskProgress) as usize - ptr as usize }, + 74usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_TASK_INFO), + "::", + stringify!(wTaskProgress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTaskState) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_TASK_INFO), + "::", + stringify!(byTaskState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 77usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_TASK_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecogOperate) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_TASK_INFO), + "::", + stringify!(dwRecogOperate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPostID) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_TASK_INFO), + "::", + stringify!(dwPostID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPostTime) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_TASK_INFO), + "::", + stringify!(struPostTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwJsonLen) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_TASK_INFO), + "::", + stringify!(dwJsonLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pJsonBuffer) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_TASK_INFO), + "::", + stringify!(pJsonBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_TASK_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VEHICLE_RECOG_TASK_INFO = tagNET_DVR_VEHICLE_RECOG_TASK_INFO; +pub type LPNET_DVR_VEHICLE_RECOG_TASK_INFO = *mut tagNET_DVR_VEHICLE_RECOG_TASK_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VEHICLE_RECOG_RESULT { + pub dwSize: DWORD, + pub sDataIndex: [::std::os::raw::c_char; 64usize], + pub wTaskNo: WORD, + pub byRes: [BYTE; 2usize], + pub struPlateRect: NET_VCA_RECT, + pub sLicense: [::std::os::raw::c_char; 16usize], + pub byVehicleType: BYTE, + pub byColorDepth: BYTE, + pub byColor: BYTE, + pub byVehicleLogoRecog: BYTE, + pub byVehicleSubLogoRecog: BYTE, + pub byPilotSafebelt: BYTE, + pub byCopilotSafebelt: BYTE, + pub byPilotSunVisor: BYTE, + pub byCopilotSunVisor: BYTE, + pub byVehicleModel: BYTE, + pub wVehicleLogoRecog: WORD, + pub byRes1: [BYTE; 251usize], + pub byDataType: BYTE, + pub dwPicType: DWORD, + pub pVehicleBuffer: *mut BYTE, + pub dwVehicleBufferLen: DWORD, + pub pPlateBuffer: *mut BYTE, + pub dwPlateBufferLen: DWORD, + pub pPilotFaceBuffer: *mut BYTE, + pub dwPilotFaceBufferLen: DWORD, + pub pCopilotFaceBuffer: *mut BYTE, + pub dwCopilotFaceBufferLen: DWORD, + pub pPilotSafebeltBuffer: *mut BYTE, + pub dwPilotSafebeltBufferLen: DWORD, + pub pCopilotSafebeltBuffer: *mut BYTE, + pub dwCopilotSafebeltBufferLen: DWORD, + pub struVehicleRect: NET_VCA_RECT, + pub struPilotRect: NET_VCA_RECT, + pub struCopilotRect: NET_VCA_RECT, + pub pJsonBuffer: *mut BYTE, + pub dwJsonBufferLen: DWORD, + pub dwPostID: DWORD, + pub struPostTime: NET_DVR_TIME_V30, + pub Res2: [BYTE; 56usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VEHICLE_RECOG_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 608usize, + concat!("Size of: ", stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDataIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(sDataIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTaskNo) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(wTaskNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 70usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateRect) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(struPlateRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLicense) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(sLicense) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleType) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(byVehicleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byColorDepth) as usize - ptr as usize }, + 105usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(byColorDepth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byColor) as usize - ptr as usize }, + 106usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(byColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleLogoRecog) as usize - ptr as usize }, + 107usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(byVehicleLogoRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleSubLogoRecog) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(byVehicleSubLogoRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPilotSafebelt) as usize - ptr as usize }, + 109usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(byPilotSafebelt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCopilotSafebelt) as usize - ptr as usize }, + 110usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(byCopilotSafebelt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPilotSunVisor) as usize - ptr as usize }, + 111usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(byPilotSunVisor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCopilotSunVisor) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(byCopilotSunVisor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleModel) as usize - ptr as usize }, + 113usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(byVehicleModel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wVehicleLogoRecog) as usize - ptr as usize }, + 114usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(wVehicleLogoRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataType) as usize - ptr as usize }, + 367usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(byDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicType) as usize - ptr as usize }, + 368usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(dwPicType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pVehicleBuffer) as usize - ptr as usize }, + 376usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(pVehicleBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVehicleBufferLen) as usize - ptr as usize }, + 384usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(dwVehicleBufferLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPlateBuffer) as usize - ptr as usize }, + 392usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(pPlateBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlateBufferLen) as usize - ptr as usize }, + 400usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(dwPlateBufferLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPilotFaceBuffer) as usize - ptr as usize }, + 408usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(pPilotFaceBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPilotFaceBufferLen) as usize - ptr as usize }, + 416usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(dwPilotFaceBufferLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pCopilotFaceBuffer) as usize - ptr as usize }, + 424usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(pCopilotFaceBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCopilotFaceBufferLen) as usize - ptr as usize }, + 432usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(dwCopilotFaceBufferLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPilotSafebeltBuffer) as usize - ptr as usize }, + 440usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(pPilotSafebeltBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPilotSafebeltBufferLen) as usize - ptr as usize }, + 448usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(dwPilotSafebeltBufferLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pCopilotSafebeltBuffer) as usize - ptr as usize }, + 456usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(pCopilotSafebeltBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCopilotSafebeltBufferLen) as usize - ptr as usize }, + 464usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(dwCopilotSafebeltBufferLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVehicleRect) as usize - ptr as usize }, + 468usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(struVehicleRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPilotRect) as usize - ptr as usize }, + 484usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(struPilotRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCopilotRect) as usize - ptr as usize }, + 500usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(struCopilotRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pJsonBuffer) as usize - ptr as usize }, + 520usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(pJsonBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwJsonBufferLen) as usize - ptr as usize }, + 528usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(dwJsonBufferLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPostID) as usize - ptr as usize }, + 532usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(dwPostID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPostTime) as usize - ptr as usize }, + 536usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(struPostTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Res2) as usize - ptr as usize }, + 548usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_RECOG_RESULT), + "::", + stringify!(Res2) + ) + ); +} +pub type NET_DVR_VEHICLE_RECOG_RESULT = tagNET_DVR_VEHICLE_RECOG_RESULT; +pub type LPNET_DVR_VEHICLE_RECOG_RESULT = *mut tagNET_DVR_VEHICLE_RECOG_RESULT; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_CENTER_SERVER_CFG_ { + pub dwSize: DWORD, + pub byAddressType: BYTE, + pub byRes1: BYTE, + pub wServerPort: WORD, + pub unionServer: tagNET_DVR_CENTER_SERVER_CFG___bindgen_ty_1, + pub wInterval: WORD, + pub byRes3: [BYTE; 514usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_CENTER_SERVER_CFG___bindgen_ty_1 { + pub struDomain: tagNET_DVR_CENTER_SERVER_CFG___bindgen_ty_1__bindgen_ty_1, + pub struAddrIP: tagNET_DVR_CENTER_SERVER_CFG___bindgen_ty_1__bindgen_ty_2, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CENTER_SERVER_CFG___bindgen_ty_1__bindgen_ty_1 { + pub szDomain: [BYTE; 64usize], + pub byRes2: [BYTE; 80usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CENTER_SERVER_CFG___bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_CENTER_SERVER_CFG___bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_CENTER_SERVER_CFG___bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_CENTER_SERVER_CFG___bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDomain) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CENTER_SERVER_CFG___bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(szDomain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CENTER_SERVER_CFG___bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes2) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CENTER_SERVER_CFG___bindgen_ty_1__bindgen_ty_2 { + pub struIp: NET_DVR_IPADDR, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CENTER_SERVER_CFG___bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_CENTER_SERVER_CFG___bindgen_ty_1__bindgen_ty_2, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_CENTER_SERVER_CFG___bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_CENTER_SERVER_CFG___bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIp) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CENTER_SERVER_CFG___bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(struIp) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CENTER_SERVER_CFG___bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_CENTER_SERVER_CFG___bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_CENTER_SERVER_CFG___bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDomain) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CENTER_SERVER_CFG___bindgen_ty_1), + "::", + stringify!(struDomain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAddrIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CENTER_SERVER_CFG___bindgen_ty_1), + "::", + stringify!(struAddrIP) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CENTER_SERVER_CFG_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 668usize, + concat!("Size of: ", stringify!(tagNET_DVR_CENTER_SERVER_CFG_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CENTER_SERVER_CFG_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CENTER_SERVER_CFG_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddressType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CENTER_SERVER_CFG_), + "::", + stringify!(byAddressType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CENTER_SERVER_CFG_), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wServerPort) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CENTER_SERVER_CFG_), + "::", + stringify!(wServerPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).unionServer) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CENTER_SERVER_CFG_), + "::", + stringify!(unionServer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInterval) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CENTER_SERVER_CFG_), + "::", + stringify!(wInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 154usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CENTER_SERVER_CFG_), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_CENTER_SERVER_CFG = tagNET_DVR_CENTER_SERVER_CFG_; +pub type LPNET_DVR_CENTER_SERVER_CFG = *mut tagNET_DVR_CENTER_SERVER_CFG_; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG_ { + pub byDDNSType: BYTE, + pub byRes1: BYTE, + pub wDDNSPort: WORD, + pub byServerAddr: [BYTE; 64usize], + pub byDevName: [BYTE; 64usize], + pub byDevSerialNum: [BYTE; 48usize], + pub byAddressType: BYTE, + pub byRes2: BYTE, + pub wDevPort: WORD, + pub unionDevAddr: tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG___bindgen_ty_1, + pub sUserName: [BYTE; 32usize], + pub sPassword: [BYTE; 16usize], + pub dwChannel: DWORD, + pub byRes3: [BYTE; 32usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG___bindgen_ty_1 { + pub struDomain: tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG___bindgen_ty_1__bindgen_ty_1, + pub struAddrIP: tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG___bindgen_ty_1__bindgen_ty_2, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG___bindgen_ty_1__bindgen_ty_1 { + pub szDomain: [BYTE; 64usize], + pub byRes2: [BYTE; 80usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG___bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG___bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG___bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::( + ), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG___bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDomain) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG___bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(szDomain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG___bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes2) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG___bindgen_ty_1__bindgen_ty_2 { + pub struIp: NET_DVR_IPADDR, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG___bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG___bindgen_ty_1__bindgen_ty_2, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG___bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::( + ), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG___bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIp) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG___bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(struIp) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG___bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG___bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG___bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDomain) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG___bindgen_ty_1), + "::", + stringify!(struDomain) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAddrIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG___bindgen_ty_1), + "::", + stringify!(struAddrIP) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 412usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG_) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDDNSType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG_), + "::", + stringify!(byDDNSType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG_), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDDNSPort) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG_), + "::", + stringify!(wDDNSPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byServerAddr) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG_), + "::", + stringify!(byServerAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevName) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG_), + "::", + stringify!(byDevName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevSerialNum) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG_), + "::", + stringify!(byDevSerialNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddressType) as usize - ptr as usize }, + 180usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG_), + "::", + stringify!(byAddressType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 181usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG_), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevPort) as usize - ptr as usize }, + 182usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG_), + "::", + stringify!(wDevPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).unionDevAddr) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG_), + "::", + stringify!(unionDevAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG_), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 360usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG_), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 376usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG_), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 380usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG_), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_SINGLE_CHANNEL_LINKAGE_CFG = tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG_; +pub type LPNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG = *mut tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG_; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_REGION_CHANNEL_LINKAGE_CFG_ { + pub dwSize: DWORD, + pub struLinkChannels: [NET_DVR_SINGLE_CHANNEL_LINKAGE_CFG; 4usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REGION_CHANNEL_LINKAGE_CFG_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1716usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_REGION_CHANNEL_LINKAGE_CFG_) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_REGION_CHANNEL_LINKAGE_CFG_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_CHANNEL_LINKAGE_CFG_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLinkChannels) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_CHANNEL_LINKAGE_CFG_), + "::", + stringify!(struLinkChannels) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1652usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REGION_CHANNEL_LINKAGE_CFG_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ZONE_CHANNEL_LINKAGE_CFG = tagNET_DVR_REGION_CHANNEL_LINKAGE_CFG_; +pub type LPNET_DVR_ZONE_CHANNEL_LINKAGE_CFG = *mut tagNET_DVR_REGION_CHANNEL_LINKAGE_CFG_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SINGLE_ASSOCIATED_CHAN_CFG { + pub byDevSerialNo: [BYTE; 48usize], + pub dwChannel: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SINGLE_ASSOCIATED_CHAN_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 116usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SINGLE_ASSOCIATED_CHAN_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SINGLE_ASSOCIATED_CHAN_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevSerialNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ASSOCIATED_CHAN_CFG), + "::", + stringify!(byDevSerialNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ASSOCIATED_CHAN_CFG), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_ASSOCIATED_CHAN_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SINGLE_ASSOCIATED_CHAN_CFG = tagNET_DVR_SINGLE_ASSOCIATED_CHAN_CFG; +pub type LPNET_DVR_SINGLE_ASSOCIATED_CHAN_CFG = *mut tagNET_DVR_SINGLE_ASSOCIATED_CHAN_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG { + pub wZoneNo: WORD, + pub byRes1: [BYTE; 2usize], + pub struSingleChanCfg: [NET_DVR_SINGLE_ASSOCIATED_CHAN_CFG; 4usize], + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 532usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wZoneNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG), + "::", + stringify!(wZoneNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSingleChanCfg) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG), + "::", + stringify!(struSingleChanCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 468usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG = tagNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG; +pub type LPNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG = *mut tagNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG_LIST_ { + pub dwSize: DWORD, + pub struAssociatedChanCfg: [NET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG; 64usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG_LIST_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 34116usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG_LIST_) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG_LIST_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG_LIST_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAssociatedChanCfg) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG_LIST_), + "::", + stringify!(struAssociatedChanCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 34052usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG_LIST_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG_LIST = tagNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG_LIST_; +pub type LPNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG_LIST = + *mut tagNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG_LIST_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LCD_ALARM { + pub dwSize: DWORD, + pub dwScreenID: DWORD, + pub byOnOffLine: BYTE, + pub byTempState: BYTE, + pub byFanState: BYTE, + pub byFanException: BYTE, + pub byTemperature: BYTE, + pub byRes: [BYTE; 27usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LCD_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_LCD_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LCD_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LCD_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwScreenID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LCD_ALARM), + "::", + stringify!(dwScreenID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOnOffLine) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LCD_ALARM), + "::", + stringify!(byOnOffLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTempState) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LCD_ALARM), + "::", + stringify!(byTempState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFanState) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LCD_ALARM), + "::", + stringify!(byFanState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFanException) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LCD_ALARM), + "::", + stringify!(byFanException) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTemperature) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LCD_ALARM), + "::", + stringify!(byTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LCD_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LCD_ALARM = tagNET_DVR_LCD_ALARM; +pub type LPNET_DVR_LCD_ALARM = *mut tagNET_DVR_LCD_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SENSOR_INFO_UPLOAD { + pub dwSize: DWORD, + pub struTime: NET_DVR_TIME_V30, + pub szSensorName: [::std::os::raw::c_char; 64usize], + pub szSensorChan: [::std::os::raw::c_char; 32usize], + pub byReboot: BYTE, + pub byPowerSupply: BYTE, + pub byStatusType: BYTE, + pub bySensorType: BYTE, + pub fVoltageValue: f32, + pub fCurrentValue: f32, + pub fActualValue: f32, + pub szDescription: [::std::os::raw::c_char; 32usize], + pub byRes1: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SENSOR_INFO_UPLOAD() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 288usize, + concat!("Size of: ", stringify!(tagNET_DVR_SENSOR_INFO_UPLOAD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SENSOR_INFO_UPLOAD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO_UPLOAD), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO_UPLOAD), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szSensorName) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO_UPLOAD), + "::", + stringify!(szSensorName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szSensorChan) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO_UPLOAD), + "::", + stringify!(szSensorChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReboot) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO_UPLOAD), + "::", + stringify!(byReboot) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPowerSupply) as usize - ptr as usize }, + 113usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO_UPLOAD), + "::", + stringify!(byPowerSupply) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatusType) as usize - ptr as usize }, + 114usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO_UPLOAD), + "::", + stringify!(byStatusType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensorType) as usize - ptr as usize }, + 115usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO_UPLOAD), + "::", + stringify!(bySensorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fVoltageValue) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO_UPLOAD), + "::", + stringify!(fVoltageValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fCurrentValue) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO_UPLOAD), + "::", + stringify!(fCurrentValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fActualValue) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO_UPLOAD), + "::", + stringify!(fActualValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDescription) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO_UPLOAD), + "::", + stringify!(szDescription) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_INFO_UPLOAD), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_SENSOR_INFO_UPLOAD = tagNET_DVR_SENSOR_INFO_UPLOAD; +pub type LPNET_DVR_SENSOR_INFO_UPLOAD = *mut tagNET_DVR_SENSOR_INFO_UPLOAD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CAPTURE_UPLOAD { + pub dwSize: DWORD, + pub struTime: NET_DVR_TIME_V30, + pub dwChannel: DWORD, + pub szDevName: [::std::os::raw::c_char; 64usize], + pub dwPicLen: DWORD, + pub pBuffer: *mut BYTE, + pub byRes: [BYTE; 124usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CAPTURE_UPLOAD() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 224usize, + concat!("Size of: ", stringify!(tagNET_DVR_CAPTURE_UPLOAD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CAPTURE_UPLOAD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_UPLOAD), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_UPLOAD), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_UPLOAD), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDevName) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_UPLOAD), + "::", + stringify!(szDevName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicLen) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_UPLOAD), + "::", + stringify!(dwPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_UPLOAD), + "::", + stringify!(pBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_UPLOAD), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CAPTURE_UPLOAD = tagNET_DVR_CAPTURE_UPLOAD; +pub type LPNET_DVR_CAPTURE_UPLOAD = *mut tagNET_DVR_CAPTURE_UPLOAD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PANORAMIC_LINKAGE { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byType: BYTE, + pub byRes1: [BYTE; 3usize], + pub byMACAddr: [BYTE; 6usize], + pub byRes2: [BYTE; 2usize], + pub struDevIP: NET_DVR_IPADDR, + pub dwPicLen: DWORD, + pub pPicBuff: *mut ::std::os::raw::c_char, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PANORAMIC_LINKAGE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 304usize, + concat!("Size of: ", stringify!(tagNET_DVR_PANORAMIC_LINKAGE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PANORAMIC_LINKAGE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PANORAMIC_LINKAGE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PANORAMIC_LINKAGE), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PANORAMIC_LINKAGE), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PANORAMIC_LINKAGE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMACAddr) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PANORAMIC_LINKAGE), + "::", + stringify!(byMACAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PANORAMIC_LINKAGE), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevIP) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PANORAMIC_LINKAGE), + "::", + stringify!(struDevIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicLen) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PANORAMIC_LINKAGE), + "::", + stringify!(dwPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPicBuff) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PANORAMIC_LINKAGE), + "::", + stringify!(pPicBuff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PANORAMIC_LINKAGE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PANORAMIC_LINKAGE = tagNET_DVR_PANORAMIC_LINKAGE; +pub type LPNET_DVR_PANORAMIC_LINKAGE = *mut tagNET_DVR_PANORAMIC_LINKAGE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AREA_MASK_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byMaskThick: BYTE, + pub byAutoMask: BYTE, + pub byRes1: BYTE, + pub struRegion: [NET_VCA_RECT; 8usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AREA_MASK_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 200usize, + concat!("Size of: ", stringify!(tagNET_DVR_AREA_MASK_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AREA_MASK_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AREA_MASK_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AREA_MASK_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMaskThick) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AREA_MASK_CFG), + "::", + stringify!(byMaskThick) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAutoMask) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AREA_MASK_CFG), + "::", + stringify!(byAutoMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AREA_MASK_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AREA_MASK_CFG), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AREA_MASK_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AREA_MASK_CFG = tagNET_DVR_AREA_MASK_CFG; +pub type LPNET_DVR_AREA_MASK_CFG = *mut tagNET_DVR_AREA_MASK_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUDIO_DIACRITICAL_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byBassValue: ::std::os::raw::c_char, + pub byRes: [BYTE; 62usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUDIO_DIACRITICAL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUDIO_DIACRITICAL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_AUDIO_DIACRITICAL_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_DIACRITICAL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_DIACRITICAL_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBassValue) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_DIACRITICAL_CFG), + "::", + stringify!(byBassValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_DIACRITICAL_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AUDIO_DIACRITICAL_CFG = tagNET_DVR_AUDIO_DIACRITICAL_CFG; +pub type LPNET_DVR_AUDIO_DIACRITICAL_CFG = *mut tagNET_DVR_AUDIO_DIACRITICAL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RESOLUTION_SWITCH { + pub dwSize: DWORD, + pub byResolutionType: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RESOLUTION_SWITCH() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_RESOLUTION_SWITCH)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RESOLUTION_SWITCH)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RESOLUTION_SWITCH), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byResolutionType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RESOLUTION_SWITCH), + "::", + stringify!(byResolutionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RESOLUTION_SWITCH), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RESOLUTION_SWITCH = tagNET_DVR_RESOLUTION_SWITCH; +pub type LPNET_DVR_RESOLUTION_SWITCH = *mut tagNET_DVR_RESOLUTION_SWITCH; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WIFI_DHCP_ADDR_CFG { + pub dwSize: DWORD, + pub struStartAddr: NET_DVR_IPADDR, + pub struEndAddr: NET_DVR_IPADDR, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIFI_DHCP_ADDR_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 548usize, + concat!("Size of: ", stringify!(tagNET_DVR_WIFI_DHCP_ADDR_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WIFI_DHCP_ADDR_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_DHCP_ADDR_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartAddr) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_DHCP_ADDR_CFG), + "::", + stringify!(struStartAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndAddr) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_DHCP_ADDR_CFG), + "::", + stringify!(struEndAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 292usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_DHCP_ADDR_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WIFI_DHCP_ADDR_CFG = tagNET_DVR_WIFI_DHCP_ADDR_CFG; +pub type LPNET_DVR_WIFI_DHCP_ADDR_CFG = *mut tagNET_DVR_WIFI_DHCP_ADDR_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WIFI_CLIENT_INFO { + pub dwSize: DWORD, + pub struAddress: NET_DVR_IPADDR, + pub byMACAddr: [BYTE; 6usize], + pub wConnSpeed: WORD, + pub byRSSIValue: BYTE, + pub byRes1: BYTE, + pub wBandwidth: WORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIFI_CLIENT_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 192usize, + concat!("Size of: ", stringify!(tagNET_DVR_WIFI_CLIENT_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WIFI_CLIENT_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CLIENT_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAddress) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CLIENT_INFO), + "::", + stringify!(struAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMACAddr) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CLIENT_INFO), + "::", + stringify!(byMACAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wConnSpeed) as usize - ptr as usize }, + 154usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CLIENT_INFO), + "::", + stringify!(wConnSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRSSIValue) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CLIENT_INFO), + "::", + stringify!(byRSSIValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 157usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CLIENT_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBandwidth) as usize - ptr as usize }, + 158usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CLIENT_INFO), + "::", + stringify!(wBandwidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIFI_CLIENT_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WIFI_CLIENT_INFO = tagNET_DVR_WIFI_CLIENT_INFO; +pub type LPNET_DVR_WIFI_CLIENT_INFO = *mut tagNET_DVR_WIFI_CLIENT_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MULTISTREAM_RELATION_CHAN_CFG { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MULTISTREAM_RELATION_CHAN_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_MULTISTREAM_RELATION_CHAN_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MULTISTREAM_RELATION_CHAN_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTISTREAM_RELATION_CHAN_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTISTREAM_RELATION_CHAN_CFG), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTISTREAM_RELATION_CHAN_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MULTISTREAM_RELATION_CHAN_CFG = tagNET_DVR_MULTISTREAM_RELATION_CHAN_CFG; +pub type LPNET_DVR_MULTISTREAM_RELATION_CHAN_CFG = *mut tagNET_DVR_MULTISTREAM_RELATION_CHAN_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_RING_PORT_PROPERTY { + pub byPort: BYTE, + pub byMasterSlaveProperty: BYTE, + pub byPortEthernetType: BYTE, + pub byRes: [BYTE; 9usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_RING_PORT_PROPERTY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(NET_DVR_RING_PORT_PROPERTY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_RING_PORT_PROPERTY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPort) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RING_PORT_PROPERTY), + "::", + stringify!(byPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMasterSlaveProperty) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RING_PORT_PROPERTY), + "::", + stringify!(byMasterSlaveProperty) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPortEthernetType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RING_PORT_PROPERTY), + "::", + stringify!(byPortEthernetType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_RING_PORT_PROPERTY), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_RING_PORT_PROPERTY = *mut NET_DVR_RING_PORT_PROPERTY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_NS_RING_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byProtoType: BYTE, + pub byBandWidth: BYTE, + pub byRes1: BYTE, + pub struRingPort: [NET_DVR_RING_PORT_PROPERTY; 2usize], + pub byRes2: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_NS_RING_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!("Size of: ", stringify!(NET_DVR_NS_RING_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_NS_RING_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NS_RING_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NS_RING_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProtoType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NS_RING_CFG), + "::", + stringify!(byProtoType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBandWidth) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NS_RING_CFG), + "::", + stringify!(byBandWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NS_RING_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRingPort) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NS_RING_CFG), + "::", + stringify!(struRingPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NS_RING_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type LPNET_DVR_NS_RING_CFG = *mut NET_DVR_NS_RING_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_NS_RING_STATUS { + pub dwSize: DWORD, + pub byStatus: BYTE, + pub byMasterSlaveProperty: BYTE, + pub byRes: [BYTE; 62usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_NS_RING_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(NET_DVR_NS_RING_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_NS_RING_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NS_RING_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NS_RING_STATUS), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMasterSlaveProperty) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NS_RING_STATUS), + "::", + stringify!(byMasterSlaveProperty) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_NS_RING_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_NS_RING_STATUS = *mut NET_DVR_NS_RING_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FIREDETECTION_ALARM { + pub dwSize: DWORD, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub wPanPos: WORD, + pub wTiltPos: WORD, + pub wZoomPos: WORD, + pub byPicTransType: BYTE, + pub byRes1: BYTE, + pub dwPicDataLen: DWORD, + pub pBuffer: *mut BYTE, + pub struRect: NET_VCA_RECT, + pub struPoint: NET_VCA_POINT, + pub wFireMaxTemperature: WORD, + pub wTargetDistance: WORD, + pub byStrategyType: BYTE, + pub byAlarmSubType: BYTE, + pub byPTZPosExEnable: BYTE, + pub byRes2: BYTE, + pub struPtzPosEx: NET_PTZ_INFO, + pub dwVisiblePicLen: DWORD, + pub pVisiblePicBuf: *mut BYTE, + pub pSmokeBuf: *mut BYTE, + pub wDevInfoIvmsChannelEx: WORD, + pub byRes3: BYTE, + pub byFireScanWaitMode: BYTE, + pub dwVisibleChannel: DWORD, + pub byTimeDiffFlag: BYTE, + pub cTimeDifferenceH: ::std::os::raw::c_char, + pub cTimeDifferenceM: ::std::os::raw::c_char, + pub byRes: [BYTE; 49usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FIREDETECTION_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 320usize, + concat!("Size of: ", stringify!(tagNET_DVR_FIREDETECTION_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FIREDETECTION_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPanPos) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(wPanPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTiltPos) as usize - ptr as usize }, + 162usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(wTiltPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wZoomPos) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(wZoomPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicTransType) as usize - ptr as usize }, + 166usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(byPicTransType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 167usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicDataLen) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(dwPicDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(pBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRect) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(struRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPoint) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(struPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFireMaxTemperature) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(wFireMaxTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTargetDistance) as usize - ptr as usize }, + 210usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(wTargetDistance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStrategyType) as usize - ptr as usize }, + 212usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(byStrategyType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmSubType) as usize - ptr as usize }, + 213usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(byAlarmSubType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPTZPosExEnable) as usize - ptr as usize }, + 214usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(byPTZPosExEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 215usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPtzPosEx) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(struPtzPosEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVisiblePicLen) as usize - ptr as usize }, + 236usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(dwVisiblePicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pVisiblePicBuf) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(pVisiblePicBuf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pSmokeBuf) as usize - ptr as usize }, + 248usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(pSmokeBuf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevInfoIvmsChannelEx) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(wDevInfoIvmsChannelEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 258usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFireScanWaitMode) as usize - ptr as usize }, + 259usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(byFireScanWaitMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVisibleChannel) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(dwVisibleChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeDiffFlag) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(byTimeDiffFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceH) as usize - ptr as usize }, + 265usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(cTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceM) as usize - ptr as usize }, + 266usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(cTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 267usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FIREDETECTION_ALARM = tagNET_DVR_FIREDETECTION_ALARM; +pub type LPNET_DVR_FIREDETECTION_ALARM = *mut tagNET_DVR_FIREDETECTION_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SMOKEDETECTION_CFG { + pub byEnable: BYTE, + pub bySensitivity: BYTE, + pub byPatrolSensitivity: BYTE, + pub byDoubleCheckSensitivity: BYTE, + pub byRes: [BYTE; 56usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SMOKEDETECTION_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 60usize, + concat!("Size of: ", stringify!(tagNET_DVR_SMOKEDETECTION_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SMOKEDETECTION_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMOKEDETECTION_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMOKEDETECTION_CFG), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPatrolSensitivity) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMOKEDETECTION_CFG), + "::", + stringify!(byPatrolSensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDoubleCheckSensitivity) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMOKEDETECTION_CFG), + "::", + stringify!(byDoubleCheckSensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMOKEDETECTION_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SMOKEDETECTION_CFG = tagNET_DVR_SMOKEDETECTION_CFG; +pub type LPNET_DVR_SMOKEDETECTION_CFG = *mut tagNET_DVR_SMOKEDETECTION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMSTRATEGY_PARAM { + pub byStrategyType: BYTE, + pub byRes: [BYTE; 15usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMSTRATEGY_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMSTRATEGY_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMSTRATEGY_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStrategyType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSTRATEGY_PARAM), + "::", + stringify!(byStrategyType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMSTRATEGY_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMSTRATEGY_PARAM = tagNET_DVR_ALARMSTRATEGY_PARAM; +pub type LPNET_DVR_ALARMSTRATEGY_PARAM = *mut tagNET_DVR_ALARMSTRATEGY_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FIREDETECTION_CFG { + pub dwSize: DWORD, + pub byEnabled: BYTE, + pub bySensitivity: BYTE, + pub byFireComfirmTime: BYTE, + pub byFireRegionOverlay: BYTE, + pub byDetectionMode: BYTE, + pub byFireFocusMode: BYTE, + pub byFireZoomMode: BYTE, + pub byFirezoomLevel: BYTE, + pub bySmokeFireEnabled: BYTE, + pub byFireManualWaitEnabled: BYTE, + pub byCancelRepeatedAlarmEnabled: BYTE, + pub byApplicationSceneMode: BYTE, + pub dwInstallationHeight: DWORD, + pub byFireSourceDetection: BYTE, + pub bySmokeAuxiliaryDetectionEnabled: BYTE, + pub byverificationSensitivity: BYTE, + pub byFireAlgorithmMode: BYTE, + pub byAgriculturalMachineryFilterEnabled: BYTE, + pub byWaterReflectionEnabled: BYTE, + pub byPatrolSensitivity: BYTE, + pub byRes: [BYTE; 33usize], + pub struAlarmStrategy: NET_DVR_ALARMSTRATEGY_PARAM, + pub struSmokeCfg: NET_DVR_SMOKEDETECTION_CFG, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FIREDETECTION_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_FIREDETECTION_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FIREDETECTION_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_CFG), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_CFG), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFireComfirmTime) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_CFG), + "::", + stringify!(byFireComfirmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFireRegionOverlay) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_CFG), + "::", + stringify!(byFireRegionOverlay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectionMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_CFG), + "::", + stringify!(byDetectionMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFireFocusMode) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_CFG), + "::", + stringify!(byFireFocusMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFireZoomMode) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_CFG), + "::", + stringify!(byFireZoomMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFirezoomLevel) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_CFG), + "::", + stringify!(byFirezoomLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySmokeFireEnabled) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_CFG), + "::", + stringify!(bySmokeFireEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFireManualWaitEnabled) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_CFG), + "::", + stringify!(byFireManualWaitEnabled) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byCancelRepeatedAlarmEnabled) as usize - ptr as usize + }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_CFG), + "::", + stringify!(byCancelRepeatedAlarmEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byApplicationSceneMode) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_CFG), + "::", + stringify!(byApplicationSceneMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInstallationHeight) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_CFG), + "::", + stringify!(dwInstallationHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFireSourceDetection) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_CFG), + "::", + stringify!(byFireSourceDetection) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).bySmokeAuxiliaryDetectionEnabled) as usize - ptr as usize + }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_CFG), + "::", + stringify!(bySmokeAuxiliaryDetectionEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byverificationSensitivity) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_CFG), + "::", + stringify!(byverificationSensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFireAlgorithmMode) as usize - ptr as usize }, + 23usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_CFG), + "::", + stringify!(byFireAlgorithmMode) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byAgriculturalMachineryFilterEnabled) as usize + - ptr as usize + }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_CFG), + "::", + stringify!(byAgriculturalMachineryFilterEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWaterReflectionEnabled) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_CFG), + "::", + stringify!(byWaterReflectionEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPatrolSensitivity) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_CFG), + "::", + stringify!(byPatrolSensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 27usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmStrategy) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_CFG), + "::", + stringify!(struAlarmStrategy) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSmokeCfg) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIREDETECTION_CFG), + "::", + stringify!(struSmokeCfg) + ) + ); +} +pub type NET_DVR_FIREDETECTION_CFG = tagNET_DVR_FIREDETECTION_CFG; +pub type LPNET_DVR_FIREDETECTION_CFG = *mut tagNET_DVR_FIREDETECTION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_THERMALPOWER_PARAM { + pub dwSize: DWORD, + pub byPowerSwitch: BYTE, + pub byRes: [BYTE; 123usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_THERMALPOWER_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_DVR_THERMALPOWER_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_THERMALPOWER_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMALPOWER_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPowerSwitch) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMALPOWER_PARAM), + "::", + stringify!(byPowerSwitch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMALPOWER_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_THERMALPOWER_PARAM = tagNET_DVR_THERMALPOWER_PARAM; +pub type LPNET_DVR_THERMALPOWER_PARAM = *mut tagNET_DVR_THERMALPOWER_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZABSOLUTEEX_CFG { + pub dwSize: DWORD, + pub struPTZCtrl: NET_PTZ_INFO, + pub dwFocalLen: DWORD, + pub fHorizontalSpeed: f32, + pub fVerticalSpeed: f32, + pub byZoomType: BYTE, + pub byRes: [BYTE; 123usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZABSOLUTEEX_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 160usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZABSOLUTEEX_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZABSOLUTEEX_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZABSOLUTEEX_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPTZCtrl) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZABSOLUTEEX_CFG), + "::", + stringify!(struPTZCtrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFocalLen) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZABSOLUTEEX_CFG), + "::", + stringify!(dwFocalLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fHorizontalSpeed) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZABSOLUTEEX_CFG), + "::", + stringify!(fHorizontalSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fVerticalSpeed) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZABSOLUTEEX_CFG), + "::", + stringify!(fVerticalSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZoomType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZABSOLUTEEX_CFG), + "::", + stringify!(byZoomType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZABSOLUTEEX_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PTZABSOLUTEEX_CFG = tagNET_DVR_PTZABSOLUTEEX_CFG; +pub type LPNET_DVR_PTZABSOLUTEEX_CFG = *mut tagNET_DVR_PTZABSOLUTEEX_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AREA_MONITOR_COND { + pub dwSize: DWORD, + pub dwAreaID: DWORD, + pub dwMonitorID: DWORD, + pub byIsNeedGroup: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AREA_MONITOR_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 140usize, + concat!("Size of: ", stringify!(tagNET_DVR_AREA_MONITOR_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AREA_MONITOR_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AREA_MONITOR_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAreaID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AREA_MONITOR_COND), + "::", + stringify!(dwAreaID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMonitorID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AREA_MONITOR_COND), + "::", + stringify!(dwMonitorID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsNeedGroup) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AREA_MONITOR_COND), + "::", + stringify!(byIsNeedGroup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AREA_MONITOR_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AREA_MONITOR_COND = tagNET_DVR_AREA_MONITOR_COND; +pub type LPNET_DVR_AREA_MONITOR_COND = *mut tagNET_DVR_AREA_MONITOR_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEL_MONITOR_COND { + pub dwSize: DWORD, + pub byDelType: BYTE, + pub dwAreaID: DWORD, + pub dwMonitorID: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEL_MONITOR_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEL_MONITOR_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEL_MONITOR_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_MONITOR_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDelType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_MONITOR_COND), + "::", + stringify!(byDelType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAreaID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_MONITOR_COND), + "::", + stringify!(dwAreaID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMonitorID) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_MONITOR_COND), + "::", + stringify!(dwMonitorID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_MONITOR_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DEL_MONITOR_COND = tagNET_DVR_DEL_MONITOR_COND; +pub type LPNET_DVR_DEL_MONITOR_COND = *mut tagNET_DVR_DEL_MONITOR_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BLOCKLIST_ALARM_COND { + pub dwSize: DWORD, + pub byType: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwFaceID: DWORD, + pub dwMaxSnapNum: DWORD, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BLOCKLIST_ALARM_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 272usize, + concat!("Size of: ", stringify!(tagNET_DVR_BLOCKLIST_ALARM_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BLOCKLIST_ALARM_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_ALARM_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_ALARM_COND), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_ALARM_COND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFaceID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_ALARM_COND), + "::", + stringify!(dwFaceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxSnapNum) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_ALARM_COND), + "::", + stringify!(dwMaxSnapNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_ALARM_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BLOCKLIST_ALARM_COND = tagNET_DVR_BLOCKLIST_ALARM_COND; +pub type LPNET_DVR_BLOCKLIST_ALARM_COND = *mut tagNET_DVR_BLOCKLIST_ALARM_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_STORAGE_RESOURCE_COND { + pub dwSize: DWORD, + pub dwStorageID: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STORAGE_RESOURCE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_STORAGE_RESOURCE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_STORAGE_RESOURCE_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_RESOURCE_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStorageID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_RESOURCE_COND), + "::", + stringify!(dwStorageID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_RESOURCE_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_STORAGE_RESOURCE_COND = tagNET_DVR_STORAGE_RESOURCE_COND; +pub type LPNET_DVR_STORAGE_RESOURCE_COND = *mut tagNET_DVR_STORAGE_RESOURCE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BLOCKLIST_ALARM_RECORD { + pub dwSize: DWORD, + pub dwSnapFacePicID: DWORD, + pub dwRegisterID: DWORD, + pub dwGroupNo: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BLOCKLIST_ALARM_RECORD() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!("Size of: ", stringify!(tagNET_DVR_BLOCKLIST_ALARM_RECORD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_BLOCKLIST_ALARM_RECORD) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_ALARM_RECORD), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSnapFacePicID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_ALARM_RECORD), + "::", + stringify!(dwSnapFacePicID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRegisterID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_ALARM_RECORD), + "::", + stringify!(dwRegisterID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGroupNo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_ALARM_RECORD), + "::", + stringify!(dwGroupNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_ALARM_RECORD), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BLOCKLIST_ALARM_RECORD = tagNET_DVR_BLOCKLIST_ALARM_RECORD; +pub type LPNET_DVR_BLOCKLIST_ALARM_RECORD = *mut tagNET_DVR_BLOCKLIST_ALARM_RECORD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BLOCKLIST_GROUP_INFO { + pub dwSize: DWORD, + pub dwGroupID: DWORD, + pub dwGroupNo: DWORD, + pub byGroupType: BYTE, + pub byRes1: BYTE, + pub wThreshold: WORD, + pub dwListNum: DWORD, + pub szGroupName: [BYTE; 32usize], + pub szRemark: [BYTE; 256usize], + pub byStorageAddr: [BYTE; 64usize], + pub wStoragePort: WORD, + pub byRes: [BYTE; 126usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BLOCKLIST_GROUP_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 500usize, + concat!("Size of: ", stringify!(tagNET_DVR_BLOCKLIST_GROUP_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BLOCKLIST_GROUP_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGroupID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_INFO), + "::", + stringify!(dwGroupID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGroupNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_INFO), + "::", + stringify!(dwGroupNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGroupType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_INFO), + "::", + stringify!(byGroupType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wThreshold) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_INFO), + "::", + stringify!(wThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwListNum) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_INFO), + "::", + stringify!(dwListNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szGroupName) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_INFO), + "::", + stringify!(szGroupName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szRemark) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_INFO), + "::", + stringify!(szRemark) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStorageAddr) as usize - ptr as usize }, + 308usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_INFO), + "::", + stringify!(byStorageAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wStoragePort) as usize - ptr as usize }, + 372usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_INFO), + "::", + stringify!(wStoragePort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 374usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BLOCKLIST_GROUP_INFO = tagNET_DVR_BLOCKLIST_GROUP_INFO; +pub type LPNET_DVR_BLOCKLIST_GROUP_INFO = *mut tagNET_DVR_BLOCKLIST_GROUP_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SINGLE_BLOCKLIST_GROUP_RECORD { + pub dwSize: DWORD, + pub dwGroupRecordID: DWORD, + pub dwGroupNo: DWORD, + pub dwFaceDBID: DWORD, + pub dwFaceRecordID: DWORD, + pub byAlarmLevel: BYTE, + pub byRes1: [BYTE; 3usize], + pub struStorageAddr: NET_DVR_ADDR_DOMAIN_INFO, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SINGLE_BLOCKLIST_GROUP_RECORD() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 348usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SINGLE_BLOCKLIST_GROUP_RECORD) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SINGLE_BLOCKLIST_GROUP_RECORD) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_BLOCKLIST_GROUP_RECORD), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGroupRecordID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_BLOCKLIST_GROUP_RECORD), + "::", + stringify!(dwGroupRecordID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGroupNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_BLOCKLIST_GROUP_RECORD), + "::", + stringify!(dwGroupNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFaceDBID) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_BLOCKLIST_GROUP_RECORD), + "::", + stringify!(dwFaceDBID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFaceRecordID) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_BLOCKLIST_GROUP_RECORD), + "::", + stringify!(dwFaceRecordID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmLevel) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_BLOCKLIST_GROUP_RECORD), + "::", + stringify!(byAlarmLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_BLOCKLIST_GROUP_RECORD), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStorageAddr) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_BLOCKLIST_GROUP_RECORD), + "::", + stringify!(struStorageAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_BLOCKLIST_GROUP_RECORD), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SINGLE_BLOCKLIST_GROUP_RECORD = tagNET_DVR_SINGLE_BLOCKLIST_GROUP_RECORD; +pub type LPNET_DVR_SINGLE_BLOCKLIST_GROUP_RECORD = *mut tagNET_DVR_SINGLE_BLOCKLIST_GROUP_RECORD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BLOCKLIST_GROUP_RECORD_COND { + pub dwSize: DWORD, + pub dwRecordID: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BLOCKLIST_GROUP_RECORD_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_RECORD_COND) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_RECORD_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_RECORD_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_RECORD_COND), + "::", + stringify!(dwRecordID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_RECORD_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BLOCKLIST_GROUP_RECORD_COND = tagNET_DVR_BLOCKLIST_GROUP_RECORD_COND; +pub type LPNET_DVR_BLOCKLIST_GROUP_RECORD_COND = *mut tagNET_DVR_BLOCKLIST_GROUP_RECORD_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BLOCKLIST_GROUP_RECORD_CFG { + pub dwSize: DWORD, + pub dwRecordNum: DWORD, + pub struRecord: [NET_DVR_SINGLE_BLOCKLIST_GROUP_RECORD; 10usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BLOCKLIST_GROUP_RECORD_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 3744usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_RECORD_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_RECORD_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_RECORD_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_RECORD_CFG), + "::", + stringify!(dwRecordNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRecord) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_RECORD_CFG), + "::", + stringify!(struRecord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3488usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_RECORD_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BLOCKLIST_GROUP_RECORD_CFG = tagNET_DVR_BLOCKLIST_GROUP_RECORD_CFG; +pub type LPNET_DVR_BLOCKLIST_GROUP_RECORD_CFG = *mut tagNET_DVR_BLOCKLIST_GROUP_RECORD_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BLOCKLIST_GROUP_CFG { + pub dwSize: DWORD, + pub dwGroupNum: DWORD, + pub struGroup: [NET_DVR_BLOCKLIST_GROUP_INFO; 10usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BLOCKLIST_GROUP_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 5264usize, + concat!("Size of: ", stringify!(tagNET_DVR_BLOCKLIST_GROUP_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BLOCKLIST_GROUP_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGroupNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_CFG), + "::", + stringify!(dwGroupNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGroup) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_CFG), + "::", + stringify!(struGroup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5008usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BLOCKLIST_GROUP_CFG = tagNET_DVR_BLOCKLIST_GROUP_CFG; +pub type LPNET_DVR_BLOCKLIST_GROUP_CFG = *mut tagNET_DVR_BLOCKLIST_GROUP_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BLOCKLIST_GROUP_COND { + pub dwSize: DWORD, + pub dwGroupID: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BLOCKLIST_GROUP_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_BLOCKLIST_GROUP_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BLOCKLIST_GROUP_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGroupID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_COND), + "::", + stringify!(dwGroupID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_GROUP_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BLOCKLIST_GROUP_COND = tagNET_DVR_BLOCKLIST_GROUP_COND; +pub type LPNET_DVR_BLOCKLIST_GROUP_COND = *mut tagNET_DVR_BLOCKLIST_GROUP_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SENSOR_VALUE { + pub fMinValue: f32, + pub fMaxValue: f32, + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SENSOR_VALUE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_SENSOR_VALUE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SENSOR_VALUE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fMinValue) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_VALUE), + "::", + stringify!(fMinValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fMaxValue) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_VALUE), + "::", + stringify!(fMaxValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_VALUE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SENSOR_VALUE = tagNET_DVR_SENSOR_VALUE; +pub type LPNET_DVR_SENSOR_VALUE = *mut tagNET_DVR_SENSOR_VALUE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HISTORICAL_QUERY_PARAM { + pub struStartTime: NET_DVR_TIME_V30, + pub struEndTime: NET_DVR_TIME_V30, + pub struVoltageValue: NET_DVR_SENSOR_VALUE, + pub struCurrentValue: NET_DVR_SENSOR_VALUE, + pub struTemperatureValue: NET_DVR_SENSOR_VALUE, + pub struHumidityValue: NET_DVR_SENSOR_VALUE, + pub bySwitchStatus: BYTE, + pub bySensorStatus: BYTE, + pub byRes: [BYTE; 66usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HISTORICAL_QUERY_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 156usize, + concat!("Size of: ", stringify!(tagNET_DVR_HISTORICAL_QUERY_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_HISTORICAL_QUERY_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HISTORICAL_QUERY_PARAM), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HISTORICAL_QUERY_PARAM), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVoltageValue) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HISTORICAL_QUERY_PARAM), + "::", + stringify!(struVoltageValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCurrentValue) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HISTORICAL_QUERY_PARAM), + "::", + stringify!(struCurrentValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTemperatureValue) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HISTORICAL_QUERY_PARAM), + "::", + stringify!(struTemperatureValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHumidityValue) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HISTORICAL_QUERY_PARAM), + "::", + stringify!(struHumidityValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySwitchStatus) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HISTORICAL_QUERY_PARAM), + "::", + stringify!(bySwitchStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensorStatus) as usize - ptr as usize }, + 89usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HISTORICAL_QUERY_PARAM), + "::", + stringify!(bySensorStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 90usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HISTORICAL_QUERY_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_HISTORICAL_QUERY_PARAM = tagNET_DVR_HISTORICAL_QUERY_PARAM; +pub type LPNET_DVR_HISTORICAL_QUERY_PARAM = *mut tagNET_DVR_HISTORICAL_QUERY_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SENSOR_COND { + pub dwSize: DWORD, + pub byQueryType: BYTE, + pub byDeviceType: BYTE, + pub byDeviceID: BYTE, + pub byRes1: BYTE, + pub struHistoricalQueryParam: NET_DVR_HISTORICAL_QUERY_PARAM, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SENSOR_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 228usize, + concat!("Size of: ", stringify!(tagNET_DVR_SENSOR_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SENSOR_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byQueryType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_COND), + "::", + stringify!(byQueryType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_COND), + "::", + stringify!(byDeviceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_COND), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_COND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHistoricalQueryParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_COND), + "::", + stringify!(struHistoricalQueryParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SENSOR_COND = tagNET_DVR_SENSOR_COND; +pub type LPNET_DVR_SENSOR_COND = *mut tagNET_DVR_SENSOR_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SENSOR_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byDeviceType: BYTE, + pub byDeviceID: BYTE, + pub byRes1: BYTE, + pub struTime: NET_DVR_TIME_V30, + pub byIsFirst: BYTE, + pub byIsSwitchOn: BYTE, + pub bySensorStatus: BYTE, + pub bySensorType: BYTE, + pub fVoltage: f32, + pub fCurrent: f32, + pub fTemperatureValue: f32, + pub fHumidityValue: f32, + pub bySensorName: [BYTE; 32usize], + pub byDescription: [BYTE; 64usize], + pub fActualValue: f32, + pub byUnit: [BYTE; 32usize], + pub byRes: [BYTE; 220usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SENSOR_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 392usize, + concat!("Size of: ", stringify!(tagNET_DVR_SENSOR_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SENSOR_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_CFG), + "::", + stringify!(byDeviceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_CFG), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_CFG), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsFirst) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_CFG), + "::", + stringify!(byIsFirst) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsSwitchOn) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_CFG), + "::", + stringify!(byIsSwitchOn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensorStatus) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_CFG), + "::", + stringify!(bySensorStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensorType) as usize - ptr as usize }, + 23usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_CFG), + "::", + stringify!(bySensorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fVoltage) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_CFG), + "::", + stringify!(fVoltage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fCurrent) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_CFG), + "::", + stringify!(fCurrent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fTemperatureValue) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_CFG), + "::", + stringify!(fTemperatureValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fHumidityValue) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_CFG), + "::", + stringify!(fHumidityValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensorName) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_CFG), + "::", + stringify!(bySensorName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDescription) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_CFG), + "::", + stringify!(byDescription) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fActualValue) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_CFG), + "::", + stringify!(fActualValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUnit) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_CFG), + "::", + stringify!(byUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SENSOR_CFG = tagNET_DVR_SENSOR_CFG; +pub type LPNET_DVR_SENSOR_CFG = *mut tagNET_DVR_SENSOR_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SENSOR_SWITCH_COND { + pub dwSize: DWORD, + pub byDeviceType: BYTE, + pub byDeviceID: BYTE, + pub bySwitch: BYTE, + pub byRes: [BYTE; 125usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SENSOR_SWITCH_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_SENSOR_SWITCH_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SENSOR_SWITCH_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_SWITCH_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_SWITCH_COND), + "::", + stringify!(byDeviceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_SWITCH_COND), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySwitch) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_SWITCH_COND), + "::", + stringify!(bySwitch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_SWITCH_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SENSOR_SWITCH_COND = tagNET_DVR_SENSOR_SWITCH_COND; +pub type LPNET_DVR_SENSOR_SWITCH_COND = *mut tagNET_DVR_SENSOR_SWITCH_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GB28181_SERVICE_CFG { + pub dwSize: DWORD, + pub byServerID: [BYTE; 32usize], + pub wPort: WORD, + pub byRes1: [BYTE; 2usize], + pub byAuthPasswd: [BYTE; 16usize], + pub dwRegisterValid: DWORD, + pub byMaxHeartbeatTimeOut: BYTE, + pub byAutoAddIpc: BYTE, + pub byAuthPasswdEx: [BYTE; 64usize], + pub byRes: [BYTE; 190usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GB28181_SERVICE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 316usize, + concat!("Size of: ", stringify!(tagNET_DVR_GB28181_SERVICE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GB28181_SERVICE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GB28181_SERVICE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byServerID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GB28181_SERVICE_CFG), + "::", + stringify!(byServerID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GB28181_SERVICE_CFG), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GB28181_SERVICE_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAuthPasswd) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GB28181_SERVICE_CFG), + "::", + stringify!(byAuthPasswd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRegisterValid) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GB28181_SERVICE_CFG), + "::", + stringify!(dwRegisterValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMaxHeartbeatTimeOut) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GB28181_SERVICE_CFG), + "::", + stringify!(byMaxHeartbeatTimeOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAutoAddIpc) as usize - ptr as usize }, + 61usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GB28181_SERVICE_CFG), + "::", + stringify!(byAutoAddIpc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAuthPasswdEx) as usize - ptr as usize }, + 62usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GB28181_SERVICE_CFG), + "::", + stringify!(byAuthPasswdEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 126usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GB28181_SERVICE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GB28181_SERVICE_CFG = tagNET_DVR_GB28181_SERVICE_CFG; +pub type LPNET_DVR_GB28181_SERVICE_CFG = *mut tagNET_DVR_GB28181_SERVICE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ACTIVATECFG { + pub dwSize: DWORD, + pub sPassword: [BYTE; 16usize], + pub byLoginMode: BYTE, + pub byHttps: BYTE, + pub byRes: [BYTE; 106usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ACTIVATECFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_DVR_ACTIVATECFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ACTIVATECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACTIVATECFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACTIVATECFG), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLoginMode) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACTIVATECFG), + "::", + stringify!(byLoginMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHttps) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACTIVATECFG), + "::", + stringify!(byHttps) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACTIVATECFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ACTIVATECFG = tagNET_DVR_ACTIVATECFG; +pub type LPNET_DVR_ACTIVATECFG = *mut tagNET_DVR_ACTIVATECFG; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_IPDEVICE_ACTIVATE_CFG { + pub dwSize: DWORD, + pub byMode: BYTE, + pub bySelfDefinePassword: BYTE, + pub sPassword: [BYTE; 16usize], + pub sUserName: [BYTE; 32usize], + pub byRes: [BYTE; 78usize], + pub unActivateDeviceInfo: tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1 { + pub byLen: [BYTE; 512usize], + pub struChannelInfo: tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1__bindgen_ty_1, + pub struAddrInfo: tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1__bindgen_ty_2, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1__bindgen_ty_1 { + pub dwChannelNo: DWORD, + pub byRes: [BYTE; 508usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannelNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(dwChannelNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byRes) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1__bindgen_ty_2 { + pub struIp: NET_DVR_IPADDR, + pub wPort: WORD, + pub sProtocolDesc: [BYTE; 16usize], + pub byMacAddr: [BYTE; 6usize], + pub byRes: [BYTE; 344usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1__bindgen_ty_2, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIp) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(struIp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sProtocolDesc) as usize - ptr as usize }, + 146usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(sProtocolDesc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMacAddr) as usize - ptr as usize }, + 162usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byMacAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byRes) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1), + "::", + stringify!(byLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struChannelInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1), + "::", + stringify!(struChannelInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAddrInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVICE_ACTIVATE_CFG__bindgen_ty_1), + "::", + stringify!(struAddrInfo) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPDEVICE_ACTIVATE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 644usize, + concat!("Size of: ", stringify!(tagNET_DVR_IPDEVICE_ACTIVATE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_IPDEVICE_ACTIVATE_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVICE_ACTIVATE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVICE_ACTIVATE_CFG), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySelfDefinePassword) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVICE_ACTIVATE_CFG), + "::", + stringify!(bySelfDefinePassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVICE_ACTIVATE_CFG), + "::", + stringify!(sPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVICE_ACTIVATE_CFG), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 54usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVICE_ACTIVATE_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).unActivateDeviceInfo) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPDEVICE_ACTIVATE_CFG), + "::", + stringify!(unActivateDeviceInfo) + ) + ); +} +pub type NET_DVR_IPDEVICE_ACTIVATE_CFG = tagNET_DVR_IPDEVICE_ACTIVATE_CFG; +pub type LPNET_DVR_IPDEVICE_ACTIVATE_CFG = *mut tagNET_DVR_IPDEVICE_ACTIVATE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DIGITAL_CHANNEL_SECURITY_STATUS_ { + pub dwSize: DWORD, + pub byDigitalChanPasswordStatus: [BYTE; 256usize], + pub byRes: [BYTE; 1140usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DIGITAL_CHANNEL_SECURITY_STATUS_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1400usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_DIGITAL_CHANNEL_SECURITY_STATUS_) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_DIGITAL_CHANNEL_SECURITY_STATUS_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIGITAL_CHANNEL_SECURITY_STATUS_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDigitalChanPasswordStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIGITAL_CHANNEL_SECURITY_STATUS_), + "::", + stringify!(byDigitalChanPasswordStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIGITAL_CHANNEL_SECURITY_STATUS_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DIGITAL_CHANNEL_SECURITY_STATUS = tagNET_DVR_DIGITAL_CHANNEL_SECURITY_STATUS_; +pub type LPNET_DVR_DIGITAL_CHANNEL_SECURITY_STATUS = + *mut tagNET_DVR_DIGITAL_CHANNEL_SECURITY_STATUS_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CAMERACHAN_SERIALCFG { + pub dwSize: DWORD, + pub dwBaudRate: DWORD, + pub byDataBit: BYTE, + pub byStopBit: BYTE, + pub byParity: BYTE, + pub byFlowcontrol: BYTE, + pub wPTZProtocol: WORD, + pub byRes1: [BYTE; 6usize], + pub dwSerialPort: DWORD, + pub bySerialAddress: BYTE, + pub byRes: [BYTE; 15usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CAMERACHAN_SERIALCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_CAMERACHAN_SERIALCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CAMERACHAN_SERIALCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERACHAN_SERIALCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBaudRate) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERACHAN_SERIALCFG), + "::", + stringify!(dwBaudRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataBit) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERACHAN_SERIALCFG), + "::", + stringify!(byDataBit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStopBit) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERACHAN_SERIALCFG), + "::", + stringify!(byStopBit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParity) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERACHAN_SERIALCFG), + "::", + stringify!(byParity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlowcontrol) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERACHAN_SERIALCFG), + "::", + stringify!(byFlowcontrol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPTZProtocol) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERACHAN_SERIALCFG), + "::", + stringify!(wPTZProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERACHAN_SERIALCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSerialPort) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERACHAN_SERIALCFG), + "::", + stringify!(dwSerialPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySerialAddress) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERACHAN_SERIALCFG), + "::", + stringify!(bySerialAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERACHAN_SERIALCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CAMERACHAN_SERIALCFG = tagNET_DVR_CAMERACHAN_SERIALCFG; +pub type LPNET_DVR_CAMERACHAN_SERIALCFG = *mut tagNET_DVR_CAMERACHAN_SERIALCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SUBSYSTEM_STATUS { + pub bySubSystemType: BYTE, + pub bySubSystemNo: BYTE, + pub byOnlineStatus: BYTE, + pub byRes: [BYTE; 49usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUBSYSTEM_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 52usize, + concat!("Size of: ", stringify!(tagNET_DVR_SUBSYSTEM_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SUBSYSTEM_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_STATUS), + "::", + stringify!(bySubSystemType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemNo) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_STATUS), + "::", + stringify!(bySubSystemNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOnlineStatus) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_STATUS), + "::", + stringify!(byOnlineStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SUBSYSTEM_STATUS = tagNET_DVR_SUBSYSTEM_STATUS; +pub type LPNET_DVR_SUBSYSTEM_STATUS = *mut tagNET_DVR_SUBSYSTEM_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIX_SUBBOARD { + pub byBoardNo: BYTE, + pub byPcieConnectStatus: BYTE, + pub byRes: [BYTE; 2usize], + pub dwHardwareVersion: DWORD, + pub dwPcieBandwidth: DWORD, + pub dwTemperature: DWORD, + pub struSubsystemStatus: [NET_DVR_SUBSYSTEM_STATUS; 12usize], + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_SUBBOARD() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 656usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIX_SUBBOARD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIX_SUBBOARD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBoardNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD), + "::", + stringify!(byBoardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPcieConnectStatus) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD), + "::", + stringify!(byPcieConnectStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHardwareVersion) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD), + "::", + stringify!(dwHardwareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPcieBandwidth) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD), + "::", + stringify!(dwPcieBandwidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTemperature) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD), + "::", + stringify!(dwTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSubsystemStatus) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD), + "::", + stringify!(struSubsystemStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 640usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_MATRIX_SUBBOARD = tagNET_DVR_MATRIX_SUBBOARD; +pub type LPNET_DVR_MATRIX_SUBBOARD = *mut tagNET_DVR_MATRIX_SUBBOARD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIX_STATUS { + pub dwSize: DWORD, + pub byMainFrameType: BYTE, + pub bySoltNum: BYTE, + pub byBoardNum: BYTE, + pub byRes: BYTE, + pub struMatrixSubboard: [NET_DVR_MATRIX_SUBBOARD; 16usize], + pub byRes2: [BYTE; 48usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 10552usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIX_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIX_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainFrameType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS), + "::", + stringify!(byMainFrameType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySoltNum) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS), + "::", + stringify!(bySoltNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBoardNum) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS), + "::", + stringify!(byBoardNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMatrixSubboard) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS), + "::", + stringify!(struMatrixSubboard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 10504usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_MATRIX_STATUS = tagNET_DVR_MATRIX_STATUS; +pub type LPNET_DVR_MATRIX_STATUS = *mut tagNET_DVR_MATRIX_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIX_SUBBOARD_V50 { + pub byBoardNo: BYTE, + pub byPcieConnectStatus: BYTE, + pub byRes: BYTE, + pub byTemperatureAlarm: BYTE, + pub dwHardwareVersion: DWORD, + pub dwPcieBandwidth: DWORD, + pub dwTemperature: DWORD, + pub struSubsystemStatus: [NET_DVR_SUBSYSTEM_STATUS; 12usize], + pub bySubboardModel: [BYTE; 32usize], + pub byRes1: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_SUBBOARD_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 704usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIX_SUBBOARD_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIX_SUBBOARD_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBoardNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD_V50), + "::", + stringify!(byBoardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPcieConnectStatus) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD_V50), + "::", + stringify!(byPcieConnectStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD_V50), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTemperatureAlarm) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD_V50), + "::", + stringify!(byTemperatureAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHardwareVersion) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD_V50), + "::", + stringify!(dwHardwareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPcieBandwidth) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD_V50), + "::", + stringify!(dwPcieBandwidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTemperature) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD_V50), + "::", + stringify!(dwTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSubsystemStatus) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD_V50), + "::", + stringify!(struSubsystemStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubboardModel) as usize - ptr as usize }, + 640usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD_V50), + "::", + stringify!(bySubboardModel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 672usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD_V50), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_MATRIX_SUBBOARD_V50 = tagNET_DVR_MATRIX_SUBBOARD_V50; +pub type LPNET_DVR_MATRIX_SUBBOARD_V50 = *mut tagNET_DVR_MATRIX_SUBBOARD_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIX_STATUS_V50 { + pub dwSize: DWORD, + pub byMainFrameType: BYTE, + pub bySoltNum: BYTE, + pub byBoardNum: BYTE, + pub byLCDPanelStatus: BYTE, + pub struMatrixSubboard: [NET_DVR_MATRIX_SUBBOARD_V50; 16usize], + pub dwFanSequence: DWORD, + pub dwFanConnectStatus: DWORD, + pub dwFanOperationStatus: DWORD, + pub byDeviceModel: [BYTE; 32usize], + pub byPowerNums: BYTE, + pub byMainBoardNums: BYTE, + pub byHotStandbyMode: BYTE, + pub byRes: [BYTE; 29usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_STATUS_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 11348usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIX_STATUS_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIX_STATUS_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainFrameType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V50), + "::", + stringify!(byMainFrameType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySoltNum) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V50), + "::", + stringify!(bySoltNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBoardNum) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V50), + "::", + stringify!(byBoardNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLCDPanelStatus) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V50), + "::", + stringify!(byLCDPanelStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMatrixSubboard) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V50), + "::", + stringify!(struMatrixSubboard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFanSequence) as usize - ptr as usize }, + 11272usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V50), + "::", + stringify!(dwFanSequence) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFanConnectStatus) as usize - ptr as usize }, + 11276usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V50), + "::", + stringify!(dwFanConnectStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFanOperationStatus) as usize - ptr as usize }, + 11280usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V50), + "::", + stringify!(dwFanOperationStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceModel) as usize - ptr as usize }, + 11284usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V50), + "::", + stringify!(byDeviceModel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPowerNums) as usize - ptr as usize }, + 11316usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V50), + "::", + stringify!(byPowerNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainBoardNums) as usize - ptr as usize }, + 11317usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V50), + "::", + stringify!(byMainBoardNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHotStandbyMode) as usize - ptr as usize }, + 11318usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V50), + "::", + stringify!(byHotStandbyMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 11319usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MATRIX_STATUS_V50 = tagNET_DVR_MATRIX_STATUS_V50; +pub type LPNET_DVR_MATRIX_STATUS_V50 = *mut tagNET_DVR_MATRIX_STATUS_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIX_SUBBOARD_V51 { + pub byBoardNo: BYTE, + pub byPcieConnectStatus: BYTE, + pub byRes1: BYTE, + pub byTemperatureAlarm: BYTE, + pub dwHardwareVersion: DWORD, + pub dwPcieBandwidth: DWORD, + pub dwTemperature: DWORD, + pub struSubsystemStatus: [NET_DVR_SUBSYSTEM_STATUS; 12usize], + pub bySubboardModel: [BYTE; 32usize], + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_SUBBOARD_V51() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 800usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIX_SUBBOARD_V51)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIX_SUBBOARD_V51)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBoardNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD_V51), + "::", + stringify!(byBoardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPcieConnectStatus) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD_V51), + "::", + stringify!(byPcieConnectStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD_V51), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTemperatureAlarm) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD_V51), + "::", + stringify!(byTemperatureAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHardwareVersion) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD_V51), + "::", + stringify!(dwHardwareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPcieBandwidth) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD_V51), + "::", + stringify!(dwPcieBandwidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTemperature) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD_V51), + "::", + stringify!(dwTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSubsystemStatus) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD_V51), + "::", + stringify!(struSubsystemStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubboardModel) as usize - ptr as usize }, + 640usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD_V51), + "::", + stringify!(bySubboardModel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 672usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_SUBBOARD_V51), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_MATRIX_SUBBOARD_V51 = tagNET_DVR_MATRIX_SUBBOARD_V51; +pub type LPNET_DVR_MATRIX_SUBBOARD_V51 = *mut tagNET_DVR_MATRIX_SUBBOARD_V51; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MATRIX_STATUS_V51 { + pub dwSize: DWORD, + pub byMainFrameType: BYTE, + pub bySoltNum: BYTE, + pub byBoardNum: BYTE, + pub byLCDPanelStatus: BYTE, + pub struMatrixSubboard: [NET_DVR_MATRIX_SUBBOARD_V51; 32usize], + pub dwFanSequence: DWORD, + pub dwFanConnectStatus: DWORD, + pub dwFanOperationStatus: DWORD, + pub byDeviceModel: [BYTE; 32usize], + pub byFanSpeed: [BYTE; 32usize], + pub byMainMemUsed: BYTE, + pub byMainCpuUsed: BYTE, + pub byNetwordUsed: BYTE, + pub byRes1: BYTE, + pub dwMainSoftwareVer: DWORD, + pub byPowerNums: BYTE, + pub byMainBoardNums: BYTE, + pub byHotStandbyMode: BYTE, + pub byRes2: [BYTE; 125usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MATRIX_STATUS_V51() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 25820usize, + concat!("Size of: ", stringify!(tagNET_DVR_MATRIX_STATUS_V51)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MATRIX_STATUS_V51)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V51), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainFrameType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V51), + "::", + stringify!(byMainFrameType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySoltNum) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V51), + "::", + stringify!(bySoltNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBoardNum) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V51), + "::", + stringify!(byBoardNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLCDPanelStatus) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V51), + "::", + stringify!(byLCDPanelStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMatrixSubboard) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V51), + "::", + stringify!(struMatrixSubboard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFanSequence) as usize - ptr as usize }, + 25608usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V51), + "::", + stringify!(dwFanSequence) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFanConnectStatus) as usize - ptr as usize }, + 25612usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V51), + "::", + stringify!(dwFanConnectStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFanOperationStatus) as usize - ptr as usize }, + 25616usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V51), + "::", + stringify!(dwFanOperationStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceModel) as usize - ptr as usize }, + 25620usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V51), + "::", + stringify!(byDeviceModel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFanSpeed) as usize - ptr as usize }, + 25652usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V51), + "::", + stringify!(byFanSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainMemUsed) as usize - ptr as usize }, + 25684usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V51), + "::", + stringify!(byMainMemUsed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainCpuUsed) as usize - ptr as usize }, + 25685usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V51), + "::", + stringify!(byMainCpuUsed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetwordUsed) as usize - ptr as usize }, + 25686usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V51), + "::", + stringify!(byNetwordUsed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 25687usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V51), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMainSoftwareVer) as usize - ptr as usize }, + 25688usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V51), + "::", + stringify!(dwMainSoftwareVer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPowerNums) as usize - ptr as usize }, + 25692usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V51), + "::", + stringify!(byPowerNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainBoardNums) as usize - ptr as usize }, + 25693usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V51), + "::", + stringify!(byMainBoardNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHotStandbyMode) as usize - ptr as usize }, + 25694usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V51), + "::", + stringify!(byHotStandbyMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 25695usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MATRIX_STATUS_V51), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_MATRIX_STATUS_V51 = tagNET_DVR_MATRIX_STATUS_V51; +pub type LPNET_DVR_MATRIX_STATUS_V51 = *mut tagNET_DVR_MATRIX_STATUS_V51; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_SUBWIND_INFO { + pub dwSize: DWORD, + pub dwSubWndNo: DWORD, + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_SUBWIND_INFO() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_SUBWIND_INFO> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_SUBWIND_INFO>(), + 16usize, + concat!("Size of: ", stringify!(_NET_DVR_SUBWIND_INFO)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_SUBWIND_INFO>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_SUBWIND_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_SUBWIND_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSubWndNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_SUBWIND_INFO), + "::", + stringify!(dwSubWndNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_SUBWIND_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SUBWIND_INFO = _NET_DVR_SUBWIND_INFO; +pub type LPNET_DVR_SUBWIND_INFO = *mut _NET_DVR_SUBWIND_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FUSION_SCALE { + pub dwSize: DWORD, + pub wWidth: WORD, + pub wHeight: WORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FUSION_SCALE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_FUSION_SCALE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FUSION_SCALE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUSION_SCALE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wWidth) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUSION_SCALE), + "::", + stringify!(wWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHeight) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUSION_SCALE), + "::", + stringify!(wHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUSION_SCALE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FUSION_SCALE = tagNET_DVR_FUSION_SCALE; +pub type LPNET_DVR_FUSION_SCALE = *mut tagNET_DVR_FUSION_SCALE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FUSION_CFG { + pub dwSize: DWORD, + pub byFusion: BYTE, + pub byUseHistoryMap: BYTE, + pub byRes: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FUSION_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_FUSION_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FUSION_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUSION_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFusion) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUSION_CFG), + "::", + stringify!(byFusion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUseHistoryMap) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUSION_CFG), + "::", + stringify!(byUseHistoryMap) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUSION_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FUSION_CFG = tagNET_DVR_FUSION_CFG; +pub type LPNET_DVR_FUSION_CFG = *mut tagNET_DVR_FUSION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MULTIFUNCTION_SERIALCFG { + pub dwSize: DWORD, + pub byVariable: BYTE, + pub bySerialWorkMode: BYTE, + pub byFunType: BYTE, + pub byDataBit: BYTE, + pub byStopBit: BYTE, + pub byParity: BYTE, + pub byFlowcontrol: BYTE, + pub byRes1: BYTE, + pub dwBaudRate: DWORD, + pub wProtocol: WORD, + pub byRes: [BYTE; 34usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MULTIFUNCTION_SERIALCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 52usize, + concat!("Size of: ", stringify!(tagNET_DVR_MULTIFUNCTION_SERIALCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MULTIFUNCTION_SERIALCFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTIFUNCTION_SERIALCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVariable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTIFUNCTION_SERIALCFG), + "::", + stringify!(byVariable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySerialWorkMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTIFUNCTION_SERIALCFG), + "::", + stringify!(bySerialWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFunType) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTIFUNCTION_SERIALCFG), + "::", + stringify!(byFunType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataBit) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTIFUNCTION_SERIALCFG), + "::", + stringify!(byDataBit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStopBit) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTIFUNCTION_SERIALCFG), + "::", + stringify!(byStopBit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParity) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTIFUNCTION_SERIALCFG), + "::", + stringify!(byParity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlowcontrol) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTIFUNCTION_SERIALCFG), + "::", + stringify!(byFlowcontrol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTIFUNCTION_SERIALCFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBaudRate) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTIFUNCTION_SERIALCFG), + "::", + stringify!(dwBaudRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wProtocol) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTIFUNCTION_SERIALCFG), + "::", + stringify!(wProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MULTIFUNCTION_SERIALCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MULTIFUNCTION_SERIALCFG = tagNET_DVR_MULTIFUNCTION_SERIALCFG; +pub type LPNET_DVR_MULTIFUNCTION_SERIALCFG = *mut tagNET_DVR_MULTIFUNCTION_SERIALCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZ_3D_SPEED_CONTROL { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byPSpeed: BYTE, + pub byTSpeed: BYTE, + pub byZSpeed: BYTE, + pub byPDirect: BYTE, + pub byTDirect: BYTE, + pub byZDirect: BYTE, + pub byRes: [BYTE; 18usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZ_3D_SPEED_CONTROL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZ_3D_SPEED_CONTROL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZ_3D_SPEED_CONTROL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_3D_SPEED_CONTROL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_3D_SPEED_CONTROL), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPSpeed) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_3D_SPEED_CONTROL), + "::", + stringify!(byPSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTSpeed) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_3D_SPEED_CONTROL), + "::", + stringify!(byTSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZSpeed) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_3D_SPEED_CONTROL), + "::", + stringify!(byZSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPDirect) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_3D_SPEED_CONTROL), + "::", + stringify!(byPDirect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTDirect) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_3D_SPEED_CONTROL), + "::", + stringify!(byTDirect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZDirect) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_3D_SPEED_CONTROL), + "::", + stringify!(byZDirect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZ_3D_SPEED_CONTROL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PTZ_3D_SPEED_CONTROL = tagNET_DVR_PTZ_3D_SPEED_CONTROL; +pub type LPNET_DVR_PTZ_3D_SPEED_CONTROL = *mut tagNET_DVR_PTZ_3D_SPEED_CONTROL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SENSOR_PARAM { + pub bySensorType: BYTE, + pub byRes: [BYTE; 31usize], + pub fHorWidth: f32, + pub fVerWidth: f32, + pub fFold: f32, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SENSOR_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_SENSOR_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SENSOR_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensorType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_PARAM), + "::", + stringify!(bySensorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fHorWidth) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_PARAM), + "::", + stringify!(fHorWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fVerWidth) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_PARAM), + "::", + stringify!(fVerWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fFold) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_PARAM), + "::", + stringify!(fFold) + ) + ); +} +pub type NET_DVR_SENSOR_PARAM = tagNET_DVR_SENSOR_PARAM; +pub type LPNET_DVR_SENSOR_PARAM = *mut tagNET_DVR_SENSOR_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TURN_DIRECTION_PARAM { + pub byLine: BYTE, + pub byStatus: BYTE, + pub byRes: [BYTE; 38usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TURN_DIRECTION_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_TURN_DIRECTION_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TURN_DIRECTION_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLine) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TURN_DIRECTION_PARAM), + "::", + stringify!(byLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TURN_DIRECTION_PARAM), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TURN_DIRECTION_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TURN_DIRECTION_PARAM = tagNET_DVR_TURN_DIRECTION_PARAM; +pub type LPNET_DVR_TURN_DIRECTION_PARAM = *mut tagNET_DVR_TURN_DIRECTION_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_STOP_LINE_PARAM { + pub byStatus: BYTE, + pub byRes: [BYTE; 39usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STOP_LINE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_STOP_LINE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_STOP_LINE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STOP_LINE_PARAM), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STOP_LINE_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_STOP_LINE_PARAM = tagNET_DVR_STOP_LINE_PARAM; +pub type LPNET_DVR_STOP_LINE_PARAM = *mut tagNET_DVR_STOP_LINE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TPS_ADDINFO { + pub struFirstLLPos: NET_DVR_LLPOS_PARAM, + pub struLastLLPos: NET_DVR_LLPOS_PARAM, + pub sLicense: [::std::os::raw::c_char; 16usize], + pub struTurnDirection: NET_DVR_TURN_DIRECTION_PARAM, + pub struStopLine: NET_DVR_STOP_LINE_PARAM, + pub byRes: [BYTE; 884usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TPS_ADDINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1068usize, + concat!("Size of: ", stringify!(tagNET_DVR_TPS_ADDINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TPS_ADDINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFirstLLPos) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ADDINFO), + "::", + stringify!(struFirstLLPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLastLLPos) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ADDINFO), + "::", + stringify!(struLastLLPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLicense) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ADDINFO), + "::", + stringify!(sLicense) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTurnDirection) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ADDINFO), + "::", + stringify!(struTurnDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopLine) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ADDINFO), + "::", + stringify!(struStopLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TPS_ADDINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TPS_ADDINFO = tagNET_DVR_TPS_ADDINFO; +pub type LPNET_DVR_TPS_ADDINFO = *mut tagNET_DVR_TPS_ADDINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VEHICLE_ADDINFO { + pub struLLPos: NET_DVR_LLPOS_PARAM, + pub sVehicleNo: [::std::os::raw::c_char; 64usize], + pub byVehicleMonitorTaskID: [BYTE; 64usize], + pub byUUID: [BYTE; 64usize], + pub byRes: [BYTE; 832usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VEHICLE_ADDINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1068usize, + concat!("Size of: ", stringify!(tagNET_DVR_VEHICLE_ADDINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VEHICLE_ADDINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLLPos) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_ADDINFO), + "::", + stringify!(struLLPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sVehicleNo) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_ADDINFO), + "::", + stringify!(sVehicleNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleMonitorTaskID) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_ADDINFO), + "::", + stringify!(byVehicleMonitorTaskID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUUID) as usize - ptr as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_ADDINFO), + "::", + stringify!(byUUID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 236usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_ADDINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VEHICLE_ADDINFO = tagNET_DVR_VEHICLE_ADDINFO; +pub type LPNET_DVR_VEHICLE_ADDINFO = *mut tagNET_DVR_VEHICLE_ADDINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SMOKEDETECTION_ALARM { + pub struPTZPos: NET_PTZ_INFO, + pub struThermalPTZPos: NET_PTZ_INFO, + pub struLLPos: NET_DVR_LLPOS_PARAM, + pub struSmokePos: NET_VCA_RECT, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SMOKEDETECTION_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 356usize, + concat!("Size of: ", stringify!(tagNET_DVR_SMOKEDETECTION_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SMOKEDETECTION_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPTZPos) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMOKEDETECTION_ALARM), + "::", + stringify!(struPTZPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struThermalPTZPos) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMOKEDETECTION_ALARM), + "::", + stringify!(struThermalPTZPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLLPos) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMOKEDETECTION_ALARM), + "::", + stringify!(struLLPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSmokePos) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMOKEDETECTION_ALARM), + "::", + stringify!(struSmokePos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SMOKEDETECTION_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SMOKEDETECTION_ALARM = tagNET_DVR_SMOKEDETECTION_ALARM; +pub type LPNET_DVR_SMOKEDETECTION_ALARM = *mut tagNET_DVR_SMOKEDETECTION_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PTZPOS_PARAM { + pub fPanPos: f32, + pub fTiltPos: f32, + pub fZoomPos: f32, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_PTZPOS_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28usize, + concat!("Size of: ", stringify!(NET_DVR_PTZPOS_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_PTZPOS_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fPanPos) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PTZPOS_PARAM), + "::", + stringify!(fPanPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fTiltPos) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PTZPOS_PARAM), + "::", + stringify!(fTiltPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fZoomPos) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PTZPOS_PARAM), + "::", + stringify!(fZoomPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PTZPOS_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_PTZPOS_PARAM = *mut NET_DVR_PTZPOS_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GIS_UPLOADINFO { + pub dwSize: DWORD, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub fAzimuth: f32, + pub byLatitudeType: BYTE, + pub byLongitudeType: BYTE, + pub byRes1: [BYTE; 2usize], + pub struLatitude: NET_DVR_LLI_PARAM, + pub struLongitude: NET_DVR_LLI_PARAM, + pub fHorizontalValue: f32, + pub fVerticalValue: f32, + pub fVisibleRadius: f32, + pub fMaxViewRadius: f32, + pub struSensorParam: NET_DVR_SENSOR_PARAM, + pub struPtzPos: NET_DVR_PTZPOS_PARAM, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GIS_UPLOADINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 536usize, + concat!("Size of: ", stringify!(tagNET_DVR_GIS_UPLOADINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GIS_UPLOADINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_UPLOADINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_UPLOADINFO), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_UPLOADINFO), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_UPLOADINFO), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fAzimuth) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_UPLOADINFO), + "::", + stringify!(fAzimuth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLatitudeType) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_UPLOADINFO), + "::", + stringify!(byLatitudeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLongitudeType) as usize - ptr as usize }, + 165usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_UPLOADINFO), + "::", + stringify!(byLongitudeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 166usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_UPLOADINFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLatitude) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_UPLOADINFO), + "::", + stringify!(struLatitude) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLongitude) as usize - ptr as usize }, + 180usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_UPLOADINFO), + "::", + stringify!(struLongitude) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fHorizontalValue) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_UPLOADINFO), + "::", + stringify!(fHorizontalValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fVerticalValue) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_UPLOADINFO), + "::", + stringify!(fVerticalValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fVisibleRadius) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_UPLOADINFO), + "::", + stringify!(fVisibleRadius) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fMaxViewRadius) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_UPLOADINFO), + "::", + stringify!(fMaxViewRadius) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSensorParam) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_UPLOADINFO), + "::", + stringify!(struSensorParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPtzPos) as usize - ptr as usize }, + 252usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_UPLOADINFO), + "::", + stringify!(struPtzPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_UPLOADINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GIS_UPLOADINFO = tagNET_DVR_GIS_UPLOADINFO; +pub type LPNET_DVR_GIS_UPLOADINFO = *mut tagNET_DVR_GIS_UPLOADINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VANDALPROOF_ALARM { + pub dwSize: DWORD, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VANDALPROOF_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 416usize, + concat!("Size of: ", stringify!(tagNET_DVR_VANDALPROOF_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VANDALPROOF_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VANDALPROOF_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VANDALPROOF_ALARM), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VANDALPROOF_ALARM), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VANDALPROOF_ALARM), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VANDALPROOF_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VANDALPROOF_ALARM = tagNET_DVR_VANDALPROOF_ALARM; +pub type LPNET_DVR_VANDALPROOF_ALARM = *mut tagNET_DVR_VANDALPROOF_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CENTRALIZEDCTRL_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byLatitudeType: BYTE, + pub byLongitudeType: BYTE, + pub byRes1: BYTE, + pub struLatitude: NET_DVR_LLI_PARAM, + pub struLongitude: NET_DVR_LLI_PARAM, + pub dwTimeOut: DWORD, + pub byControlType: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CENTRALIZEDCTRL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 164usize, + concat!("Size of: ", stringify!(tagNET_DVR_CENTRALIZEDCTRL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CENTRALIZEDCTRL_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CENTRALIZEDCTRL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CENTRALIZEDCTRL_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLatitudeType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CENTRALIZEDCTRL_CFG), + "::", + stringify!(byLatitudeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLongitudeType) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CENTRALIZEDCTRL_CFG), + "::", + stringify!(byLongitudeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CENTRALIZEDCTRL_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLatitude) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CENTRALIZEDCTRL_CFG), + "::", + stringify!(struLatitude) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLongitude) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CENTRALIZEDCTRL_CFG), + "::", + stringify!(struLongitude) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTimeOut) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CENTRALIZEDCTRL_CFG), + "::", + stringify!(dwTimeOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byControlType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CENTRALIZEDCTRL_CFG), + "::", + stringify!(byControlType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CENTRALIZEDCTRL_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CENTRALIZEDCTRL_CFG = tagNET_DVR_CENTRALIZEDCTRL_CFG; +pub type LPNET_DVR_CENTRALIZEDCTRL_CFG = *mut tagNET_DVR_CENTRALIZEDCTRL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GIS_INFO { + pub dwSize: DWORD, + pub fAzimuth: f32, + pub fHorizontalValue: f32, + pub fVerticalValue: f32, + pub fVisibleRadius: f32, + pub fMaxViewRadius: f32, + pub byLatitudeType: BYTE, + pub byLongitudeType: BYTE, + pub byPTZPosExEnable: BYTE, + pub byRes1: BYTE, + pub struLatitude: NET_DVR_LLI_PARAM, + pub struLongitude: NET_DVR_LLI_PARAM, + pub struPtzPos: NET_DVR_PTZPOS_PARAM, + pub struSensorParam: NET_DVR_SENSOR_PARAM, + pub struPtzPosEx: NET_PTZ_INFO, + pub fMinHorizontalValue: f32, + pub fMaxHorizontalValue: f32, + pub fMinVerticalValue: f32, + pub fMaxVerticalValue: f32, + pub byRes: [BYTE; 220usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GIS_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 380usize, + concat!("Size of: ", stringify!(tagNET_DVR_GIS_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GIS_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fAzimuth) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_INFO), + "::", + stringify!(fAzimuth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fHorizontalValue) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_INFO), + "::", + stringify!(fHorizontalValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fVerticalValue) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_INFO), + "::", + stringify!(fVerticalValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fVisibleRadius) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_INFO), + "::", + stringify!(fVisibleRadius) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fMaxViewRadius) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_INFO), + "::", + stringify!(fMaxViewRadius) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLatitudeType) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_INFO), + "::", + stringify!(byLatitudeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLongitudeType) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_INFO), + "::", + stringify!(byLongitudeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPTZPosExEnable) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_INFO), + "::", + stringify!(byPTZPosExEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 27usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLatitude) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_INFO), + "::", + stringify!(struLatitude) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLongitude) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_INFO), + "::", + stringify!(struLongitude) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPtzPos) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_INFO), + "::", + stringify!(struPtzPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSensorParam) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_INFO), + "::", + stringify!(struSensorParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPtzPosEx) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_INFO), + "::", + stringify!(struPtzPosEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fMinHorizontalValue) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_INFO), + "::", + stringify!(fMinHorizontalValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fMaxHorizontalValue) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_INFO), + "::", + stringify!(fMaxHorizontalValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fMinVerticalValue) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_INFO), + "::", + stringify!(fMinVerticalValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fMaxVerticalValue) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_INFO), + "::", + stringify!(fMaxVerticalValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GIS_INFO = tagNET_DVR_GIS_INFO; +pub type LPNET_DVR_GIS_INFO = *mut tagNET_DVR_GIS_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CRUISE_PARAM { + pub dwSize: DWORD, + pub byCruiseMode: BYTE, + pub byRes: [BYTE; 123usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CRUISE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_DVR_CRUISE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CRUISE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CRUISE_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCruiseMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CRUISE_PARAM), + "::", + stringify!(byCruiseMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CRUISE_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CRUISE_PARAM = tagNET_DVR_CRUISE_PARAM; +pub type LPNET_DVR_CRUISE_PARAM = *mut tagNET_DVR_CRUISE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TEMP_HUMI_INFO { + pub dwSize: DWORD, + pub struCurrentTime: NET_DVR_TIME_V30, + pub fTemperature: f32, + pub fHumidity: f32, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TEMP_HUMI_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 280usize, + concat!("Size of: ", stringify!(tagNET_DVR_TEMP_HUMI_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TEMP_HUMI_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMP_HUMI_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCurrentTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMP_HUMI_INFO), + "::", + stringify!(struCurrentTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fTemperature) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMP_HUMI_INFO), + "::", + stringify!(fTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fHumidity) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMP_HUMI_INFO), + "::", + stringify!(fHumidity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMP_HUMI_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TEMP_HUMI_INFO = tagNET_DVR_TEMP_HUMI_INFO; +pub type LPNET_DVR_TEMP_HUMI_INFO = *mut tagNET_DVR_TEMP_HUMI_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_SDK_POINT_THERMOMETRY { + pub fPointTemperature: f32, + pub struPoint: NET_VCA_POINT, + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_SDK_POINT_THERMOMETRY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_SDK_POINT_THERMOMETRY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_SDK_POINT_THERMOMETRY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fPointTemperature) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_POINT_THERMOMETRY), + "::", + stringify!(fPointTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPoint) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_POINT_THERMOMETRY), + "::", + stringify!(struPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_POINT_THERMOMETRY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_SDK_POINT_THERMOMETRY = tagNET_SDK_POINT_THERMOMETRY; +pub type LPNET_SDK_POINT_THERMOMETRY = *mut tagNET_SDK_POINT_THERMOMETRY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_SDK_REGION_THERMOMETRY { + pub fMaxTemperature: f32, + pub fMinTemperature: f32, + pub fAverageTemperature: f32, + pub fTemperatureDiff: f32, + pub struRegion: NET_VCA_POLYGON, + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_SDK_REGION_THERMOMETRY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 120usize, + concat!("Size of: ", stringify!(tagNET_SDK_REGION_THERMOMETRY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_SDK_REGION_THERMOMETRY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fMaxTemperature) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_REGION_THERMOMETRY), + "::", + stringify!(fMaxTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fMinTemperature) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_REGION_THERMOMETRY), + "::", + stringify!(fMinTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fAverageTemperature) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_REGION_THERMOMETRY), + "::", + stringify!(fAverageTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fTemperatureDiff) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_REGION_THERMOMETRY), + "::", + stringify!(fTemperatureDiff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_REGION_THERMOMETRY), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_REGION_THERMOMETRY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_SDK_REGION_THERMOMETRY = tagNET_SDK_REGION_THERMOMETRY; +pub type LPNET_SDK_REGION_THERMOMETRY = *mut tagNET_SDK_REGION_THERMOMETRY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_SDK_MANUALTHERM_RULE { + pub byRuleID: BYTE, + pub byEnable: BYTE, + pub byRes1: [BYTE; 2usize], + pub szRuleName: [::std::os::raw::c_char; 32usize], + pub byRuleCalibType: BYTE, + pub byRes2: [BYTE; 3usize], + pub struPointTherm: NET_SDK_POINT_THERMOMETRY, + pub struRegionTherm: NET_SDK_REGION_THERMOMETRY, + pub byRes: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_SDK_MANUALTHERM_RULE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 704usize, + concat!("Size of: ", stringify!(tagNET_SDK_MANUALTHERM_RULE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_SDK_MANUALTHERM_RULE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_MANUALTHERM_RULE), + "::", + stringify!(byRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_MANUALTHERM_RULE), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_MANUALTHERM_RULE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szRuleName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_MANUALTHERM_RULE), + "::", + stringify!(szRuleName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleCalibType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_MANUALTHERM_RULE), + "::", + stringify!(byRuleCalibType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_MANUALTHERM_RULE), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPointTherm) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_MANUALTHERM_RULE), + "::", + stringify!(struPointTherm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegionTherm) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_MANUALTHERM_RULE), + "::", + stringify!(struRegionTherm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_MANUALTHERM_RULE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_SDK_MANUALTHERM_RULE = tagNET_SDK_MANUALTHERM_RULE; +pub type LPNET_SDK_MANUALTHERM_RULE = *mut tagNET_SDK_MANUALTHERM_RULE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_SDK_MANUAL_THERMOMETRY { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub byThermometryUnit: BYTE, + pub byDataType: BYTE, + pub byRes1: [BYTE; 6usize], + pub struRuleInfo: NET_SDK_MANUALTHERM_RULE, + pub byRes: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_SDK_MANUAL_THERMOMETRY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1240usize, + concat!("Size of: ", stringify!(tagNET_SDK_MANUAL_THERMOMETRY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_SDK_MANUAL_THERMOMETRY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_MANUAL_THERMOMETRY), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_MANUAL_THERMOMETRY), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_MANUAL_THERMOMETRY), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_MANUAL_THERMOMETRY), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byThermometryUnit) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_MANUAL_THERMOMETRY), + "::", + stringify!(byThermometryUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataType) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_MANUAL_THERMOMETRY), + "::", + stringify!(byDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_MANUAL_THERMOMETRY), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRuleInfo) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_MANUAL_THERMOMETRY), + "::", + stringify!(struRuleInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 728usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_MANUAL_THERMOMETRY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_SDK_MANUAL_THERMOMETRY = tagNET_SDK_MANUAL_THERMOMETRY; +pub type LPNET_SDK_MANUAL_THERMOMETRY = *mut tagNET_SDK_MANUAL_THERMOMETRY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_SDK_MANUALTHERM_BASICPARAM { + pub dwSize: DWORD, + pub wDistance: WORD, + pub byDistanceUnit: BYTE, + pub byRes1: [BYTE; 1usize], + pub fEmissivity: f32, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_SDK_MANUALTHERM_BASICPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_SDK_MANUALTHERM_BASICPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_SDK_MANUALTHERM_BASICPARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_MANUALTHERM_BASICPARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDistance) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_MANUALTHERM_BASICPARAM), + "::", + stringify!(wDistance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDistanceUnit) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_MANUALTHERM_BASICPARAM), + "::", + stringify!(byDistanceUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_MANUALTHERM_BASICPARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fEmissivity) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_MANUALTHERM_BASICPARAM), + "::", + stringify!(fEmissivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_MANUALTHERM_BASICPARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_SDK_MANUALTHERM_BASICPARAM = tagNET_SDK_MANUALTHERM_BASICPARAM; +pub type LPNET_SDK_MANUALTHERM_BASICPARAM = *mut tagNET_SDK_MANUALTHERM_BASICPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_SDK_FIRESHIELDMASK_REGION { + pub dwSize: DWORD, + pub byMaskID: BYTE, + pub byEnabled: BYTE, + pub byShieldZoom: BYTE, + pub byMaskType: BYTE, + pub byRegionType: BYTE, + pub byShowEnabled: BYTE, + pub byRes1: [BYTE; 2usize], + pub szMaskName: [::std::os::raw::c_char; 32usize], + pub struRegion: NET_VCA_POLYGON, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_SDK_FIRESHIELDMASK_REGION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 160usize, + concat!("Size of: ", stringify!(tagNET_SDK_FIRESHIELDMASK_REGION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_SDK_FIRESHIELDMASK_REGION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_FIRESHIELDMASK_REGION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMaskID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_FIRESHIELDMASK_REGION), + "::", + stringify!(byMaskID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_FIRESHIELDMASK_REGION), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShieldZoom) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_FIRESHIELDMASK_REGION), + "::", + stringify!(byShieldZoom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMaskType) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_FIRESHIELDMASK_REGION), + "::", + stringify!(byMaskType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRegionType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_FIRESHIELDMASK_REGION), + "::", + stringify!(byRegionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShowEnabled) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_FIRESHIELDMASK_REGION), + "::", + stringify!(byShowEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_FIRESHIELDMASK_REGION), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szMaskName) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_FIRESHIELDMASK_REGION), + "::", + stringify!(szMaskName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_FIRESHIELDMASK_REGION), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_FIRESHIELDMASK_REGION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_SDK_FIRESHIELDMASK_REGION = tagNET_SDK_FIRESHIELDMASK_REGION; +pub type LPNET_SDK_FIRESHIELDMASK_REGION = *mut tagNET_SDK_FIRESHIELDMASK_REGION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_SDK_FIRESHIELDMASK_CFG { + pub dwSize: DWORD, + pub byEnabled: BYTE, + pub byShieldAreaTransparency: BYTE, + pub byDisplayShieldAreaEnabled: BYTE, + pub byRes1: [BYTE; 1usize], + pub struMaskRegion: [NET_SDK_FIRESHIELDMASK_REGION; 24usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_SDK_FIRESHIELDMASK_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4104usize, + concat!("Size of: ", stringify!(tagNET_SDK_FIRESHIELDMASK_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_SDK_FIRESHIELDMASK_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_FIRESHIELDMASK_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_FIRESHIELDMASK_CFG), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShieldAreaTransparency) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_FIRESHIELDMASK_CFG), + "::", + stringify!(byShieldAreaTransparency) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDisplayShieldAreaEnabled) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_FIRESHIELDMASK_CFG), + "::", + stringify!(byDisplayShieldAreaEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_FIRESHIELDMASK_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMaskRegion) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_FIRESHIELDMASK_CFG), + "::", + stringify!(struMaskRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3848usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_FIRESHIELDMASK_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_SDK_FIRESHIELDMASK_CFG = tagNET_SDK_FIRESHIELDMASK_CFG; +pub type LPNET_SDK_FIRESHIELDMASK_CFG = *mut tagNET_SDK_FIRESHIELDMASK_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_SDK_SMOKESHIELDMASK_REGION { + pub dwSize: DWORD, + pub byMaskID: BYTE, + pub byEnabled: BYTE, + pub byShieldZoom: BYTE, + pub byMaskType: BYTE, + pub byRegionType: BYTE, + pub byShowEnabled: BYTE, + pub byRes1: [BYTE; 2usize], + pub szMaskName: [::std::os::raw::c_char; 32usize], + pub struRegion: NET_VCA_POLYGON, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_SDK_SMOKESHIELDMASK_REGION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 160usize, + concat!("Size of: ", stringify!(tagNET_SDK_SMOKESHIELDMASK_REGION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_SDK_SMOKESHIELDMASK_REGION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SMOKESHIELDMASK_REGION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMaskID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SMOKESHIELDMASK_REGION), + "::", + stringify!(byMaskID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SMOKESHIELDMASK_REGION), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShieldZoom) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SMOKESHIELDMASK_REGION), + "::", + stringify!(byShieldZoom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMaskType) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SMOKESHIELDMASK_REGION), + "::", + stringify!(byMaskType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRegionType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SMOKESHIELDMASK_REGION), + "::", + stringify!(byRegionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShowEnabled) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SMOKESHIELDMASK_REGION), + "::", + stringify!(byShowEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SMOKESHIELDMASK_REGION), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szMaskName) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SMOKESHIELDMASK_REGION), + "::", + stringify!(szMaskName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SMOKESHIELDMASK_REGION), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SMOKESHIELDMASK_REGION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_SDK_SMOKESHIELDMASK_REGION = tagNET_SDK_SMOKESHIELDMASK_REGION; +pub type LPNET_SDK_SMOKESHIELDMASK_REGION = *mut tagNET_SDK_SMOKESHIELDMASK_REGION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_SDK_SMOKESHIELDMASK_CFG { + pub dwSize: DWORD, + pub byEnabled: BYTE, + pub byShieldAreaTransparency: BYTE, + pub byDisplayShieldAreaEnabled: BYTE, + pub byRes1: [BYTE; 1usize], + pub struMaskRegion: [NET_SDK_SMOKESHIELDMASK_REGION; 24usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_SDK_SMOKESHIELDMASK_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4104usize, + concat!("Size of: ", stringify!(tagNET_SDK_SMOKESHIELDMASK_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_SDK_SMOKESHIELDMASK_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SMOKESHIELDMASK_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SMOKESHIELDMASK_CFG), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShieldAreaTransparency) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SMOKESHIELDMASK_CFG), + "::", + stringify!(byShieldAreaTransparency) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDisplayShieldAreaEnabled) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SMOKESHIELDMASK_CFG), + "::", + stringify!(byDisplayShieldAreaEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SMOKESHIELDMASK_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMaskRegion) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SMOKESHIELDMASK_CFG), + "::", + stringify!(struMaskRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3848usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SMOKESHIELDMASK_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_SDK_SMOKESHIELDMASK_CFG = tagNET_SDK_SMOKESHIELDMASK_CFG; +pub type LPNET_SDK_SMOKESHIELDMASK_CFG = *mut tagNET_SDK_SMOKESHIELDMASK_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_SDK_AREASCAN_CFG { + pub dwSize: DWORD, + pub byScanState: BYTE, + pub byRes: [BYTE; 259usize], +} +#[test] +fn bindgen_test_layout_tagNET_SDK_AREASCAN_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_SDK_AREASCAN_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_SDK_AREASCAN_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_AREASCAN_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScanState) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_AREASCAN_CFG), + "::", + stringify!(byScanState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_AREASCAN_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_SDK_AREASCAN_CFG = tagNET_SDK_AREASCAN_CFG; +pub type LPNET_SDK_AREASCAN_CFG = *mut tagNET_SDK_AREASCAN_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_SDK_FIRESHIELDMASK_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRegionID: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_SDK_FIRESHIELDMASK_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_SDK_FIRESHIELDMASK_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_SDK_FIRESHIELDMASK_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_FIRESHIELDMASK_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_FIRESHIELDMASK_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRegionID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_FIRESHIELDMASK_COND), + "::", + stringify!(byRegionID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_FIRESHIELDMASK_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_SDK_FIRESHIELDMASK_COND = tagNET_SDK_FIRESHIELDMASK_COND; +pub type LPNET_SDK_FIRESHIELDMASK_COND = *mut tagNET_SDK_FIRESHIELDMASK_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_SDK_SMOKESHIELDMASK_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRegionID: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_SDK_SMOKESHIELDMASK_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_SDK_SMOKESHIELDMASK_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_SDK_SMOKESHIELDMASK_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SMOKESHIELDMASK_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SMOKESHIELDMASK_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRegionID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SMOKESHIELDMASK_COND), + "::", + stringify!(byRegionID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SMOKESHIELDMASK_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_SDK_SMOKESHIELDMASK_COND = tagNET_SDK_SMOKESHIELDMASK_COND; +pub type LPNET_SDK_SMOKESHIELDMASK_COND = *mut tagNET_SDK_SMOKESHIELDMASK_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VANDALPROOFALARM_CFG { + pub dwSize: DWORD, + pub bySensitivity: BYTE, + pub byUploadEnabled: BYTE, + pub byVoiceWarningEnabled: BYTE, + pub byEnable: BYTE, + pub byRes: [BYTE; 124usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VANDALPROOFALARM_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_VANDALPROOFALARM_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VANDALPROOFALARM_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VANDALPROOFALARM_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VANDALPROOFALARM_CFG), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUploadEnabled) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VANDALPROOFALARM_CFG), + "::", + stringify!(byUploadEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVoiceWarningEnabled) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VANDALPROOFALARM_CFG), + "::", + stringify!(byVoiceWarningEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VANDALPROOFALARM_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VANDALPROOFALARM_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VANDALPROOFALARM_CFG = tagNET_DVR_VANDALPROOFALARM_CFG; +pub type LPNET_DVR_VANDALPROOFALARM_CFG = *mut tagNET_DVR_VANDALPROOFALARM_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AZIMUTHINFO { + pub dwSize: DWORD, + pub fDegree: f32, + pub byAzimuth: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AZIMUTHINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_AZIMUTHINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AZIMUTHINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AZIMUTHINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fDegree) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AZIMUTHINFO), + "::", + stringify!(fDegree) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAzimuth) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AZIMUTHINFO), + "::", + stringify!(byAzimuth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AZIMUTHINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AZIMUTHINFO = tagNET_DVR_AZIMUTHINFO; +pub type LPNET_DVR_AZIMUTHINFO = *mut tagNET_DVR_AZIMUTHINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_COMPASS_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_COMPASS_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_COMPASS_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_COMPASS_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COMPASS_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COMPASS_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COMPASS_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_COMPASS_COND = tagNET_DVR_COMPASS_COND; +pub type LPNET_DVR_COMPASS_COND = *mut tagNET_DVR_COMPASS_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_POSITION_CFG { + pub dwSize: DWORD, + pub bySoftWorkMode: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_POSITION_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_POSITION_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_POSITION_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSITION_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySoftWorkMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSITION_CFG), + "::", + stringify!(bySoftWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSITION_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_POSITION_CFG = tagNET_DVR_POSITION_CFG; +pub type LPNET_DVR_POSITION_CFG = *mut tagNET_DVR_POSITION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_STREAMING_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byStreamType: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STREAMING_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_STREAMING_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_STREAMING_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAMING_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAMING_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAMING_COND), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAMING_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_STREAMING_COND = tagNET_DVR_STREAMING_COND; +pub type LPNET_DVR_STREAMING_COND = *mut tagNET_DVR_STREAMING_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SATELLITETIME_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes: BYTE, + pub wTimeInterval: WORD, + pub byRes1: [BYTE; 124usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SATELLITETIME_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_SATELLITETIME_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SATELLITETIME_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SATELLITETIME_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SATELLITETIME_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SATELLITETIME_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTimeInterval) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SATELLITETIME_CFG), + "::", + stringify!(wTimeInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SATELLITETIME_CFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_SATELLITETIME_CFG = tagNET_DVR_SATELLITETIME_CFG; +pub type LPNET_DVR_SATELLITETIME_CFG = *mut tagNET_DVR_SATELLITETIME_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SIGNAL_JOINT_CFG { + pub dwSize: DWORD, + pub sCamName: [BYTE; 32usize], + pub byEnable: BYTE, + pub byCamMode: BYTE, + pub byRows: BYTE, + pub byColumns: BYTE, + pub dwSignalNo: [DWORD; 64usize], + pub dwJointNo: DWORD, + pub dwSignalNoJoint: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SIGNAL_JOINT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 368usize, + concat!("Size of: ", stringify!(tagNET_DVR_SIGNAL_JOINT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SIGNAL_JOINT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNAL_JOINT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCamName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNAL_JOINT_CFG), + "::", + stringify!(sCamName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNAL_JOINT_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCamMode) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNAL_JOINT_CFG), + "::", + stringify!(byCamMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRows) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNAL_JOINT_CFG), + "::", + stringify!(byRows) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byColumns) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNAL_JOINT_CFG), + "::", + stringify!(byColumns) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSignalNo) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNAL_JOINT_CFG), + "::", + stringify!(dwSignalNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwJointNo) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNAL_JOINT_CFG), + "::", + stringify!(dwJointNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSignalNoJoint) as usize - ptr as usize }, + 300usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNAL_JOINT_CFG), + "::", + stringify!(dwSignalNoJoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNAL_JOINT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SIGNAL_JOINT_CFG = tagNET_DVR_SIGNAL_JOINT_CFG; +pub type LPNET_DVR_SIGNAL_JOINT_CFG = *mut tagNET_DVR_SIGNAL_JOINT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SIGNAL_CUTPARAM { + pub dwSize: DWORD, + pub dwSignalNo: DWORD, + pub dwCutTop: DWORD, + pub dwCutBottom: DWORD, + pub dwCutLeft: DWORD, + pub dwCutRight: DWORD, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SIGNAL_CUTPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_SIGNAL_CUTPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SIGNAL_CUTPARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNAL_CUTPARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSignalNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNAL_CUTPARAM), + "::", + stringify!(dwSignalNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCutTop) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNAL_CUTPARAM), + "::", + stringify!(dwCutTop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCutBottom) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNAL_CUTPARAM), + "::", + stringify!(dwCutBottom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCutLeft) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNAL_CUTPARAM), + "::", + stringify!(dwCutLeft) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCutRight) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNAL_CUTPARAM), + "::", + stringify!(dwCutRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SIGNAL_CUTPARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SIGNAL_CUTPARAM = tagNET_DVR_SIGNAL_CUTPARAM; +pub type LPNET_DVR_SIGNAL_CUTPARAM = *mut tagNET_DVR_SIGNAL_CUTPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WALL_RELATION_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRealWallNo: BYTE, + pub byRes: [BYTE; 14usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WALL_RELATION_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_WALL_RELATION_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WALL_RELATION_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_RELATION_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_RELATION_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRealWallNo) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_RELATION_CFG), + "::", + stringify!(byRealWallNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WALL_RELATION_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WALL_RELATION_CFG = tagNET_DVR_WALL_RELATION_CFG; +pub type LPNET_DVR_WALL_RELATION_CFG = *mut tagNET_DVR_WALL_RELATION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INPUTSTREAMCFG_V40 { + pub dwSize: DWORD, + pub byValid: BYTE, + pub byCamMode: BYTE, + pub wInputNo: WORD, + pub sCamName: [BYTE; 32usize], + pub struVideoEffect: NET_DVR_VIDEOEFFECT, + pub struPuStream: NET_DVR_PU_STREAM_CFG, + pub wBoardNum: WORD, + pub wInputIdxOnBoard: WORD, + pub dwResolution: DWORD, + pub byVideoFormat: BYTE, + pub byStatus: BYTE, + pub sGroupName: [BYTE; 32usize], + pub byJointMatrix: BYTE, + pub byJointNo: BYTE, + pub byColorMode: BYTE, + pub byScreenServer: BYTE, + pub byDevNo: BYTE, + pub byRes1: BYTE, + pub dwInputSignalNo: DWORD, + pub byVideoEnctype: BYTE, + pub byAudioEnctype: BYTE, + pub byWallStatus: BYTE, + pub byRes: [BYTE; 117usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INPUTSTREAMCFG_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 712usize, + concat!("Size of: ", stringify!(tagNET_DVR_INPUTSTREAMCFG_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INPUTSTREAMCFG_V40)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG_V40), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCamMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG_V40), + "::", + stringify!(byCamMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInputNo) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG_V40), + "::", + stringify!(wInputNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCamName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG_V40), + "::", + stringify!(sCamName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVideoEffect) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG_V40), + "::", + stringify!(struVideoEffect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPuStream) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG_V40), + "::", + stringify!(struPuStream) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBoardNum) as usize - ptr as usize }, + 540usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG_V40), + "::", + stringify!(wBoardNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInputIdxOnBoard) as usize - ptr as usize }, + 542usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG_V40), + "::", + stringify!(wInputIdxOnBoard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwResolution) as usize - ptr as usize }, + 544usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG_V40), + "::", + stringify!(dwResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoFormat) as usize - ptr as usize }, + 548usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG_V40), + "::", + stringify!(byVideoFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 549usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG_V40), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sGroupName) as usize - ptr as usize }, + 550usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG_V40), + "::", + stringify!(sGroupName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJointMatrix) as usize - ptr as usize }, + 582usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG_V40), + "::", + stringify!(byJointMatrix) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJointNo) as usize - ptr as usize }, + 583usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG_V40), + "::", + stringify!(byJointNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byColorMode) as usize - ptr as usize }, + 584usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG_V40), + "::", + stringify!(byColorMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScreenServer) as usize - ptr as usize }, + 585usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG_V40), + "::", + stringify!(byScreenServer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevNo) as usize - ptr as usize }, + 586usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG_V40), + "::", + stringify!(byDevNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 587usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG_V40), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInputSignalNo) as usize - ptr as usize }, + 588usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG_V40), + "::", + stringify!(dwInputSignalNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoEnctype) as usize - ptr as usize }, + 592usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG_V40), + "::", + stringify!(byVideoEnctype) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioEnctype) as usize - ptr as usize }, + 593usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG_V40), + "::", + stringify!(byAudioEnctype) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWallStatus) as usize - ptr as usize }, + 594usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG_V40), + "::", + stringify!(byWallStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 595usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAMCFG_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INPUTSTREAMCFG_V40 = tagNET_DVR_INPUTSTREAMCFG_V40; +pub type LPNET_DVR_INPUTSTREAMCFG_V40 = *mut tagNET_DVR_INPUTSTREAMCFG_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUDIO_CONTROL_INFO { + pub dwSize: DWORD, + pub dwMonId: DWORD, + pub bySubWindowNum: BYTE, + pub byWallNo: BYTE, + pub byEnable: BYTE, + pub byRes: [BYTE; 13usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUDIO_CONTROL_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUDIO_CONTROL_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AUDIO_CONTROL_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_CONTROL_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMonId) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_CONTROL_INFO), + "::", + stringify!(dwMonId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubWindowNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_CONTROL_INFO), + "::", + stringify!(bySubWindowNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWallNo) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_CONTROL_INFO), + "::", + stringify!(byWallNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_CONTROL_INFO), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_CONTROL_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AUDIO_CONTROL_INFO = tagNET_DVR_AUDIO_CONTROL_INFO; +pub type LPNET_DVR_AUDIO_CONTROL_INFO = *mut tagNET_DVR_AUDIO_CONTROL_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INPUTSTREAM_PTZCFG_PARAM { + pub dwSize: DWORD, + pub wPTZProtocol: WORD, + pub byRes: [BYTE; 34usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INPUTSTREAM_PTZCFG_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_INPUTSTREAM_PTZCFG_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_INPUTSTREAM_PTZCFG_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAM_PTZCFG_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPTZProtocol) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAM_PTZCFG_PARAM), + "::", + stringify!(wPTZProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUTSTREAM_PTZCFG_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INPUTSTREAM_PTZCFG_PARAM = tagNET_DVR_INPUTSTREAM_PTZCFG_PARAM; +pub type LPNET_DVR_INPUTSTREAM_PTZCFG_PARAM = *mut tagNET_DVR_INPUTSTREAM_PTZCFG_PARAM; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_UNKNOWN: TRUCK_AXLE_MODEL = 0; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_2AXLE_12: TRUCK_AXLE_MODEL = 512; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_3AXLE_122_1: TRUCK_AXLE_MODEL = 768; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_3AXLE_122_2: TRUCK_AXLE_MODEL = 769; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_3AXLE_15: TRUCK_AXLE_MODEL = 770; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_3AXLE_112: TRUCK_AXLE_MODEL = 771; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_4AXLE_125_1: TRUCK_AXLE_MODEL = 1024; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_4AXLE_152: TRUCK_AXLE_MODEL = 1025; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_4AXLE_125_2: TRUCK_AXLE_MODEL = 1026; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_4AXLE_1222: TRUCK_AXLE_MODEL = 1027; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_4AXLE_115: TRUCK_AXLE_MODEL = 1028; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_5AXLE_155_1: TRUCK_AXLE_MODEL = 1280; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_5AXLE_1125_1: TRUCK_AXLE_MODEL = 1281; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_5AXLE_155_2: TRUCK_AXLE_MODEL = 1282; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_5AXLE_1125_2: TRUCK_AXLE_MODEL = 1283; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_5AXLE_129: TRUCK_AXLE_MODEL = 1284; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_5AXLE_1522: TRUCK_AXLE_MODEL = 1285; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_5AXLE_11222: TRUCK_AXLE_MODEL = 1286; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_6AXLE_159_1: TRUCK_AXLE_MODEL = 1536; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_6AXLE_159_2: TRUCK_AXLE_MODEL = 1537; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_6AXLE_1155_1: TRUCK_AXLE_MODEL = 1538; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_6AXLE_1155_2: TRUCK_AXLE_MODEL = 1539; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_6AXLE_159_3: TRUCK_AXLE_MODEL = 1540; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_6AXLE_159_4: TRUCK_AXLE_MODEL = 1541; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_6AXLE_1129: TRUCK_AXLE_MODEL = 1542; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_6AXLE_11522_1: TRUCK_AXLE_MODEL = 1543; +pub const TRUCK_AXLE_MODEL_AXLE_TYPE_6AXLE_11522_2: TRUCK_AXLE_MODEL = 1544; +pub type TRUCK_AXLE_MODEL = ::std::os::raw::c_uint; +pub const _TOOLWAY_VEHICLE_TYPE_TOOLWAY_RESULT_OTHER: _TOOLWAY_VEHICLE_TYPE = 0; +pub const _TOOLWAY_VEHICLE_TYPE_TOOLWAY_PASSENGER_VEHICLE_CLASS_1_MINI: _TOOLWAY_VEHICLE_TYPE = 1; +pub const _TOOLWAY_VEHICLE_TYPE_TOOLWAY_PASSENGER_VEHICLE_CLASS_1_SMALL: _TOOLWAY_VEHICLE_TYPE = 2; +pub const _TOOLWAY_VEHICLE_TYPE_TOOLWAY_PASSENGER_VEHICLE_CLASS_2_MIDDLE: _TOOLWAY_VEHICLE_TYPE = 3; +pub const _TOOLWAY_VEHICLE_TYPE_TOOLWAY_PASSENGER_VEHICLE_CLASS_2_TRAILER: _TOOLWAY_VEHICLE_TYPE = + 4; +pub const _TOOLWAY_VEHICLE_TYPE_TOOLWAY_PASSENGER_VEHICLE_CLASS_3_LARGR: _TOOLWAY_VEHICLE_TYPE = 5; +pub const _TOOLWAY_VEHICLE_TYPE_TOOLWAY_PASSENGER_VEHICLE_CLASS_4_LARGR: _TOOLWAY_VEHICLE_TYPE = 6; +pub const _TOOLWAY_VEHICLE_TYPE_TOOLWAY_GOODS_VEHICLE_CLASS_1: _TOOLWAY_VEHICLE_TYPE = 7; +pub const _TOOLWAY_VEHICLE_TYPE_TOOLWAY_GOODS_VEHICLE_CLASS_2: _TOOLWAY_VEHICLE_TYPE = 8; +pub const _TOOLWAY_VEHICLE_TYPE_TOOLWAY_GOODS_VEHICLE_CLASS_3: _TOOLWAY_VEHICLE_TYPE = 9; +pub const _TOOLWAY_VEHICLE_TYPE_TOOLWAY_GOODS_VEHICLE_CLASS_4: _TOOLWAY_VEHICLE_TYPE = 10; +pub const _TOOLWAY_VEHICLE_TYPE_TOOLWAY_GOODS_VEHICLE_CLASS_5: _TOOLWAY_VEHICLE_TYPE = 11; +pub const _TOOLWAY_VEHICLE_TYPE_TOOLWAY_GOODS_VEHICLE_CLASS_6: _TOOLWAY_VEHICLE_TYPE = 12; +pub const _TOOLWAY_VEHICLE_TYPE_TOOLWAY_MOTOR_VEHICLE_CLASS_1: _TOOLWAY_VEHICLE_TYPE = 13; +pub const _TOOLWAY_VEHICLE_TYPE_TOOLWAY_MOTOR_VEHICLE_CLASS_2: _TOOLWAY_VEHICLE_TYPE = 14; +pub const _TOOLWAY_VEHICLE_TYPE_TOOLWAY_MOTOR_VEHICLE_CLASS_3: _TOOLWAY_VEHICLE_TYPE = 15; +pub const _TOOLWAY_VEHICLE_TYPE_TOOLWAY_MOTOR_VEHICLE_CLASS_4: _TOOLWAY_VEHICLE_TYPE = 16; +pub const _TOOLWAY_VEHICLE_TYPE_TOOLWAY_MOTOR_VEHICLE_CLASS_5: _TOOLWAY_VEHICLE_TYPE = 17; +pub const _TOOLWAY_VEHICLE_TYPE_TOOLWAY_MOTOR_VEHICLE_CLASS_6: _TOOLWAY_VEHICLE_TYPE = 18; +pub type _TOOLWAY_VEHICLE_TYPE = ::std::os::raw::c_uint; +pub use self::_TOOLWAY_VEHICLE_TYPE as TOOLWAY_VEHICLE_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VEHICLE_WEIGHT_RESULT_ { + pub byIsOverWeight: BYTE, + pub byAxleNum: BYTE, + pub wAxleModel: WORD, + pub fOverWeight: f32, + pub fWeight: f32, + pub fLimitWeight: f32, + pub fAxleLen: f32, + pub sDevDescInfo: [::std::os::raw::c_char; 64usize], + pub wAxleWeight: [WORD; 10usize], + pub wAxleDistance: [WORD; 10usize], + pub dwLength: DWORD, + pub dwWidth: DWORD, + pub dwHeight: DWORD, + pub byTollwayVehicleType: BYTE, + pub byRes2: [BYTE; 11usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VEHICLE_WEIGHT_RESULT_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!("Size of: ", stringify!(tagNET_DVR_VEHICLE_WEIGHT_RESULT_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VEHICLE_WEIGHT_RESULT_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsOverWeight) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_WEIGHT_RESULT_), + "::", + stringify!(byIsOverWeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAxleNum) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_WEIGHT_RESULT_), + "::", + stringify!(byAxleNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAxleModel) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_WEIGHT_RESULT_), + "::", + stringify!(wAxleModel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fOverWeight) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_WEIGHT_RESULT_), + "::", + stringify!(fOverWeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fWeight) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_WEIGHT_RESULT_), + "::", + stringify!(fWeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fLimitWeight) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_WEIGHT_RESULT_), + "::", + stringify!(fLimitWeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fAxleLen) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_WEIGHT_RESULT_), + "::", + stringify!(fAxleLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDevDescInfo) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_WEIGHT_RESULT_), + "::", + stringify!(sDevDescInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAxleWeight) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_WEIGHT_RESULT_), + "::", + stringify!(wAxleWeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAxleDistance) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_WEIGHT_RESULT_), + "::", + stringify!(wAxleDistance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLength) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_WEIGHT_RESULT_), + "::", + stringify!(dwLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWidth) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_WEIGHT_RESULT_), + "::", + stringify!(dwWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHeight) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_WEIGHT_RESULT_), + "::", + stringify!(dwHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTollwayVehicleType) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_WEIGHT_RESULT_), + "::", + stringify!(byTollwayVehicleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 137usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLE_WEIGHT_RESULT_), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_VEHICLE_WEIGHT_RESULT = tagNET_DVR_VEHICLE_WEIGHT_RESULT_; +pub type LPNET_DVR_VEHICLE_WEIGHT_RESULT = *mut tagNET_DVR_VEHICLE_WEIGHT_RESULT_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLATE_RESULT_V50 { + pub dwSize: DWORD, + pub dwMatchNo: DWORD, + pub byGroupNum: BYTE, + pub byPicNo: BYTE, + pub bySecondCam: BYTE, + pub byFeaturePicNo: BYTE, + pub byDriveChan: BYTE, + pub byVehicleType: BYTE, + pub byDetSceneID: BYTE, + pub byVehicleAttribute: BYTE, + pub wIllegalType: WORD, + pub byIllegalSubType: [BYTE; 8usize], + pub byPostPicNo: BYTE, + pub byChanIndex: BYTE, + pub wSpeedLimit: WORD, + pub byChanIndexEx: BYTE, + pub byVehiclePositionControl: BYTE, + pub struPlateInfo: NET_DVR_PLATE_INFO, + pub struVehicleInfo: NET_DVR_VEHICLE_INFO, + pub byMonitoringSiteID: [BYTE; 48usize], + pub byDeviceID: [BYTE; 48usize], + pub byDir: BYTE, + pub byDetectType: BYTE, + pub byRelaLaneDirectionType: BYTE, + pub byCarDirectionType: BYTE, + pub dwCustomIllegalType: DWORD, + pub pIllegalInfoBuf: *mut BYTE, + pub byIllegalFromatType: BYTE, + pub byPendant: BYTE, + pub byDataAnalysis: BYTE, + pub byYellowLabelCar: BYTE, + pub byDangerousVehicles: BYTE, + pub byPilotSafebelt: BYTE, + pub byCopilotSafebelt: BYTE, + pub byPilotSunVisor: BYTE, + pub byCopilotSunVisor: BYTE, + pub byPilotCall: BYTE, + pub byBarrierGateCtrlType: BYTE, + pub byAlarmDataType: BYTE, + pub struSnapFirstPicTime: NET_DVR_TIME_V30, + pub dwIllegalTime: DWORD, + pub dwPicNum: DWORD, + pub struPicInfo: [NET_ITS_PICTURE_INFO; 6usize], + pub struWeightResult: NET_DVR_VEHICLE_WEIGHT_RESULT, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLATE_RESULT_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1352usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLATE_RESULT_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PLATE_RESULT_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMatchNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(dwMatchNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGroupNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byGroupNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicNo) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byPicNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySecondCam) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(bySecondCam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFeaturePicNo) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byFeaturePicNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDriveChan) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byDriveChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleType) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byVehicleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetSceneID) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byDetSceneID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleAttribute) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byVehicleAttribute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wIllegalType) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(wIllegalType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIllegalSubType) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byIllegalSubType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPostPicNo) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byPostPicNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanIndex) as usize - ptr as usize }, + 27usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byChanIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSpeedLimit) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(wSpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChanIndexEx) as usize - ptr as usize }, + 30usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byChanIndexEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehiclePositionControl) as usize - ptr as usize }, + 31usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byVehiclePositionControl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateInfo) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(struPlateInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVehicleInfo) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(struVehicleInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonitoringSiteID) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byMonitoringSiteID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDir) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byDir) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectType) as usize - ptr as usize }, + 273usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byDetectType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelaLaneDirectionType) as usize - ptr as usize }, + 274usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byRelaLaneDirectionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCarDirectionType) as usize - ptr as usize }, + 275usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byCarDirectionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCustomIllegalType) as usize - ptr as usize }, + 276usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(dwCustomIllegalType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pIllegalInfoBuf) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(pIllegalInfoBuf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIllegalFromatType) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byIllegalFromatType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPendant) as usize - ptr as usize }, + 289usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byPendant) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataAnalysis) as usize - ptr as usize }, + 290usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byDataAnalysis) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byYellowLabelCar) as usize - ptr as usize }, + 291usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byYellowLabelCar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDangerousVehicles) as usize - ptr as usize }, + 292usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byDangerousVehicles) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPilotSafebelt) as usize - ptr as usize }, + 293usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byPilotSafebelt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCopilotSafebelt) as usize - ptr as usize }, + 294usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byCopilotSafebelt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPilotSunVisor) as usize - ptr as usize }, + 295usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byPilotSunVisor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCopilotSunVisor) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byCopilotSunVisor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPilotCall) as usize - ptr as usize }, + 297usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byPilotCall) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBarrierGateCtrlType) as usize - ptr as usize }, + 298usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byBarrierGateCtrlType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmDataType) as usize - ptr as usize }, + 299usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byAlarmDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSnapFirstPicTime) as usize - ptr as usize }, + 300usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(struSnapFirstPicTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIllegalTime) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(dwIllegalTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicNum) as usize - ptr as usize }, + 316usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(dwPicNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPicInfo) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(struPicInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWeightResult) as usize - ptr as usize }, + 944usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(struWeightResult) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1092usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLATE_RESULT_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PLATE_RESULT_V50 = tagNET_DVR_PLATE_RESULT_V50; +pub type LPNET_DVR_PLATE_RESULT_V50 = *mut tagNET_DVR_PLATE_RESULT_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_NORMAL_SCHEDTIME_ { + pub struTime: NET_DVR_SCHEDTIME, + pub byAlarmType: BYTE, + pub byRes: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_NORMAL_SCHEDTIME_() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_NORMAL_SCHEDTIME_> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_NORMAL_SCHEDTIME_>(), + 8usize, + concat!("Size of: ", stringify!(_NET_DVR_NORMAL_SCHEDTIME_)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_NORMAL_SCHEDTIME_>(), + 1usize, + concat!("Alignment of ", stringify!(_NET_DVR_NORMAL_SCHEDTIME_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_NORMAL_SCHEDTIME_), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_NORMAL_SCHEDTIME_), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_NORMAL_SCHEDTIME_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_NORMAL_SCHEDTIME = _NET_DVR_NORMAL_SCHEDTIME_; +pub type LPNET_DVR_NORMAL_SCHEDTIME = *mut _NET_DVR_NORMAL_SCHEDTIME_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SUBSYSTEM_ALARM { + pub dwSize: DWORD, + pub struNormalSchedtime: [[NET_DVR_NORMAL_SCHEDTIME; 8usize]; 7usize], + pub byNormalSchedTimeOn: BYTE, + pub byMandatoryAlarm: BYTE, + pub byRes: [BYTE; 254usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUBSYSTEM_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 708usize, + concat!("Size of: ", stringify!(tagNET_DVR_SUBSYSTEM_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SUBSYSTEM_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNormalSchedtime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ALARM), + "::", + stringify!(struNormalSchedtime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNormalSchedTimeOn) as usize - ptr as usize }, + 452usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ALARM), + "::", + stringify!(byNormalSchedTimeOn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMandatoryAlarm) as usize - ptr as usize }, + 453usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ALARM), + "::", + stringify!(byMandatoryAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 454usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBSYSTEM_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SUBSYSTEM_ALARM = tagNET_DVR_SUBSYSTEM_ALARM; +pub type LPNET_DVR_SUBSYSTEM_ALARM = *mut tagNET_DVR_SUBSYSTEM_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_ALARM_PHONECFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub byPhoneNumber: [BYTE; 32usize], + pub dwArmRight: DWORD, + pub dwDisArmRight: DWORD, + pub dwClearAlarmRight: DWORD, + pub byZoneReport: [BYTE; 512usize], + pub dwNonZoneReport: DWORD, + pub byIntervalTime: BYTE, + pub byRes2: BYTE, + pub wDefineIntervalTime: WORD, + pub byRes3: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_ALARM_PHONECFG() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_ALARM_PHONECFG> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_ALARM_PHONECFG>(), + 700usize, + concat!("Size of: ", stringify!(_NET_DVR_ALARM_PHONECFG)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_ALARM_PHONECFG>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_ALARM_PHONECFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ALARM_PHONECFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ALARM_PHONECFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ALARM_PHONECFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPhoneNumber) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ALARM_PHONECFG), + "::", + stringify!(byPhoneNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwArmRight) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ALARM_PHONECFG), + "::", + stringify!(dwArmRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDisArmRight) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ALARM_PHONECFG), + "::", + stringify!(dwDisArmRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwClearAlarmRight) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ALARM_PHONECFG), + "::", + stringify!(dwClearAlarmRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZoneReport) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ALARM_PHONECFG), + "::", + stringify!(byZoneReport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwNonZoneReport) as usize - ptr as usize }, + 564usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ALARM_PHONECFG), + "::", + stringify!(dwNonZoneReport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIntervalTime) as usize - ptr as usize }, + 568usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ALARM_PHONECFG), + "::", + stringify!(byIntervalTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 569usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ALARM_PHONECFG), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDefineIntervalTime) as usize - ptr as usize }, + 570usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ALARM_PHONECFG), + "::", + stringify!(wDefineIntervalTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 572usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ALARM_PHONECFG), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_ALARM_PHONECFG = _NET_DVR_ALARM_PHONECFG; +pub type LPNET_DVR_ALARM_PHONECFG = *mut _NET_DVR_ALARM_PHONECFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MODULE_INFO { + pub dwSize: DWORD, + pub byModuleType: BYTE, + pub byKeyBoardType: BYTE, + pub byTriggerType: BYTE, + pub byZoneType: BYTE, + pub wModuleAddress: WORD, + pub byRes2: [BYTE; 2usize], + pub sModelInfo: [::std::os::raw::c_char; 32usize], + pub sDeviceVersionInfo: [::std::os::raw::c_char; 32usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MODULE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 204usize, + concat!("Size of: ", stringify!(tagNET_DVR_MODULE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MODULE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MODULE_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byModuleType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MODULE_INFO), + "::", + stringify!(byModuleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byKeyBoardType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MODULE_INFO), + "::", + stringify!(byKeyBoardType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTriggerType) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MODULE_INFO), + "::", + stringify!(byTriggerType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZoneType) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MODULE_INFO), + "::", + stringify!(byZoneType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wModuleAddress) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MODULE_INFO), + "::", + stringify!(wModuleAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MODULE_INFO), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sModelInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MODULE_INFO), + "::", + stringify!(sModelInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDeviceVersionInfo) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MODULE_INFO), + "::", + stringify!(sDeviceVersionInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MODULE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MODULE_INFO = tagNET_DVR_MODULE_INFO; +pub type LPNET_DVR_MODULE_INFO = *mut tagNET_DVR_MODULE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_DETECTOR_INFO { + pub dwSize: DWORD, + pub byDetectorSerialNo: [BYTE; 16usize], + pub dwAlarmIn: DWORD, + pub wDetectorType: WORD, + pub byRes: [BYTE; 126usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_DETECTOR_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 152usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMHOST_DETECTOR_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_DETECTOR_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_DETECTOR_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDetectorSerialNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_DETECTOR_INFO), + "::", + stringify!(byDetectorSerialNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmIn) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_DETECTOR_INFO), + "::", + stringify!(dwAlarmIn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDetectorType) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_DETECTOR_INFO), + "::", + stringify!(wDetectorType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_DETECTOR_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_DETECTOR_INFO = tagNET_DVR_ALARMHOST_DETECTOR_INFO; +pub type LPNET_DVR_ALARMHOST_DETECTOR_INFO = *mut tagNET_DVR_ALARMHOST_DETECTOR_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE_V40 { + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub struDate: NET_DVR_SCHEDDATE, + pub struOutputSchedule: [NET_DVR_OUTPUT_SCHEDULE; 8usize], + pub byTriggerIndex: [BYTE; 512usize], + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 712usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE_V40) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE_V40) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE_V40), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE_V40), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDate) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE_V40), + "::", + stringify!(struDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOutputSchedule) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE_V40), + "::", + stringify!(struOutputSchedule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTriggerIndex) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE_V40), + "::", + stringify!(byTriggerIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 648usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE_V40), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ONE_OUTPUT_SCHEDULE_RULE_V40 = tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE_V40; +pub type LPNET_DVR_ONE_OUTPUT_SCHEDULE_RULE_V40 = *mut tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OUTPUT_SCHEDULE_RULECFG_V40 { + pub dwSize: DWORD, + pub struOutputRule: [NET_DVR_ONE_OUTPUT_SCHEDULE_RULE_V40; 8usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OUTPUT_SCHEDULE_RULECFG_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 5764usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_OUTPUT_SCHEDULE_RULECFG_V40) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_OUTPUT_SCHEDULE_RULECFG_V40) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_SCHEDULE_RULECFG_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOutputRule) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_SCHEDULE_RULECFG_V40), + "::", + stringify!(struOutputRule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5700usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OUTPUT_SCHEDULE_RULECFG_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_OUTPUT_SCHEDULE_RULECFG_V40 = tagNET_DVR_OUTPUT_SCHEDULE_RULECFG_V40; +pub type LPNET_DVR_OUTPUT_SCHEDULE_RULECFG_V40 = *mut tagNET_DVR_OUTPUT_SCHEDULE_RULECFG_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ONE_OUTPUT_SCH_RULECFG_V40 { + pub dwSize: DWORD, + pub struOutputRule: NET_DVR_ONE_OUTPUT_SCHEDULE_RULE_V40, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ONE_OUTPUT_SCH_RULECFG_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 972usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ONE_OUTPUT_SCH_RULECFG_V40) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ONE_OUTPUT_SCH_RULECFG_V40) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_OUTPUT_SCH_RULECFG_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOutputRule) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_OUTPUT_SCH_RULECFG_V40), + "::", + stringify!(struOutputRule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 716usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_OUTPUT_SCH_RULECFG_V40), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ONE_OUTPUT_SCH_RULECFG_V40 = tagNET_DVR_ONE_OUTPUT_SCH_RULECFG_V40; +pub type LPNET_DVR_ONE_OUTPUT_SCH_RULECFG_V40 = *mut tagNET_DVR_ONE_OUTPUT_SCH_RULECFG_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARM_CAPTRUE_CFG { + pub dwSize: DWORD, + pub byBeforeAlarmPic: BYTE, + pub byAfterAlarmPic: BYTE, + pub wInterval: WORD, + pub byResolution: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARM_CAPTRUE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARM_CAPTRUE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARM_CAPTRUE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_CAPTRUE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBeforeAlarmPic) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_CAPTRUE_CFG), + "::", + stringify!(byBeforeAlarmPic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAfterAlarmPic) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_CAPTRUE_CFG), + "::", + stringify!(byAfterAlarmPic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInterval) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_CAPTRUE_CFG), + "::", + stringify!(wInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byResolution) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_CAPTRUE_CFG), + "::", + stringify!(byResolution) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_CAPTRUE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARM_CAPTRUE_CFG = tagNET_DVR_ALARM_CAPTRUE_CFG; +pub type LPNET_DVR_ALARM_CAPTRUE_CFG = *mut tagNET_DVR_ALARM_CAPTRUE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_PRIOR_SCHEDTIME_ { + pub dwSize: DWORD, + pub struData: NET_DVR_SCHEDDATE, + pub struOneDayTime: [NET_DVR_NORMAL_SCHEDTIME; 8usize], + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub bySubSystem: [BYTE; 32usize], + pub byMandatoryAlarm: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_PRIOR_SCHEDTIME_() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_PRIOR_SCHEDTIME_> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_PRIOR_SCHEDTIME_>(), + 172usize, + concat!("Size of: ", stringify!(_NET_DVR_PRIOR_SCHEDTIME_)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_PRIOR_SCHEDTIME_>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_PRIOR_SCHEDTIME_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PRIOR_SCHEDTIME_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struData) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PRIOR_SCHEDTIME_), + "::", + stringify!(struData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOneDayTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PRIOR_SCHEDTIME_), + "::", + stringify!(struOneDayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PRIOR_SCHEDTIME_), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 73usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PRIOR_SCHEDTIME_), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystem) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PRIOR_SCHEDTIME_), + "::", + stringify!(bySubSystem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMandatoryAlarm) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PRIOR_SCHEDTIME_), + "::", + stringify!(byMandatoryAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 109usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_PRIOR_SCHEDTIME_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PRIOR_SCHEDTIME = _NET_DVR_PRIOR_SCHEDTIME_; +pub type LPNET_DVR_PRIOR_SCHEDTIME = *mut _NET_DVR_PRIOR_SCHEDTIME_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TAMPER_ALARMIN_PARAM { + pub dwSize: DWORD, + pub byTamperType: BYTE, + pub byUploadAlarmRecoveryReport: BYTE, + pub byRes1: [BYTE; 2usize], + pub byAssociateAlarmOut: [BYTE; 512usize], + pub byAssociateSirenOut: [BYTE; 8usize], + pub byTamperResistor: BYTE, + pub byRes2: [BYTE; 3usize], + pub fTamperResistorManual: f32, + pub byRes3: [BYTE; 36usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TAMPER_ALARMIN_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 572usize, + concat!("Size of: ", stringify!(tagNET_DVR_TAMPER_ALARMIN_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TAMPER_ALARMIN_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TAMPER_ALARMIN_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTamperType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TAMPER_ALARMIN_PARAM), + "::", + stringify!(byTamperType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUploadAlarmRecoveryReport) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TAMPER_ALARMIN_PARAM), + "::", + stringify!(byUploadAlarmRecoveryReport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TAMPER_ALARMIN_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAssociateAlarmOut) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TAMPER_ALARMIN_PARAM), + "::", + stringify!(byAssociateAlarmOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAssociateSirenOut) as usize - ptr as usize }, + 520usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TAMPER_ALARMIN_PARAM), + "::", + stringify!(byAssociateSirenOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTamperResistor) as usize - ptr as usize }, + 528usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TAMPER_ALARMIN_PARAM), + "::", + stringify!(byTamperResistor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 529usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TAMPER_ALARMIN_PARAM), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fTamperResistorManual) as usize - ptr as usize }, + 532usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TAMPER_ALARMIN_PARAM), + "::", + stringify!(fTamperResistorManual) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 536usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TAMPER_ALARMIN_PARAM), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_TAMPER_ALARMIN_PARAM = tagNET_DVR_TAMPER_ALARMIN_PARAM; +pub type LPNET_DVR_TAMPER_ALARMIN_PARAM = *mut tagNET_DVR_TAMPER_ALARMIN_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REMOTECONTROLLER_PERMISSION_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byAssociateNetUser: BYTE, + pub wRemoteCtrllerID: WORD, + pub sDevSn: [BYTE; 16usize], + pub byArmRight: BYTE, + pub byDisArmRight: BYTE, + pub byArmReportRight: BYTE, + pub byDisArmReportRight: BYTE, + pub byClearAlarmRight: BYTE, + pub bySubSystemID: BYTE, + pub byKeyboardAddr: BYTE, + pub byEnableDel: BYTE, + pub byAlwaysOpenRight: BYTE, + pub byOpeningDirection: BYTE, + pub byRes3: [BYTE; 2usize], + pub byName: [BYTE; 32usize], + pub byRes2: [BYTE; 28usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REMOTECONTROLLER_PERMISSION_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 96usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_REMOTECONTROLLER_PERMISSION_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_REMOTECONTROLLER_PERMISSION_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROLLER_PERMISSION_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROLLER_PERMISSION_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAssociateNetUser) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROLLER_PERMISSION_CFG), + "::", + stringify!(byAssociateNetUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRemoteCtrllerID) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROLLER_PERMISSION_CFG), + "::", + stringify!(wRemoteCtrllerID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDevSn) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROLLER_PERMISSION_CFG), + "::", + stringify!(sDevSn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byArmRight) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROLLER_PERMISSION_CFG), + "::", + stringify!(byArmRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDisArmRight) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROLLER_PERMISSION_CFG), + "::", + stringify!(byDisArmRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byArmReportRight) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROLLER_PERMISSION_CFG), + "::", + stringify!(byArmReportRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDisArmReportRight) as usize - ptr as usize }, + 27usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROLLER_PERMISSION_CFG), + "::", + stringify!(byDisArmReportRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byClearAlarmRight) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROLLER_PERMISSION_CFG), + "::", + stringify!(byClearAlarmRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySubSystemID) as usize - ptr as usize }, + 29usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROLLER_PERMISSION_CFG), + "::", + stringify!(bySubSystemID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byKeyboardAddr) as usize - ptr as usize }, + 30usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROLLER_PERMISSION_CFG), + "::", + stringify!(byKeyboardAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableDel) as usize - ptr as usize }, + 31usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROLLER_PERMISSION_CFG), + "::", + stringify!(byEnableDel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlwaysOpenRight) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROLLER_PERMISSION_CFG), + "::", + stringify!(byAlwaysOpenRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOpeningDirection) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROLLER_PERMISSION_CFG), + "::", + stringify!(byOpeningDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 34usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROLLER_PERMISSION_CFG), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROLLER_PERMISSION_CFG), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTECONTROLLER_PERMISSION_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_REMOTECONTROLLER_PERMISSION_CFG = tagNET_DVR_REMOTECONTROLLER_PERMISSION_CFG; +pub type LPNET_DVR_REMOTECONTROLLER_PERMISSION_CFG = + *mut tagNET_DVR_REMOTECONTROLLER_PERMISSION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_KEYBOARD_CFG { + pub dwSize: DWORD, + pub byEnableLock: BYTE, + pub byErrorTimes: BYTE, + pub wLockTime: WORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_KEYBOARD_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_KEYBOARD_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_KEYBOARD_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_KEYBOARD_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableLock) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_KEYBOARD_CFG), + "::", + stringify!(byEnableLock) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byErrorTimes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_KEYBOARD_CFG), + "::", + stringify!(byErrorTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLockTime) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_KEYBOARD_CFG), + "::", + stringify!(wLockTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_KEYBOARD_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_KEYBOARD_CFG = tagNET_DVR_KEYBOARD_CFG; +pub type LPNET_DVR_KEYBOARD_CFG = *mut tagNET_DVR_KEYBOARD_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_WIRELESS_BUSINESS_COND { + pub dwSize: DWORD, + pub byCommOperatorNum: [BYTE; 32usize], + pub byQueryCode: [BYTE; 16usize], + pub byBusinessType: BYTE, + pub byRes: [BYTE; 35usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_WIRELESS_BUSINESS_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_WIRELESS_BUSINESS_COND) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_WIRELESS_BUSINESS_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_WIRELESS_BUSINESS_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCommOperatorNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_WIRELESS_BUSINESS_COND), + "::", + stringify!(byCommOperatorNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byQueryCode) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_WIRELESS_BUSINESS_COND), + "::", + stringify!(byQueryCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBusinessType) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_WIRELESS_BUSINESS_COND), + "::", + stringify!(byBusinessType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 53usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_WIRELESS_BUSINESS_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_WIRELESS_BUSINESS_COND = tagNET_DVR_ALARMHOST_WIRELESS_BUSINESS_COND; +pub type LPNET_DVR_ALARMHOST_WIRELESS_BUSINESS_COND = + *mut tagNET_DVR_ALARMHOST_WIRELESS_BUSINESS_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMHOST_WIRELESS_BUSINESS_INFO { + pub dwSize: DWORD, + pub by3GBusiness: [BYTE; 1024usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMHOST_WIRELESS_BUSINESS_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1060usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ALARMHOST_WIRELESS_BUSINESS_INFO) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ALARMHOST_WIRELESS_BUSINESS_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_WIRELESS_BUSINESS_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).by3GBusiness) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_WIRELESS_BUSINESS_INFO), + "::", + stringify!(by3GBusiness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1028usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMHOST_WIRELESS_BUSINESS_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMHOST_WIRELESS_BUSINESS_INFO = tagNET_DVR_ALARMHOST_WIRELESS_BUSINESS_INFO; +pub type LPNET_DVR_ALARMHOST_WIRELESS_BUSINESS_INFO = + *mut tagNET_DVR_ALARMHOST_WIRELESS_BUSINESS_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PREVIEW_DELAY_CFG { + pub dwSize: DWORD, + pub wdelayTime: WORD, + pub byRes: [BYTE; 130usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PREVIEW_DELAY_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_PREVIEW_DELAY_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PREVIEW_DELAY_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEW_DELAY_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wdelayTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEW_DELAY_CFG), + "::", + stringify!(wdelayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PREVIEW_DELAY_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PREVIEW_DELAY_CFG = tagNET_DVR_PREVIEW_DELAY_CFG; +pub type LPNET_DVR_PREVIEW_DELAY_CFG = *mut tagNET_DVR_PREVIEW_DELAY_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUXILIARY_DEV_UPGRADE_PARAM { + pub dwSize: DWORD, + pub dwDevNo: DWORD, + pub byDevType: BYTE, + pub byRes: [BYTE; 131usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUXILIARY_DEV_UPGRADE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 140usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_AUXILIARY_DEV_UPGRADE_PARAM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_AUXILIARY_DEV_UPGRADE_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUXILIARY_DEV_UPGRADE_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDevNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUXILIARY_DEV_UPGRADE_PARAM), + "::", + stringify!(dwDevNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUXILIARY_DEV_UPGRADE_PARAM), + "::", + stringify!(byDevType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUXILIARY_DEV_UPGRADE_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AUXILIARY_DEV_UPGRADE_PARAM = tagNET_DVR_AUXILIARY_DEV_UPGRADE_PARAM; +pub type LPNET_DVR_AUXILIARY_DEV_UPGRADE_PARAM = *mut tagNET_DVR_AUXILIARY_DEV_UPGRADE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CALL_ROOM_CFG { + pub dwSize: DWORD, + pub nFloorNumber: SHORT, + pub wRoomNumber: WORD, + pub byManageCenter: BYTE, + pub byRes1: [BYTE; 3usize], + pub byCalledName: [BYTE; 64usize], + pub byRes: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CALL_ROOM_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_CALL_ROOM_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CALL_ROOM_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_ROOM_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nFloorNumber) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_ROOM_CFG), + "::", + stringify!(nFloorNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRoomNumber) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_ROOM_CFG), + "::", + stringify!(wRoomNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byManageCenter) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_ROOM_CFG), + "::", + stringify!(byManageCenter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_ROOM_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCalledName) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_ROOM_CFG), + "::", + stringify!(byCalledName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_ROOM_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CALL_ROOM_CFG = tagNET_DVR_CALL_ROOM_CFG; +pub type LPNET_DVR_CALL_ROOM_CFG = *mut tagNET_DVR_CALL_ROOM_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIDEO_CALL_COND { + pub dwSize: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEO_CALL_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEO_CALL_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VIDEO_CALL_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_CALL_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_CALL_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VIDEO_CALL_COND = tagNET_DVR_VIDEO_CALL_COND; +pub type LPNET_DVR_VIDEO_CALL_COND = *mut tagNET_DVR_VIDEO_CALL_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INQUEST_CASE_INFO { + pub dwSize: DWORD, + pub sCaseNo: [BYTE; 64usize], + pub sCaseName: [BYTE; 64usize], + pub sCustomInfo1: [BYTE; 64usize], + pub sCustomInfo2: [BYTE; 64usize], + pub sCustomInfo3: [BYTE; 64usize], + pub byShowCaseInfoTime: BYTE, + pub byShowCaseInfo: BYTE, + pub byPosition: BYTE, + pub byRes1: BYTE, + pub byCustomInfo4: [BYTE; 64usize], + pub byCustomInfo5: [BYTE; 64usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INQUEST_CASE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 584usize, + concat!("Size of: ", stringify!(tagNET_DVR_INQUEST_CASE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INQUEST_CASE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_CASE_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCaseNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_CASE_INFO), + "::", + stringify!(sCaseNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCaseName) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_CASE_INFO), + "::", + stringify!(sCaseName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCustomInfo1) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_CASE_INFO), + "::", + stringify!(sCustomInfo1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCustomInfo2) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_CASE_INFO), + "::", + stringify!(sCustomInfo2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCustomInfo3) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_CASE_INFO), + "::", + stringify!(sCustomInfo3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShowCaseInfoTime) as usize - ptr as usize }, + 324usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_CASE_INFO), + "::", + stringify!(byShowCaseInfoTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShowCaseInfo) as usize - ptr as usize }, + 325usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_CASE_INFO), + "::", + stringify!(byShowCaseInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPosition) as usize - ptr as usize }, + 326usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_CASE_INFO), + "::", + stringify!(byPosition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 327usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_CASE_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCustomInfo4) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_CASE_INFO), + "::", + stringify!(byCustomInfo4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCustomInfo5) as usize - ptr as usize }, + 392usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_CASE_INFO), + "::", + stringify!(byCustomInfo5) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 456usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_CASE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INQUEST_CASE_INFO = tagNET_DVR_INQUEST_CASE_INFO; +pub type LPNET_DVR_INQUEST_CASE_INFO = *mut tagNET_DVR_INQUEST_CASE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CASE_INFO_CTRL_PARA { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byShowCaseInfoTime: BYTE, + pub byRes: [BYTE; 131usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CASE_INFO_CTRL_PARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 140usize, + concat!("Size of: ", stringify!(tagNET_DVR_CASE_INFO_CTRL_PARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CASE_INFO_CTRL_PARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CASE_INFO_CTRL_PARA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CASE_INFO_CTRL_PARA), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShowCaseInfoTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CASE_INFO_CTRL_PARA), + "::", + stringify!(byShowCaseInfoTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CASE_INFO_CTRL_PARA), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CASE_INFO_CTRL_PARAM = tagNET_DVR_CASE_INFO_CTRL_PARA; +pub type LPNET_DVR_CASE_INFO_CTRL_PARA = *mut tagNET_DVR_CASE_INFO_CTRL_PARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INQUEST_USER_RIGHT_CFG { + pub dwSize: DWORD, + pub byLocalRight: [BYTE; 32usize], + pub byRemoteRight: [BYTE; 32usize], + pub byNetAudioRight: [BYTE; 512usize], + pub byRes: [BYTE; 4608usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INQUEST_USER_RIGHT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 5188usize, + concat!("Size of: ", stringify!(tagNET_DVR_INQUEST_USER_RIGHT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_INQUEST_USER_RIGHT_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_USER_RIGHT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalRight) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_USER_RIGHT_CFG), + "::", + stringify!(byLocalRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRemoteRight) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_USER_RIGHT_CFG), + "::", + stringify!(byRemoteRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetAudioRight) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_USER_RIGHT_CFG), + "::", + stringify!(byNetAudioRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 580usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_USER_RIGHT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INQUEST_USER_RIGHT_CFG = tagNET_DVR_INQUEST_USER_RIGHT_CFG; +pub type LPNET_DVR_INQUEST_USER_RIGHT_CFG = *mut tagNET_DVR_INQUEST_USER_RIGHT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INQUEST_MIX_AUDIOIN_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwMixCnt: DWORD, + pub bySrcChan: [BYTE; 16usize], + pub byLineIn: [BYTE; 16usize], + pub byMic: [BYTE; 16usize], + pub byMixAudioDelay: BYTE, + pub byRes2: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INQUEST_MIX_AUDIOIN_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 188usize, + concat!("Size of: ", stringify!(tagNET_DVR_INQUEST_MIX_AUDIOIN_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_INQUEST_MIX_AUDIOIN_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_MIX_AUDIOIN_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_MIX_AUDIOIN_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_MIX_AUDIOIN_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMixCnt) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_MIX_AUDIOIN_CFG), + "::", + stringify!(dwMixCnt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySrcChan) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_MIX_AUDIOIN_CFG), + "::", + stringify!(bySrcChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLineIn) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_MIX_AUDIOIN_CFG), + "::", + stringify!(byLineIn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMic) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_MIX_AUDIOIN_CFG), + "::", + stringify!(byMic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMixAudioDelay) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_MIX_AUDIOIN_CFG), + "::", + stringify!(byMixAudioDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 61usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INQUEST_MIX_AUDIOIN_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_INQUEST_MIX_AUDIOIN_CFG = tagNET_DVR_INQUEST_MIX_AUDIOIN_CFG; +pub type LPNET_DVR_INQUEST_MIX_AUDIOIN_CFG = *mut tagNET_DVR_INQUEST_MIX_AUDIOIN_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FACECAPTURE_STATISTICS_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub struStartTime: NET_DVR_TIME_EX, + pub byReportType: BYTE, + pub byStatType: BYTE, + pub byEnableProgramStatistics: BYTE, + pub byRes1: BYTE, + pub dwPlayScheduleNo: DWORD, + pub byRes: [BYTE; 120usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FACECAPTURE_STATISTICS_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_FACECAPTURE_STATISTICS_COND) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FACECAPTURE_STATISTICS_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACECAPTURE_STATISTICS_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACECAPTURE_STATISTICS_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACECAPTURE_STATISTICS_COND), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReportType) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACECAPTURE_STATISTICS_COND), + "::", + stringify!(byReportType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatType) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACECAPTURE_STATISTICS_COND), + "::", + stringify!(byStatType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableProgramStatistics) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACECAPTURE_STATISTICS_COND), + "::", + stringify!(byEnableProgramStatistics) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 19usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACECAPTURE_STATISTICS_COND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlayScheduleNo) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACECAPTURE_STATISTICS_COND), + "::", + stringify!(dwPlayScheduleNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACECAPTURE_STATISTICS_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FACECAPTURE_STATISTICS_COND = tagNET_DVR_FACECAPTURE_STATISTICS_COND; +pub type LPNET_DVR_FACECAPTURE_STATISTICS_COND = *mut tagNET_DVR_FACECAPTURE_STATISTICS_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AGEGROUP_PARAM_ { + pub dwTeenage: DWORD, + pub dwYouth: DWORD, + pub dwMidLife: DWORD, + pub dwElderly: DWORD, + pub dwChild: DWORD, + pub dwAdolescent: DWORD, + pub dwPrime: DWORD, + pub dwMidage: DWORD, + pub byRes: [BYTE; 48usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AGEGROUP_PARAM_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_AGEGROUP_PARAM_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AGEGROUP_PARAM_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTeenage) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AGEGROUP_PARAM_), + "::", + stringify!(dwTeenage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwYouth) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AGEGROUP_PARAM_), + "::", + stringify!(dwYouth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMidLife) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AGEGROUP_PARAM_), + "::", + stringify!(dwMidLife) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwElderly) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AGEGROUP_PARAM_), + "::", + stringify!(dwElderly) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChild) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AGEGROUP_PARAM_), + "::", + stringify!(dwChild) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAdolescent) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AGEGROUP_PARAM_), + "::", + stringify!(dwAdolescent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPrime) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AGEGROUP_PARAM_), + "::", + stringify!(dwPrime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMidage) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AGEGROUP_PARAM_), + "::", + stringify!(dwMidage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AGEGROUP_PARAM_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AGEGROUP_PARAM = tagNET_DVR_AGEGROUP_PARAM_; +pub type LPNET_DVR_AGEGROUP_PARAM = *mut tagNET_DVR_AGEGROUP_PARAM_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FILECOND_MEDICAL { + pub lChannel: LONG, + pub dwFileType: DWORD, + pub dwIsLocked: DWORD, + pub dwUseCardNo: DWORD, + pub sCardNumber: [BYTE; 32usize], + pub struStartTime: NET_DVR_TIME_SEARCH_COND, + pub struStopTime: NET_DVR_TIME_SEARCH_COND, + pub szPatientID: [::std::os::raw::c_char; 64usize], + pub dwBigFileType: DWORD, + pub byRes: [BYTE; 252usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FILECOND_MEDICAL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 392usize, + concat!("Size of: ", stringify!(tagNET_DVR_FILECOND_MEDICAL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FILECOND_MEDICAL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_MEDICAL), + "::", + stringify!(lChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_MEDICAL), + "::", + stringify!(dwFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIsLocked) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_MEDICAL), + "::", + stringify!(dwIsLocked) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwUseCardNo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_MEDICAL), + "::", + stringify!(dwUseCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCardNumber) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_MEDICAL), + "::", + stringify!(sCardNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_MEDICAL), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_MEDICAL), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szPatientID) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_MEDICAL), + "::", + stringify!(szPatientID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBigFileType) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_MEDICAL), + "::", + stringify!(dwBigFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILECOND_MEDICAL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FILECOND_MEDICAL = tagNET_DVR_FILECOND_MEDICAL; +pub type LPNET_DVR_FILECOND_MEDICAL = *mut tagNET_DVR_FILECOND_MEDICAL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FIND_PICTURE_MEDICAL_PARAM { + pub dwSize: DWORD, + pub lChannel: LONG, + pub byFileType: BYTE, + pub byNeedCard: BYTE, + pub byProvince: BYTE, + pub byRes1: BYTE, + pub struStartTime: NET_DVR_TIME, + pub struStopTime: NET_DVR_TIME, + pub szPatientID: [::std::os::raw::c_char; 64usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FIND_PICTURE_MEDICAL_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 380usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_FIND_PICTURE_MEDICAL_PARAM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FIND_PICTURE_MEDICAL_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_MEDICAL_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_MEDICAL_PARAM), + "::", + stringify!(lChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_MEDICAL_PARAM), + "::", + stringify!(byFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNeedCard) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_MEDICAL_PARAM), + "::", + stringify!(byNeedCard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProvince) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_MEDICAL_PARAM), + "::", + stringify!(byProvince) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_MEDICAL_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_MEDICAL_PARAM), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_MEDICAL_PARAM), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szPatientID) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_MEDICAL_PARAM), + "::", + stringify!(szPatientID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIND_PICTURE_MEDICAL_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FIND_PICTURE_MEDICAL_PARAM = tagNET_DVR_FIND_PICTURE_MEDICAL_PARAM; +pub type LPNET_DVR_FIND_PICTURE_MEDICAL_PARAM = *mut tagNET_DVR_FIND_PICTURE_MEDICAL_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEXGROUP_PARAM_ { + pub dwMale: DWORD, + pub dwFemale: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEXGROUP_PARAM_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_SEXGROUP_PARAM_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SEXGROUP_PARAM_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMale) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEXGROUP_PARAM_), + "::", + stringify!(dwMale) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFemale) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEXGROUP_PARAM_), + "::", + stringify!(dwFemale) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEXGROUP_PARAM_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SEXGROUP_PARAM = tagNET_DVR_SEXGROUP_PARAM_; +pub type LPNET_DVR_SEXGROUP_PARAM = *mut tagNET_DVR_SEXGROUP_PARAM_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FACECAPTURE_STATISTICS_RESULT_ { + pub dwSize: DWORD, + pub struStartTime: NET_DVR_TIME_EX, + pub struEndTime: NET_DVR_TIME_EX, + pub byStatType: BYTE, + pub byRes: [BYTE; 7usize], + pub dwPeopleNum: DWORD, + pub struAgeGroupParam: NET_DVR_AGEGROUP_PARAM, + pub struSexGroupParam: NET_DVR_SEXGROUP_PARAM, + pub struProgramInfo: NET_DVR_PROGRAM_INFO, + pub byRes1: [BYTE; 76usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FACECAPTURE_STATISTICS_RESULT_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 312usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_FACECAPTURE_STATISTICS_RESULT_) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FACECAPTURE_STATISTICS_RESULT_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACECAPTURE_STATISTICS_RESULT_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACECAPTURE_STATISTICS_RESULT_), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACECAPTURE_STATISTICS_RESULT_), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatType) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACECAPTURE_STATISTICS_RESULT_), + "::", + stringify!(byStatType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACECAPTURE_STATISTICS_RESULT_), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPeopleNum) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACECAPTURE_STATISTICS_RESULT_), + "::", + stringify!(dwPeopleNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAgeGroupParam) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACECAPTURE_STATISTICS_RESULT_), + "::", + stringify!(struAgeGroupParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSexGroupParam) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACECAPTURE_STATISTICS_RESULT_), + "::", + stringify!(struSexGroupParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struProgramInfo) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACECAPTURE_STATISTICS_RESULT_), + "::", + stringify!(struProgramInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 236usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACECAPTURE_STATISTICS_RESULT_), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_FACECAPTURE_STATISTICS_RESULT = tagNET_DVR_FACECAPTURE_STATISTICS_RESULT_; +pub type LPNET_DVR_FACECAPTURE_STATISTICS_RESULT = *mut tagNET_DVR_FACECAPTURE_STATISTICS_RESULT_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRAFFIC_DATA_QUERY_COND_ { + pub dwSize: DWORD, + pub dwQueryCond: DWORD, + pub dwChannel: DWORD, + pub struStartTime: NET_DVR_TIME_V30, + pub struEndTime: NET_DVR_TIME_V30, + pub sLicense: [::std::os::raw::c_char; 16usize], + pub dwPlateType: DWORD, + pub dwPlateColor: DWORD, + pub dwVehicleColor: DWORD, + pub dwVehicleType: DWORD, + #[doc = "Bit0-������������\nBit1-����\nBit2-����\nBit3-����\nBit4-�����\nBit5-ѹ������\nBit6-��������\nBit7-·������\nBit8-��ռ��\nBit9-Υ�����\nBit10-��������\nBit11-Υ������\nBit12-·��\u{363}��\nBit13-�\u{335}�\u{363}��\nBit14-δ��������\nBit15-Υ��\u{363}��\nBit16-Υ�µ�ͷ\nBit17-ռ��Ӧ������\nBit18-δϵ��ȫ��"] + pub dwIllegalType: DWORD, + #[doc = "Bit0-������������\nBit1-ӵ��\nBit2-\u{363}��\nBit3-����\nBit4-����\nBit5-������\nBit6-����\nBit7-ѹ��\nBit8-��\u{5b9}����\nBit9-����\nBit10-���\nBit11-��ͷ\nBit12-��ռ��\nBit13-����"] + pub dwEventType: DWORD, + #[doc = "Bit0-������������\nBit1-���й�·Υ��\u{363}��\nBit2-���ٹ�·Υ��\u{363}��\nBit3-ѹ��\nBit4-����\nBit5-Υ�����\nBit6-��ռ��"] + pub dwForensiceType: DWORD, + pub wVehicleLogoRecog: WORD, + pub byLaneNo: BYTE, + pub byDirection: BYTE, + pub wMinSpeed: WORD, + pub wMaxSpeed: WORD, + pub byDataType: BYTE, + pub byExecuteCtrl: BYTE, + pub byRes: [BYTE; 254usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRAFFIC_DATA_QUERY_COND_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 344usize, + concat!("Size of: ", stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_COND_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_COND_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_COND_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwQueryCond) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_COND_), + "::", + stringify!(dwQueryCond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_COND_), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_COND_), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_COND_), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLicense) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_COND_), + "::", + stringify!(sLicense) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlateType) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_COND_), + "::", + stringify!(dwPlateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlateColor) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_COND_), + "::", + stringify!(dwPlateColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVehicleColor) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_COND_), + "::", + stringify!(dwVehicleColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVehicleType) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_COND_), + "::", + stringify!(dwVehicleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIllegalType) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_COND_), + "::", + stringify!(dwIllegalType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEventType) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_COND_), + "::", + stringify!(dwEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwForensiceType) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_COND_), + "::", + stringify!(dwForensiceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wVehicleLogoRecog) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_COND_), + "::", + stringify!(wVehicleLogoRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNo) as usize - ptr as usize }, + 82usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_COND_), + "::", + stringify!(byLaneNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDirection) as usize - ptr as usize }, + 83usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_COND_), + "::", + stringify!(byDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMinSpeed) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_COND_), + "::", + stringify!(wMinSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMaxSpeed) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_COND_), + "::", + stringify!(wMaxSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataType) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_COND_), + "::", + stringify!(byDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExecuteCtrl) as usize - ptr as usize }, + 89usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_COND_), + "::", + stringify!(byExecuteCtrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 90usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_COND_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TRAFFIC_DATA_QUERY_COND = tagNET_DVR_TRAFFIC_DATA_QUERY_COND_; +pub type LPNET_DVR_TRAFFIC_DATA_QUERY_COND = *mut tagNET_DVR_TRAFFIC_DATA_QUERY_COND_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRAFFIC_PICTURE_PARAM_ { + pub struRelativeTime: NET_DVR_TIME_V30, + pub struAbsTime: NET_DVR_TIME_V30, + pub szPicName: [::std::os::raw::c_char; 64usize], + pub byPicType: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRAFFIC_PICTURE_PARAM_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 152usize, + concat!("Size of: ", stringify!(tagNET_DVR_TRAFFIC_PICTURE_PARAM_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_TRAFFIC_PICTURE_PARAM_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRelativeTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_PICTURE_PARAM_), + "::", + stringify!(struRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAbsTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_PICTURE_PARAM_), + "::", + stringify!(struAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szPicName) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_PICTURE_PARAM_), + "::", + stringify!(szPicName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicType) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_PICTURE_PARAM_), + "::", + stringify!(byPicType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 89usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_PICTURE_PARAM_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TRAFFIC_PICTURE_PARAM = tagNET_DVR_TRAFFIC_PICTURE_PARAM_; +pub type LPNET_DVR_TRAFFIC_PICTURE_PARAM = *mut tagNET_DVR_TRAFFIC_PICTURE_PARAM_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRAFFIC_DATA_QUERY_RESULT_ { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub sLicense: [::std::os::raw::c_char; 16usize], + pub dwPlateType: DWORD, + pub dwPlateColor: DWORD, + pub dwVehicleColor: DWORD, + pub dwVehicleType: DWORD, + #[doc = "Bit0-������������\nBit1-����\nBit2-����\nBit3-����\nBit4-�����\nBit5-ѹ������\nBit6-��������\nBit7-·������\nBit8-��ռ��\nBit9-Υ�����\nBit10-��������\nBit11-Υ������\nBit12-·��\u{363}��\nBit13-�\u{335}�\u{363}��\nBit14-δ��������\nBit15-Υ��\u{363}��\nBit16-Υ�µ�ͷ\nBit17-ռ��Ӧ������\nBit18-δϵ��ȫ��"] + pub dwIllegalType: DWORD, + #[doc = "Bit0-������������\nBit1-ӵ��\nBit2-\u{363}��\nBit3-����\nBit4-����\nBit5-������\nBit6-����\nBit7-ѹ��\nBit8-��\u{5b9}����\nBit9-����\nBit10-���\nBit11-��ͷ\nBit12-��ռ��\nBit13-����"] + pub dwEventType: DWORD, + #[doc = "Bit0-������������\nBit1-���й�·Υ��\u{363}��\nBit2-���ٹ�·Υ��\u{363}��\nBit3-ѹ��\nBit4-����\nBit5-Υ�����\nBit6-��ռ��"] + pub dwForensiceType: DWORD, + pub wVehicleLogoRecog: WORD, + pub byLaneNo: BYTE, + pub byDirection: BYTE, + pub wSpeed: WORD, + pub byDataType: BYTE, + pub byRes: [BYTE; 253usize], + pub struTrafficPic: [NET_DVR_TRAFFIC_PICTURE_PARAM; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRAFFIC_DATA_QUERY_RESULT_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1528usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_RESULT_) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_RESULT_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_RESULT_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_RESULT_), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLicense) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_RESULT_), + "::", + stringify!(sLicense) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlateType) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_RESULT_), + "::", + stringify!(dwPlateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlateColor) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_RESULT_), + "::", + stringify!(dwPlateColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVehicleColor) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_RESULT_), + "::", + stringify!(dwVehicleColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVehicleType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_RESULT_), + "::", + stringify!(dwVehicleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIllegalType) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_RESULT_), + "::", + stringify!(dwIllegalType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEventType) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_RESULT_), + "::", + stringify!(dwEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwForensiceType) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_RESULT_), + "::", + stringify!(dwForensiceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wVehicleLogoRecog) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_RESULT_), + "::", + stringify!(wVehicleLogoRecog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNo) as usize - ptr as usize }, + 54usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_RESULT_), + "::", + stringify!(byLaneNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDirection) as usize - ptr as usize }, + 55usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_RESULT_), + "::", + stringify!(byDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSpeed) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_RESULT_), + "::", + stringify!(wSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataType) as usize - ptr as usize }, + 58usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_RESULT_), + "::", + stringify!(byDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 59usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_RESULT_), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTrafficPic) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_DATA_QUERY_RESULT_), + "::", + stringify!(struTrafficPic) + ) + ); +} +pub type NET_DVR_TRAFFIC_DATA_QUERY_RESULT = tagNET_DVR_TRAFFIC_DATA_QUERY_RESULT_; +pub type LPNET_DVR_TRAFFIC_DATA_QUERY_RESULT = *mut tagNET_DVR_TRAFFIC_DATA_QUERY_RESULT_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRAFFIC_FLOW_QUERY_COND_ { + pub dwSize: DWORD, + #[doc = "Bit0-\u{368}����Ч\nBit1-ʱ����Ч\nBit2-��������Ч"] + pub dwQueryCond: DWORD, + pub dwChannel: DWORD, + pub dwResChan: [DWORD; 10usize], + pub struStartTime: NET_DVR_TIME_V30, + pub struEndTime: NET_DVR_TIME_V30, + pub byLaneNo: BYTE, + pub byRes: [BYTE; 255usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRAFFIC_FLOW_QUERY_COND_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 332usize, + concat!("Size of: ", stringify!(tagNET_DVR_TRAFFIC_FLOW_QUERY_COND_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_TRAFFIC_FLOW_QUERY_COND_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_FLOW_QUERY_COND_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwQueryCond) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_FLOW_QUERY_COND_), + "::", + stringify!(dwQueryCond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_FLOW_QUERY_COND_), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwResChan) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_FLOW_QUERY_COND_), + "::", + stringify!(dwResChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_FLOW_QUERY_COND_), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_FLOW_QUERY_COND_), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNo) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_FLOW_QUERY_COND_), + "::", + stringify!(byLaneNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 77usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_FLOW_QUERY_COND_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TRAFFIC_FLOW_QUERY_COND = tagNET_DVR_TRAFFIC_FLOW_QUERY_COND_; +pub type LPNET_DVR_TRAFFIC_FLOW_QUERY_COND = *mut tagNET_DVR_TRAFFIC_FLOW_QUERY_COND_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRAFFIC_FLOW_QUERY_RESULT_ { + pub dwSize: DWORD, + pub struStartTime: NET_DVR_TIME_V30, + pub struEndTime: NET_DVR_TIME_V30, + pub dwChannel: DWORD, + pub dwFlow: DWORD, + pub byLaneNo: BYTE, + pub byRes: [BYTE; 511usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRAFFIC_FLOW_QUERY_RESULT_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 548usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_TRAFFIC_FLOW_QUERY_RESULT_) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_TRAFFIC_FLOW_QUERY_RESULT_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_FLOW_QUERY_RESULT_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_FLOW_QUERY_RESULT_), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_FLOW_QUERY_RESULT_), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_FLOW_QUERY_RESULT_), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFlow) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_FLOW_QUERY_RESULT_), + "::", + stringify!(dwFlow) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneNo) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_FLOW_QUERY_RESULT_), + "::", + stringify!(byLaneNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRAFFIC_FLOW_QUERY_RESULT_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TRAFFIC_FLOW_QUERY_RESULT = tagNET_DVR_TRAFFIC_FLOW_QUERY_RESULT_; +pub type LPNET_DVR_TRAFFIC_FLOW_QUERY_RESULT = *mut tagNET_DVR_TRAFFIC_FLOW_QUERY_RESULT_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PIC_INFO { + pub byPicType: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwPicWidth: DWORD, + pub dwPicHeight: DWORD, + pub dwPicDataLen: DWORD, + pub byPicDataBuff: *mut ::std::os::raw::c_char, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PIC_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_PIC_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PIC_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_INFO), + "::", + stringify!(byPicType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicWidth) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_INFO), + "::", + stringify!(dwPicWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicHeight) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_INFO), + "::", + stringify!(dwPicHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicDataLen) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_INFO), + "::", + stringify!(dwPicDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicDataBuff) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_INFO), + "::", + stringify!(byPicDataBuff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PIC_INFO = tagNET_DVR_PIC_INFO; +pub type LPNET_DVR_PIC_INFO = *mut tagNET_DVR_PIC_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VCA_RULE_COLOR_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRuleID: BYTE, + pub byColorBlockNo: BYTE, + pub byRes1: BYTE, + pub struPicInfo: NET_DVR_PIC_INFO, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VCA_RULE_COLOR_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_DVR_VCA_RULE_COLOR_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VCA_RULE_COLOR_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_RULE_COLOR_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_RULE_COLOR_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleID) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_RULE_COLOR_CFG), + "::", + stringify!(byRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byColorBlockNo) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_RULE_COLOR_CFG), + "::", + stringify!(byColorBlockNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_RULE_COLOR_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPicInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_RULE_COLOR_CFG), + "::", + stringify!(struPicInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_RULE_COLOR_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VCA_RULE_COLOR_CFG = tagNET_DVR_VCA_RULE_COLOR_CFG; +pub type LPNET_DVR_VCA_RULE_COLOR_CFG = *mut tagNET_DVR_VCA_RULE_COLOR_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VCA_RULE_COLOR_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRuleID: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VCA_RULE_COLOR_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_VCA_RULE_COLOR_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VCA_RULE_COLOR_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_RULE_COLOR_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_RULE_COLOR_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_RULE_COLOR_COND), + "::", + stringify!(byRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_RULE_COLOR_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VCA_RULE_COLOR_COND = tagNET_DVR_VCA_RULE_COLOR_COND; +pub type LPNET_DVR_VCA_RULE_COLOR_COND = *mut tagNET_DVR_VCA_RULE_COLOR_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LLDP_PORT_CFG { + pub byCardNo: BYTE, + pub byPortNo: BYTE, + pub byEnabledTx: BYTE, + pub byEnabledRx: BYTE, + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LLDP_PORT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_LLDP_PORT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LLDP_PORT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LLDP_PORT_CFG), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPortNo) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LLDP_PORT_CFG), + "::", + stringify!(byPortNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabledTx) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LLDP_PORT_CFG), + "::", + stringify!(byEnabledTx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabledRx) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LLDP_PORT_CFG), + "::", + stringify!(byEnabledRx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LLDP_PORT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LLDP_PORT_CFG = tagNET_DVR_LLDP_PORT_CFG; +pub type LPNET_DVR_LLDP_PORT_CFG = *mut tagNET_DVR_LLDP_PORT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LLDP_CFG { + pub dwSize: DWORD, + pub byEnabled: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwHoldTime: DWORD, + pub dwReiniTime: DWORD, + pub dwPacketTime: DWORD, + pub struLLDPPortCfg: [NET_DVR_LLDP_PORT_CFG; 64usize], + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LLDP_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1076usize, + concat!("Size of: ", stringify!(tagNET_DVR_LLDP_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LLDP_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LLDP_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LLDP_CFG), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LLDP_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHoldTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LLDP_CFG), + "::", + stringify!(dwHoldTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwReiniTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LLDP_CFG), + "::", + stringify!(dwReiniTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPacketTime) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LLDP_CFG), + "::", + stringify!(dwPacketTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLLDPPortCfg) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LLDP_CFG), + "::", + stringify!(struLLDPPortCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 1044usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LLDP_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_LLDP_CFG = tagNET_DVR_LLDP_CFG; +pub type LPNET_DVR_LLDP_CFG = *mut tagNET_DVR_LLDP_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CARD_PORT_INFO { + pub dwPortNo: DWORD, + pub byPortName: [BYTE; 32usize], + pub byWorkMode: BYTE, + pub byBandWidth: BYTE, + pub byPortType: BYTE, + pub byRes: [BYTE; 13usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CARD_PORT_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 52usize, + concat!("Size of: ", stringify!(tagNET_DVR_CARD_PORT_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CARD_PORT_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPortNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_INFO), + "::", + stringify!(dwPortNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPortName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_INFO), + "::", + stringify!(byPortName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkMode) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_INFO), + "::", + stringify!(byWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBandWidth) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_INFO), + "::", + stringify!(byBandWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPortType) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_INFO), + "::", + stringify!(byPortType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CARD_PORT_INFO = tagNET_DVR_CARD_PORT_INFO; +pub type LPNET_DVR_CARD_PORT_INFO = *mut tagNET_DVR_CARD_PORT_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_NETMGR_CARD_INFO { + pub byTypeName: [BYTE; 32usize], + pub bySerialNo: [BYTE; 48usize], + pub bySoftwareVersion: [BYTE; 32usize], + pub struIPAddr: NET_DVR_IPADDR, + pub dwSlotNo: DWORD, + pub byStructureType: BYTE, + pub byRes1: [BYTE; 3usize], + pub struNetPortInfo: [NET_DVR_CARD_PORT_INFO; 4usize], + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NETMGR_CARD_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 504usize, + concat!("Size of: ", stringify!(tagNET_DVR_NETMGR_CARD_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NETMGR_CARD_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTypeName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETMGR_CARD_INFO), + "::", + stringify!(byTypeName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySerialNo) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETMGR_CARD_INFO), + "::", + stringify!(bySerialNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySoftwareVersion) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETMGR_CARD_INFO), + "::", + stringify!(bySoftwareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPAddr) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETMGR_CARD_INFO), + "::", + stringify!(struIPAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSlotNo) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETMGR_CARD_INFO), + "::", + stringify!(dwSlotNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStructureType) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETMGR_CARD_INFO), + "::", + stringify!(byStructureType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 261usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETMGR_CARD_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNetPortInfo) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETMGR_CARD_INFO), + "::", + stringify!(struNetPortInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 472usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETMGR_CARD_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_NETMGR_CARD_INFO = tagNET_DVR_NETMGR_CARD_INFO; +pub type LPNET_DVR_NETMGR_CARD_INFO = *mut tagNET_DVR_NETMGR_CARD_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FUNC_CARD_INFO { + pub dwCardNo: DWORD, + pub byTypeName: [BYTE; 32usize], + pub bySerialNo: [BYTE; 48usize], + pub bySoftwareVersion: [BYTE; 32usize], + pub dwMainSlot: DWORD, + pub byStructureType: BYTE, + pub byRes1: [BYTE; 3usize], + pub struFuncPortInfo: [NET_DVR_CARD_PORT_INFO; 4usize], + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FUNC_CARD_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 364usize, + concat!("Size of: ", stringify!(tagNET_DVR_FUNC_CARD_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FUNC_CARD_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_INFO), + "::", + stringify!(dwCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTypeName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_INFO), + "::", + stringify!(byTypeName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySerialNo) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_INFO), + "::", + stringify!(bySerialNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySoftwareVersion) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_INFO), + "::", + stringify!(bySoftwareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMainSlot) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_INFO), + "::", + stringify!(dwMainSlot) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStructureType) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_INFO), + "::", + stringify!(byStructureType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 121usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFuncPortInfo) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_INFO), + "::", + stringify!(struFuncPortInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 332usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_FUNC_CARD_INFO = tagNET_DVR_FUNC_CARD_INFO; +pub type LPNET_DVR_FUNC_CARD_INFO = *mut tagNET_DVR_FUNC_CARD_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FIBER_CONVERT_BASIC { + pub dwSize: DWORD, + pub byPowerType: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwSlotNum: DWORD, + pub struNetCardInfo: NET_DVR_NETMGR_CARD_INFO, + pub struFuncCardInfo: [NET_DVR_FUNC_CARD_INFO; 32usize], + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FIBER_CONVERT_BASIC() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12228usize, + concat!("Size of: ", stringify!(tagNET_DVR_FIBER_CONVERT_BASIC)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FIBER_CONVERT_BASIC)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_BASIC), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPowerType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_BASIC), + "::", + stringify!(byPowerType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_BASIC), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSlotNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_BASIC), + "::", + stringify!(dwSlotNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNetCardInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_BASIC), + "::", + stringify!(struNetCardInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFuncCardInfo) as usize - ptr as usize }, + 516usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_BASIC), + "::", + stringify!(struFuncCardInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 12164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_BASIC), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_FIBER_CONVERT_BASIC = tagNET_DVR_FIBER_CONVERT_BASIC; +pub type LPNET_DVR_FIBER_CONVERT_BASIC = *mut tagNET_DVR_FIBER_CONVERT_BASIC; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CARD_PORT_STATE { + pub byValid: BYTE, + pub byPortType: BYTE, + pub byLinkState: BYTE, + pub byRes1: BYTE, + pub dwSendBytes: DWORD, + pub dwRecvBytes: DWORD, + pub dwRecvLostPackets: DWORD, + pub dwRecvCrcErrPackets: DWORD, + pub dwRecvFragmentPackets: DWORD, + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CARD_PORT_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_CARD_PORT_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CARD_PORT_STATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPortType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE), + "::", + stringify!(byPortType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLinkState) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE), + "::", + stringify!(byLinkState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSendBytes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE), + "::", + stringify!(dwSendBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecvBytes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE), + "::", + stringify!(dwRecvBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecvLostPackets) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE), + "::", + stringify!(dwRecvLostPackets) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecvCrcErrPackets) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE), + "::", + stringify!(dwRecvCrcErrPackets) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecvFragmentPackets) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE), + "::", + stringify!(dwRecvFragmentPackets) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CARD_PORT_STATE = tagNET_DVR_CARD_PORT_STATE; +pub type LPNET_DVR_CARD_PORT_STATE = *mut tagNET_DVR_CARD_PORT_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_NET_CARD_STATE { + pub struNetPortState: [NET_DVR_CARD_PORT_STATE; 4usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NET_CARD_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 224usize, + concat!("Size of: ", stringify!(tagNET_DVR_NET_CARD_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NET_CARD_STATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNetPortState) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NET_CARD_STATE), + "::", + stringify!(struNetPortState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NET_CARD_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_NET_CARD_STATE = tagNET_DVR_NET_CARD_STATE; +pub type LPNET_DVR_NET_CARD_STATE = *mut tagNET_DVR_NET_CARD_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FUNC_CARD_STATE { + pub byEnabled: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwCardNo: DWORD, + pub struFuncCardPortState: [NET_DVR_CARD_PORT_STATE; 4usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FUNC_CARD_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 200usize, + concat!("Size of: ", stringify!(tagNET_DVR_FUNC_CARD_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FUNC_CARD_STATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_STATE), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_STATE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_STATE), + "::", + stringify!(dwCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFuncCardPortState) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_STATE), + "::", + stringify!(struFuncCardPortState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FUNC_CARD_STATE = tagNET_DVR_FUNC_CARD_STATE; +pub type LPNET_DVR_FUNC_CARD_STATE = *mut tagNET_DVR_FUNC_CARD_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FIBER_CONVERT_STATE { + pub dwSize: DWORD, + pub struNetCardState: NET_DVR_NET_CARD_STATE, + pub struFuncCardState: [NET_DVR_FUNC_CARD_STATE; 32usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FIBER_CONVERT_STATE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 6660usize, + concat!("Size of: ", stringify!(tagNET_DVR_FIBER_CONVERT_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FIBER_CONVERT_STATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_STATE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNetCardState) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_STATE), + "::", + stringify!(struNetCardState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFuncCardState) as usize - ptr as usize }, + 228usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_STATE), + "::", + stringify!(struFuncCardState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6628usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FIBER_CONVERT_STATE = tagNET_DVR_FIBER_CONVERT_STATE; +pub type LPNET_DVR_FIBER_CONVERT_STATE = *mut tagNET_DVR_FIBER_CONVERT_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_NETMGR_CARD_INFO_V50 { + pub byMainSlotNo: BYTE, + pub byRes1: [BYTE; 3usize], + pub byTypeName: [BYTE; 32usize], + pub bySerialNo: [BYTE; 48usize], + pub bySoftwareVersion: [BYTE; 32usize], + pub byHardwareVersion: [BYTE; 32usize], + pub struIPAddr: NET_DVR_IPADDR, + pub struMask: NET_DVR_IPADDR, + pub struGateway: NET_DVR_IPADDR, + pub byMacAddr: [BYTE; 6usize], + pub bySlotNums: BYTE, + pub byStructureType: BYTE, + pub struPortInfo: [NET_DVR_CARD_PORT_INFO; 4usize], + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NETMGR_CARD_INFO_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 860usize, + concat!("Size of: ", stringify!(tagNET_DVR_NETMGR_CARD_INFO_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NETMGR_CARD_INFO_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainSlotNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETMGR_CARD_INFO_V50), + "::", + stringify!(byMainSlotNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETMGR_CARD_INFO_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTypeName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETMGR_CARD_INFO_V50), + "::", + stringify!(byTypeName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySerialNo) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETMGR_CARD_INFO_V50), + "::", + stringify!(bySerialNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySoftwareVersion) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETMGR_CARD_INFO_V50), + "::", + stringify!(bySoftwareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHardwareVersion) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETMGR_CARD_INFO_V50), + "::", + stringify!(byHardwareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPAddr) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETMGR_CARD_INFO_V50), + "::", + stringify!(struIPAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMask) as usize - ptr as usize }, + 292usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETMGR_CARD_INFO_V50), + "::", + stringify!(struMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGateway) as usize - ptr as usize }, + 436usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETMGR_CARD_INFO_V50), + "::", + stringify!(struGateway) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMacAddr) as usize - ptr as usize }, + 580usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETMGR_CARD_INFO_V50), + "::", + stringify!(byMacAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySlotNums) as usize - ptr as usize }, + 586usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETMGR_CARD_INFO_V50), + "::", + stringify!(bySlotNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStructureType) as usize - ptr as usize }, + 587usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETMGR_CARD_INFO_V50), + "::", + stringify!(byStructureType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPortInfo) as usize - ptr as usize }, + 588usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETMGR_CARD_INFO_V50), + "::", + stringify!(struPortInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 796usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NETMGR_CARD_INFO_V50), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_NETMGR_CARD_INFO_V50 = tagNET_DVR_NETMGR_CARD_INFO_V50; +pub type LPNET_DVR_NETMGR_CARD_INFO_V50 = *mut tagNET_DVR_NETMGR_CARD_INFO_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FUNC_CARD_INFO_V50 { + pub byCardNo: BYTE, + pub byMainSlotNo: BYTE, + pub byRes1: [BYTE; 2usize], + pub byTypeName: [BYTE; 32usize], + pub bySerialNo: [BYTE; 48usize], + pub bySoftwareVersion: [BYTE; 32usize], + pub byIsVerMismatch: BYTE, + pub byRes2: [BYTE; 3usize], + pub byNewestSoftwareVersion: [BYTE; 32usize], + pub byHardwareVersion: [BYTE; 32usize], + pub bySlotNums: BYTE, + pub byStructureType: BYTE, + pub byRes3: [BYTE; 2usize], + pub struPortInfo: [NET_DVR_CARD_PORT_INFO; 4usize], + pub byRes4: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FUNC_CARD_INFO_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 460usize, + concat!("Size of: ", stringify!(tagNET_DVR_FUNC_CARD_INFO_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FUNC_CARD_INFO_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_INFO_V50), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainSlotNo) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_INFO_V50), + "::", + stringify!(byMainSlotNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_INFO_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTypeName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_INFO_V50), + "::", + stringify!(byTypeName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySerialNo) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_INFO_V50), + "::", + stringify!(bySerialNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySoftwareVersion) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_INFO_V50), + "::", + stringify!(bySoftwareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsVerMismatch) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_INFO_V50), + "::", + stringify!(byIsVerMismatch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 117usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_INFO_V50), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNewestSoftwareVersion) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_INFO_V50), + "::", + stringify!(byNewestSoftwareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHardwareVersion) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_INFO_V50), + "::", + stringify!(byHardwareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySlotNums) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_INFO_V50), + "::", + stringify!(bySlotNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStructureType) as usize - ptr as usize }, + 185usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_INFO_V50), + "::", + stringify!(byStructureType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 186usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_INFO_V50), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPortInfo) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_INFO_V50), + "::", + stringify!(struPortInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes4) as usize - ptr as usize }, + 396usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_INFO_V50), + "::", + stringify!(byRes4) + ) + ); +} +pub type NET_DVR_FUNC_CARD_INFO_V50 = tagNET_DVR_FUNC_CARD_INFO_V50; +pub type LPNET_DVR_FUNC_CARD_INFO_V50 = *mut tagNET_DVR_FUNC_CARD_INFO_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REMOTE_SEND_CARD_INFO_V50 { + pub byCardNo: BYTE, + pub byMainSlotNo: BYTE, + pub byRes1: [BYTE; 2usize], + pub byTypeName: [BYTE; 32usize], + pub bySoftwareVersion: [BYTE; 32usize], + pub byIsVerMismatch: BYTE, + pub byRes2: [BYTE; 3usize], + pub byNewestSoftwareVersion: [BYTE; 32usize], + pub byHardwareVersion: [BYTE; 32usize], + pub struPortInfo: [NET_DVR_CARD_PORT_INFO; 4usize], + pub byRes3: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REMOTE_SEND_CARD_INFO_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 408usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_REMOTE_SEND_CARD_INFO_V50) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_REMOTE_SEND_CARD_INFO_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTE_SEND_CARD_INFO_V50), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainSlotNo) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTE_SEND_CARD_INFO_V50), + "::", + stringify!(byMainSlotNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTE_SEND_CARD_INFO_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTypeName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTE_SEND_CARD_INFO_V50), + "::", + stringify!(byTypeName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySoftwareVersion) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTE_SEND_CARD_INFO_V50), + "::", + stringify!(bySoftwareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsVerMismatch) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTE_SEND_CARD_INFO_V50), + "::", + stringify!(byIsVerMismatch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 69usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTE_SEND_CARD_INFO_V50), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNewestSoftwareVersion) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTE_SEND_CARD_INFO_V50), + "::", + stringify!(byNewestSoftwareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHardwareVersion) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTE_SEND_CARD_INFO_V50), + "::", + stringify!(byHardwareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPortInfo) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTE_SEND_CARD_INFO_V50), + "::", + stringify!(struPortInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 344usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTE_SEND_CARD_INFO_V50), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_REMOTE_SEND_CARD_INFO_V50 = tagNET_DVR_REMOTE_SEND_CARD_INFO_V50; +pub type LPNET_DVR_REMOTE_SEND_CARD_INFO_V50 = *mut tagNET_DVR_REMOTE_SEND_CARD_INFO_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FIBER_CONVERT_BASIC_V50 { + pub dwSize: DWORD, + pub byPowerType: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwSlotNum: DWORD, + pub struNetCardInfo: NET_DVR_NETMGR_CARD_INFO_V50, + pub struFuncCardInfo: [NET_DVR_FUNC_CARD_INFO_V50; 32usize], + pub struRemoteSendCardInfo: [NET_DVR_REMOTE_SEND_CARD_INFO_V50; 32usize], + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FIBER_CONVERT_BASIC_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28712usize, + concat!("Size of: ", stringify!(tagNET_DVR_FIBER_CONVERT_BASIC_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FIBER_CONVERT_BASIC_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_BASIC_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPowerType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_BASIC_V50), + "::", + stringify!(byPowerType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_BASIC_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSlotNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_BASIC_V50), + "::", + stringify!(dwSlotNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNetCardInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_BASIC_V50), + "::", + stringify!(struNetCardInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFuncCardInfo) as usize - ptr as usize }, + 872usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_BASIC_V50), + "::", + stringify!(struFuncCardInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRemoteSendCardInfo) as usize - ptr as usize }, + 15592usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_BASIC_V50), + "::", + stringify!(struRemoteSendCardInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 28648usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_BASIC_V50), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_FIBER_CONVERT_BASIC_V50 = tagNET_DVR_FIBER_CONVERT_BASIC_V50; +pub type LPNET_DVR_FIBER_CONVERT_BASIC_V50 = *mut tagNET_DVR_FIBER_CONVERT_BASIC_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CARD_PORT_STATE_V50 { + pub byPortNo: BYTE, + pub byPortType: BYTE, + pub byLinkState: BYTE, + pub byPortSpeed: BYTE, + pub byPortDuplexMode: BYTE, + pub byRes1: [BYTE; 3usize], + pub byPortName: [BYTE; 32usize], + pub dwSendBytes: DWORD, + pub dwSendByteSpeed: DWORD, + pub dwSendPackets: DWORD, + pub dwSendPacketSpeed: DWORD, + pub dwRecvBytes: DWORD, + pub dwRecvByteSpeed: DWORD, + pub dwRecvPackets: DWORD, + pub dwRecvPacketSpeed: DWORD, + pub dwRecvLostPackets: DWORD, + pub dwRecvCrcErrPackets: DWORD, + pub dwRecvFragmentPackets: DWORD, + pub byRes2: [BYTE; 48usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CARD_PORT_STATE_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_CARD_PORT_STATE_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CARD_PORT_STATE_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPortNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE_V50), + "::", + stringify!(byPortNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPortType) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE_V50), + "::", + stringify!(byPortType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLinkState) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE_V50), + "::", + stringify!(byLinkState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPortSpeed) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE_V50), + "::", + stringify!(byPortSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPortDuplexMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE_V50), + "::", + stringify!(byPortDuplexMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPortName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE_V50), + "::", + stringify!(byPortName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSendBytes) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE_V50), + "::", + stringify!(dwSendBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSendByteSpeed) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE_V50), + "::", + stringify!(dwSendByteSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSendPackets) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE_V50), + "::", + stringify!(dwSendPackets) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSendPacketSpeed) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE_V50), + "::", + stringify!(dwSendPacketSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecvBytes) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE_V50), + "::", + stringify!(dwRecvBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecvByteSpeed) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE_V50), + "::", + stringify!(dwRecvByteSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecvPackets) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE_V50), + "::", + stringify!(dwRecvPackets) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecvPacketSpeed) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE_V50), + "::", + stringify!(dwRecvPacketSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecvLostPackets) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE_V50), + "::", + stringify!(dwRecvLostPackets) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecvCrcErrPackets) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE_V50), + "::", + stringify!(dwRecvCrcErrPackets) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecvFragmentPackets) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE_V50), + "::", + stringify!(dwRecvFragmentPackets) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_PORT_STATE_V50), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CARD_PORT_STATE_V50 = tagNET_DVR_CARD_PORT_STATE_V50; +pub type LPNET_DVR_CARD_PORT_STATE_V50 = *mut tagNET_DVR_CARD_PORT_STATE_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_NET_CARD_STATE_V50 { + pub byMainSlotNo: BYTE, + pub byRes1: [BYTE; 3usize], + pub struPortState: [NET_DVR_CARD_PORT_STATE_V50; 4usize], + pub byRes2: [BYTE; 344usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NET_CARD_STATE_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 876usize, + concat!("Size of: ", stringify!(tagNET_DVR_NET_CARD_STATE_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NET_CARD_STATE_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainSlotNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NET_CARD_STATE_V50), + "::", + stringify!(byMainSlotNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NET_CARD_STATE_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPortState) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NET_CARD_STATE_V50), + "::", + stringify!(struPortState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 532usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NET_CARD_STATE_V50), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_NET_CARD_STATE_V50 = tagNET_DVR_NET_CARD_STATE_V50; +pub type LPNET_DVR_NET_CARD_STATE_V50 = *mut tagNET_DVR_NET_CARD_STATE_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FUNC_CARD_STATE_V50 { + pub byCardNo: BYTE, + pub byMainSlotNo: BYTE, + pub byRes1: [BYTE; 2usize], + pub struPortState: [NET_DVR_CARD_PORT_STATE_V50; 4usize], + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FUNC_CARD_STATE_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 596usize, + concat!("Size of: ", stringify!(tagNET_DVR_FUNC_CARD_STATE_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FUNC_CARD_STATE_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_STATE_V50), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainSlotNo) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_STATE_V50), + "::", + stringify!(byMainSlotNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_STATE_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPortState) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_STATE_V50), + "::", + stringify!(struPortState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 532usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FUNC_CARD_STATE_V50), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_FUNC_CARD_STATE_V50 = tagNET_DVR_FUNC_CARD_STATE_V50; +pub type LPNET_DVR_FUNC_CARD_STATE_V50 = *mut tagNET_DVR_FUNC_CARD_STATE_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REMOTE_SEND_CARD_STATE_V50 { + pub byCardNo: BYTE, + pub byMainSlotNo: BYTE, + pub byRes1: [BYTE; 2usize], + pub struPortState: [NET_DVR_CARD_PORT_STATE_V50; 4usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REMOTE_SEND_CARD_STATE_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 596usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_REMOTE_SEND_CARD_STATE_V50) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_REMOTE_SEND_CARD_STATE_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTE_SEND_CARD_STATE_V50), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMainSlotNo) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTE_SEND_CARD_STATE_V50), + "::", + stringify!(byMainSlotNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTE_SEND_CARD_STATE_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPortState) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTE_SEND_CARD_STATE_V50), + "::", + stringify!(struPortState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 532usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTE_SEND_CARD_STATE_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_REMOTE_SEND_CARD_STATE_V50 = tagNET_DVR_REMOTE_SEND_CARD_STATE_V50; +pub type LPNET_DVR_REMOTE_SEND_CARD_STATE_V50 = *mut tagNET_DVR_REMOTE_SEND_CARD_STATE_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FIBER_CONVERT_STATE_V50 { + pub dwSize: DWORD, + pub struNetCardState: NET_DVR_NET_CARD_STATE_V50, + pub struFuncCardState: [NET_DVR_FUNC_CARD_STATE_V50; 32usize], + pub struRemoteSendCardState: [NET_DVR_REMOTE_SEND_CARD_STATE_V50; 32usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FIBER_CONVERT_STATE_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 39088usize, + concat!("Size of: ", stringify!(tagNET_DVR_FIBER_CONVERT_STATE_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FIBER_CONVERT_STATE_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_STATE_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNetCardState) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_STATE_V50), + "::", + stringify!(struNetCardState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFuncCardState) as usize - ptr as usize }, + 880usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_STATE_V50), + "::", + stringify!(struFuncCardState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRemoteSendCardState) as usize - ptr as usize }, + 19952usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_STATE_V50), + "::", + stringify!(struRemoteSendCardState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 39024usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_STATE_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FIBER_CONVERT_STATE_V50 = tagNET_DVR_FIBER_CONVERT_STATE_V50; +pub type LPNET_DVR_FIBER_CONVERT_STATE_V50 = *mut tagNET_DVR_FIBER_CONVERT_STATE_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FC_PORT_TOPOLOGY { + pub dwPortNo: DWORD, + pub byPortType: BYTE, + pub byLocalWorkMode: BYTE, + pub byLocalBandWidth: BYTE, + pub byRes1: [BYTE; 1usize], + pub byPeerTypeName: [BYTE; 32usize], + pub byPeerMac: [BYTE; 6usize], + pub dwPeerPortNo: DWORD, + pub byPeerWorkMode: BYTE, + pub byPeerBandWidth: BYTE, + pub byRes2: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FC_PORT_TOPOLOGY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 84usize, + concat!("Size of: ", stringify!(tagNET_DVR_FC_PORT_TOPOLOGY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FC_PORT_TOPOLOGY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPortNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_PORT_TOPOLOGY), + "::", + stringify!(dwPortNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPortType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_PORT_TOPOLOGY), + "::", + stringify!(byPortType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalWorkMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_PORT_TOPOLOGY), + "::", + stringify!(byLocalWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalBandWidth) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_PORT_TOPOLOGY), + "::", + stringify!(byLocalBandWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_PORT_TOPOLOGY), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPeerTypeName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_PORT_TOPOLOGY), + "::", + stringify!(byPeerTypeName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPeerMac) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_PORT_TOPOLOGY), + "::", + stringify!(byPeerMac) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPeerPortNo) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_PORT_TOPOLOGY), + "::", + stringify!(dwPeerPortNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPeerWorkMode) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_PORT_TOPOLOGY), + "::", + stringify!(byPeerWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPeerBandWidth) as usize - ptr as usize }, + 53usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_PORT_TOPOLOGY), + "::", + stringify!(byPeerBandWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 54usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_PORT_TOPOLOGY), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_FC_PORT_TOPOLOGY = tagNET_DVR_FC_PORT_TOPOLOGY; +pub type LPNET_DVR_FC_PORT_TOPOLOGY = *mut tagNET_DVR_FC_PORT_TOPOLOGY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FC_CARD_TOPOLOGY { + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwCardNo: DWORD, + pub dwSlotNum: DWORD, + pub byTypeName: [BYTE; 32usize], + pub byLocalMac: [BYTE; 6usize], + pub struFCPortTopology: [NET_DVR_FC_PORT_TOPOLOGY; 4usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FC_CARD_TOPOLOGY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 420usize, + concat!("Size of: ", stringify!(tagNET_DVR_FC_CARD_TOPOLOGY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FC_CARD_TOPOLOGY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_CARD_TOPOLOGY), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_CARD_TOPOLOGY), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_CARD_TOPOLOGY), + "::", + stringify!(dwCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSlotNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_CARD_TOPOLOGY), + "::", + stringify!(dwSlotNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTypeName) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_CARD_TOPOLOGY), + "::", + stringify!(byTypeName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalMac) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_CARD_TOPOLOGY), + "::", + stringify!(byLocalMac) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFCPortTopology) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_CARD_TOPOLOGY), + "::", + stringify!(struFCPortTopology) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 388usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_CARD_TOPOLOGY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FC_CARD_TOPOLOGY = tagNET_DVR_FC_CARD_TOPOLOGY; +pub type LPNET_DVR_FC_CARD_TOPOLOGY = *mut tagNET_DVR_FC_CARD_TOPOLOGY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FIBER_CONVERT_TOPOLOGY { + pub dwSize: DWORD, + pub struFCCardTopology: [NET_DVR_FC_CARD_TOPOLOGY; 33usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FIBER_CONVERT_TOPOLOGY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 13928usize, + concat!("Size of: ", stringify!(tagNET_DVR_FIBER_CONVERT_TOPOLOGY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FIBER_CONVERT_TOPOLOGY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_TOPOLOGY), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFCCardTopology) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_TOPOLOGY), + "::", + stringify!(struFCCardTopology) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 13864usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_TOPOLOGY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FIBER_CONVERT_TOPOLOGY = tagNET_DVR_FIBER_CONVERT_TOPOLOGY; +pub type LPNET_DVR_FIBER_CONVERT_TOPOLOGY = *mut tagNET_DVR_FIBER_CONVERT_TOPOLOGY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FC_COND { + pub dwSize: DWORD, + pub dwSlotNo: DWORD, + pub dwPortNo: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FC_COND() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_FC_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FC_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSlotNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_COND), + "::", + stringify!(dwSlotNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPortNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_COND), + "::", + stringify!(dwPortNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FC_COND = tagNET_DVR_FC_COND; +pub type LPNET_DVR_FC_COND = *mut tagNET_DVR_FC_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FC_PORT_REMARKS { + pub dwSize: DWORD, + pub byLocalRemarks: [BYTE; 128usize], + pub byPeerRemarks: [BYTE; 128usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FC_PORT_REMARKS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 292usize, + concat!("Size of: ", stringify!(tagNET_DVR_FC_PORT_REMARKS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FC_PORT_REMARKS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_PORT_REMARKS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalRemarks) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_PORT_REMARKS), + "::", + stringify!(byLocalRemarks) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPeerRemarks) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_PORT_REMARKS), + "::", + stringify!(byPeerRemarks) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FC_PORT_REMARKS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FC_PORT_REMARKS = tagNET_DVR_FC_PORT_REMARKS; +pub type LPNET_DVR_FC_PORT_REMARKS = *mut tagNET_DVR_FC_PORT_REMARKS; +pub const _EN_FIBER_CONVERT_ALARM_FC_OPTICAL_PORT_LOST: _EN_FIBER_CONVERT_ALARM = 1; +pub const _EN_FIBER_CONVERT_ALARM_FC_ELECTRICAL_PORT_LOST: _EN_FIBER_CONVERT_ALARM = 2; +pub const _EN_FIBER_CONVERT_ALARM_FC_FUNC_CARD_LOST: _EN_FIBER_CONVERT_ALARM = 3; +pub const _EN_FIBER_CONVERT_ALARM_FC_CARD_DISCONNECTED: _EN_FIBER_CONVERT_ALARM = 4; +pub const _EN_FIBER_CONVERT_ALARM_FC_MAX_TEMP_LIMITED: _EN_FIBER_CONVERT_ALARM = 5; +pub const _EN_FIBER_CONVERT_ALARM_FC_MIN_TEMP_LIMITED: _EN_FIBER_CONVERT_ALARM = 6; +pub const _EN_FIBER_CONVERT_ALARM_FC_MAX_VOLTAGE_LIMITED: _EN_FIBER_CONVERT_ALARM = 7; +pub const _EN_FIBER_CONVERT_ALARM_FC_MIN_VOLTAGE_LIMITED: _EN_FIBER_CONVERT_ALARM = 8; +pub type _EN_FIBER_CONVERT_ALARM = ::std::os::raw::c_uint; +pub use self::_EN_FIBER_CONVERT_ALARM as EN_FIBER_CONVERT_ALARM; +pub const _EN_FIBER_CONVERT_NOTIFICATION_FC_OPTICAL_PORT_CONNECTED: _EN_FIBER_CONVERT_NOTIFICATION = + 1; +pub const _EN_FIBER_CONVERT_NOTIFICATION_FC_ELECTRICAL_PORT_CONNECTED: + _EN_FIBER_CONVERT_NOTIFICATION = 2; +pub const _EN_FIBER_CONVERT_NOTIFICATION_FC_FUNC_CARD_INSERT: _EN_FIBER_CONVERT_NOTIFICATION = 3; +pub const _EN_FIBER_CONVERT_NOTIFICATION_FC_CARD_CONNECTED: _EN_FIBER_CONVERT_NOTIFICATION = 4; +pub const _EN_FIBER_CONVERT_NOTIFICATION_FC_TEMP_RECOVERY: _EN_FIBER_CONVERT_NOTIFICATION = 5; +pub const _EN_FIBER_CONVERT_NOTIFICATION_FC_VOLTAGE_RECOVERY: _EN_FIBER_CONVERT_NOTIFICATION = 6; +pub type _EN_FIBER_CONVERT_NOTIFICATION = ::std::os::raw::c_uint; +pub use self::_EN_FIBER_CONVERT_NOTIFICATION as EN_FIBER_CONVERT_NOTIFICATION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FIBER_CONVERT_ALARM { + pub dwSize: DWORD, + pub dwEventType: DWORD, + pub dwEvent: DWORD, + pub bySlotNum: BYTE, + pub byCardType: BYTE, + pub byPortNo: BYTE, + pub byCurTemperature: BYTE, + pub wCurVoltage: WORD, + pub byRes1: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FIBER_CONVERT_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_DVR_FIBER_CONVERT_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FIBER_CONVERT_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEventType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_ALARM), + "::", + stringify!(dwEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEvent) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_ALARM), + "::", + stringify!(dwEvent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySlotNum) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_ALARM), + "::", + stringify!(bySlotNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardType) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_ALARM), + "::", + stringify!(byCardType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPortNo) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_ALARM), + "::", + stringify!(byPortNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCurTemperature) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_ALARM), + "::", + stringify!(byCurTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCurVoltage) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_ALARM), + "::", + stringify!(wCurVoltage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIBER_CONVERT_ALARM), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_FIBER_CONVERT_ALARM = tagNET_DVR_FIBER_CONVERT_ALARM; +pub type LPNET_DVR_FIBER_CONVERT_ALARM = *mut tagNET_DVR_FIBER_CONVERT_ALARM; +pub const _EN_SWITCH_CONVERT_ALARM_SC_OPTICAL_PORT_LOST: _EN_SWITCH_CONVERT_ALARM = 1; +pub const _EN_SWITCH_CONVERT_ALARM_SC_NETWORK_PORT_LOST: _EN_SWITCH_CONVERT_ALARM = 2; +pub const _EN_SWITCH_CONVERT_ALARM_SC_WIRELESS_SPEED_UP_EXCEPTION: _EN_SWITCH_CONVERT_ALARM = 3; +pub const _EN_SWITCH_CONVERT_ALARM_SC_WIRELESS_SHUTDOWN: _EN_SWITCH_CONVERT_ALARM = 4; +pub const _EN_SWITCH_CONVERT_ALARM_SC_DEVICE_POE_MAX: _EN_SWITCH_CONVERT_ALARM = 5; +pub const _EN_SWITCH_CONVERT_ALARM_SC_PORT_POE_POWER_OFF: _EN_SWITCH_CONVERT_ALARM = 6; +pub type _EN_SWITCH_CONVERT_ALARM = ::std::os::raw::c_uint; +pub use self::_EN_SWITCH_CONVERT_ALARM as EN_SWITCH_CONVERT_ALARM; +pub const _EN_SWICH_CONVERT_NOTIFICATION_SC_OPTICAL_PORT_CONNECTED: _EN_SWICH_CONVERT_NOTIFICATION = + 1; +pub const _EN_SWICH_CONVERT_NOTIFICATION_SC_NETWORK_PORT_CONNECTED: _EN_SWICH_CONVERT_NOTIFICATION = + 2; +pub const _EN_SWICH_CONVERT_NOTIFICATION_SC_DEVICE_POE_MAX_RECOVERY: + _EN_SWICH_CONVERT_NOTIFICATION = 3; +pub const _EN_SWICH_CONVERT_NOTIFICATION_SC_PORT_POE_POWER_ON: _EN_SWICH_CONVERT_NOTIFICATION = 4; +pub const _EN_SWICH_CONVERT_NOTIFICATION_SC_WIRELESS_CONNECTED: _EN_SWICH_CONVERT_NOTIFICATION = 5; +pub type _EN_SWICH_CONVERT_NOTIFICATION = ::std::os::raw::c_uint; +pub use self::_EN_SWICH_CONVERT_NOTIFICATION as EN_SWITCH_CONVERT_NOTIFICATION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SWITCH_CONVERT_ALARM { + pub dwSize: DWORD, + pub byPortNo: BYTE, + pub byPortNoEx: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwEventType: DWORD, + pub dwEvent: DWORD, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SWITCH_CONVERT_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_DVR_SWITCH_CONVERT_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SWITCH_CONVERT_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_CONVERT_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPortNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_CONVERT_ALARM), + "::", + stringify!(byPortNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPortNoEx) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_CONVERT_ALARM), + "::", + stringify!(byPortNoEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_CONVERT_ALARM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEventType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_CONVERT_ALARM), + "::", + stringify!(dwEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEvent) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_CONVERT_ALARM), + "::", + stringify!(dwEvent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_CONVERT_ALARM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SWITCH_CONVERT_ALARM = tagNET_DVR_SWITCH_CONVERT_ALARM; +pub type LPNET_DVR_SWITCH_CONVERT_ALARM = *mut tagNET_DVR_SWITCH_CONVERT_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SWITCH_LAMP_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byTriggerMode: BYTE, + pub byUploadPic: BYTE, + pub byRes1: BYTE, + pub dwTimeInterval: DWORD, + pub struHandleType: NET_DVR_HANDLEEXCEPTION_V30, + pub byRelRecordChan: [BYTE; 128usize], + pub struAlarmTime: [[NET_DVR_SCHEDTIME; 8usize]; 7usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SWITCH_LAMP_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 720usize, + concat!("Size of: ", stringify!(tagNET_DVR_SWITCH_LAMP_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SWITCH_LAMP_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_LAMP_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_LAMP_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTriggerMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_LAMP_CFG), + "::", + stringify!(byTriggerMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUploadPic) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_LAMP_CFG), + "::", + stringify!(byUploadPic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_LAMP_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTimeInterval) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_LAMP_CFG), + "::", + stringify!(dwTimeInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHandleType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_LAMP_CFG), + "::", + stringify!(struHandleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRelRecordChan) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_LAMP_CFG), + "::", + stringify!(byRelRecordChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmTime) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_LAMP_CFG), + "::", + stringify!(struAlarmTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 464usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_LAMP_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SWITCH_LAMP_CFG = tagNET_DVR_SWITCH_LAMP_CFG; +pub type LPNET_DVR_SWITCH_LAMP_CFG = *mut tagNET_DVR_SWITCH_LAMP_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SWITCH_LAMP_ALARM { + pub dwSize: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub struTime: NET_DVR_TIME_EX, + pub byLampStatus: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwPicDataLen: DWORD, + pub pPicData: *mut ::std::os::raw::c_char, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SWITCH_LAMP_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 240usize, + concat!("Size of: ", stringify!(tagNET_DVR_SWITCH_LAMP_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SWITCH_LAMP_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_LAMP_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_LAMP_ALARM), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_LAMP_ALARM), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLampStatus) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_LAMP_ALARM), + "::", + stringify!(byLampStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 161usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_LAMP_ALARM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicDataLen) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_LAMP_ALARM), + "::", + stringify!(dwPicDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPicData) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_LAMP_ALARM), + "::", + stringify!(pPicData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SWITCH_LAMP_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SWITCH_LAMP_ALARM = tagNET_DVR_SWITCH_LAMP_ALARM; +pub type LPNET_DVR_SWITCH_LAMP_ALARM = *mut tagNET_DVR_SWITCH_LAMP_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RS485_CASCADE_CFG { + pub dwSize: DWORD, + pub byDevAddr: BYTE, + pub byRes: [BYTE; 131usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RS485_CASCADE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_RS485_CASCADE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RS485_CASCADE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RS485_CASCADE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevAddr) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RS485_CASCADE_CFG), + "::", + stringify!(byDevAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RS485_CASCADE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RS485_CASCADE_CFG = tagNET_DVR_RS485_CASCADE_CFG; +pub type LPNET_DVR_RS485_CASCADE_CFG = *mut tagNET_DVR_RS485_CASCADE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PRIVATE_PROTOCOL_CFG { + pub dwSize: DWORD, + pub struIP: NET_DVR_IPADDR, + pub wPort: WORD, + pub byEnable: BYTE, + pub byRes: BYTE, + pub dwInterval: DWORD, + pub byServerType: BYTE, + pub byEcryptedSMSEnable: BYTE, + pub byAlgorithm: BYTE, + pub byAcauisitionMode: BYTE, + pub dwDistanceLimit: DWORD, + pub byPKModeEnable: BYTE, + pub byMACAddrReductionEnable: BYTE, + pub byRes1: [BYTE; 214usize], + pub szIndexCode: [::std::os::raw::c_char; 64usize], + pub dwSecretKeyLen: DWORD, + pub szSecretKey: [::std::os::raw::c_char; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PRIVATE_PROTOCOL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 960usize, + concat!("Size of: ", stringify!(tagNET_DVR_PRIVATE_PROTOCOL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PRIVATE_PROTOCOL_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVATE_PROTOCOL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVATE_PROTOCOL_CFG), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVATE_PROTOCOL_CFG), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVATE_PROTOCOL_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 151usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVATE_PROTOCOL_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInterval) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVATE_PROTOCOL_CFG), + "::", + stringify!(dwInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byServerType) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVATE_PROTOCOL_CFG), + "::", + stringify!(byServerType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEcryptedSMSEnable) as usize - ptr as usize }, + 157usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVATE_PROTOCOL_CFG), + "::", + stringify!(byEcryptedSMSEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlgorithm) as usize - ptr as usize }, + 158usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVATE_PROTOCOL_CFG), + "::", + stringify!(byAlgorithm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAcauisitionMode) as usize - ptr as usize }, + 159usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVATE_PROTOCOL_CFG), + "::", + stringify!(byAcauisitionMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDistanceLimit) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVATE_PROTOCOL_CFG), + "::", + stringify!(dwDistanceLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPKModeEnable) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVATE_PROTOCOL_CFG), + "::", + stringify!(byPKModeEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMACAddrReductionEnable) as usize - ptr as usize }, + 165usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVATE_PROTOCOL_CFG), + "::", + stringify!(byMACAddrReductionEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 166usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVATE_PROTOCOL_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szIndexCode) as usize - ptr as usize }, + 380usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVATE_PROTOCOL_CFG), + "::", + stringify!(szIndexCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSecretKeyLen) as usize - ptr as usize }, + 444usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVATE_PROTOCOL_CFG), + "::", + stringify!(dwSecretKeyLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szSecretKey) as usize - ptr as usize }, + 448usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PRIVATE_PROTOCOL_CFG), + "::", + stringify!(szSecretKey) + ) + ); +} +pub type NET_DVR_PRIVATE_PROTOCOL_CFG = tagNET_DVR_PRIVATE_PROTOCOL_CFG; +pub type LPNET_DVR_PRIVATE_PROTOCOL_CFG = *mut tagNET_DVR_PRIVATE_PROTOCOL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEBUG_CMD { + pub dwSize: DWORD, + pub szDebugCMD: [::std::os::raw::c_char; 1024usize], + pub byRes: [BYTE; 400usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEBUG_CMD() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1428usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEBUG_CMD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEBUG_CMD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEBUG_CMD), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDebugCMD) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEBUG_CMD), + "::", + stringify!(szDebugCMD) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1028usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEBUG_CMD), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DEBUG_CMD = tagNET_DVR_DEBUG_CMD; +pub type LPNET_DVR_DEBUG_CMD = *mut tagNET_DVR_DEBUG_CMD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEBUG_INFO { + pub dwSize: DWORD, + pub szDebugInfo: [::std::os::raw::c_char; 1400usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEBUG_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1436usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEBUG_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEBUG_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEBUG_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDebugInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEBUG_INFO), + "::", + stringify!(szDebugInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1404usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEBUG_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DEBUG_INFO = tagNET_DVR_DEBUG_INFO; +pub type LPNET_DVR_DEBUG_INFO = *mut tagNET_DVR_DEBUG_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WIRELESSSERVER { + pub dwSize: DWORD, + pub byWLanShare: BYTE, + pub byBroadcastSSID: BYTE, + pub bySecurityMode: BYTE, + pub byAlgorithmType: BYTE, + pub szSSID: [::std::os::raw::c_char; 32usize], + pub szPassWord: [::std::os::raw::c_char; 64usize], + pub byDefaultPassword: BYTE, + pub byWifiApModeType: BYTE, + pub byRes: [BYTE; 254usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIRELESSSERVER() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 360usize, + concat!("Size of: ", stringify!(tagNET_DVR_WIRELESSSERVER)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WIRELESSSERVER)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSSERVER), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWLanShare) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSSERVER), + "::", + stringify!(byWLanShare) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBroadcastSSID) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSSERVER), + "::", + stringify!(byBroadcastSSID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySecurityMode) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSSERVER), + "::", + stringify!(bySecurityMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlgorithmType) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSSERVER), + "::", + stringify!(byAlgorithmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szSSID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSSERVER), + "::", + stringify!(szSSID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szPassWord) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSSERVER), + "::", + stringify!(szPassWord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDefaultPassword) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSSERVER), + "::", + stringify!(byDefaultPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWifiApModeType) as usize - ptr as usize }, + 105usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSSERVER), + "::", + stringify!(byWifiApModeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 106usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSSERVER), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WIRELESSSERVER = tagNET_DVR_WIRELESSSERVER; +pub type LPNET_DVR_WIRELESSSERVER = *mut tagNET_DVR_WIRELESSSERVER; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CONNECTDEV_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CONNECTDEV_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_CONNECTDEV_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CONNECTDEV_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONNECTDEV_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONNECTDEV_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONNECTDEV_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CONNECTDEV_COND = tagNET_DVR_CONNECTDEV_COND; +pub type LPNET_DVR_CONNECTDEV_COND = *mut tagNET_DVR_CONNECTDEV_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CONNECTDEV_CFG { + pub dwSize: DWORD, + pub byID: BYTE, + pub byRes: [BYTE; 1usize], + pub byMACAddr: [BYTE; 6usize], + pub struDVRIP: NET_DVR_IPADDR, + pub struConnectTime: NET_DVR_TIME, + pub byRes1: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CONNECTDEV_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 436usize, + concat!("Size of: ", stringify!(tagNET_DVR_CONNECTDEV_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CONNECTDEV_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONNECTDEV_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONNECTDEV_CFG), + "::", + stringify!(byID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONNECTDEV_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMACAddr) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONNECTDEV_CFG), + "::", + stringify!(byMACAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDVRIP) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONNECTDEV_CFG), + "::", + stringify!(struDVRIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struConnectTime) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONNECTDEV_CFG), + "::", + stringify!(struConnectTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 180usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONNECTDEV_CFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_CONNECTDEV_CFG = tagNET_DVR_CONNECTDEV_CFG; +pub type LPNET_DVR_CONNECTDEV_CFG = *mut tagNET_DVR_CONNECTDEV_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GIS_SERVER_INFO { + pub byUserName: [BYTE; 32usize], + pub byPassword: [BYTE; 16usize], + pub struServerIP: NET_DVR_IPADDR, + pub wPort: WORD, + pub byRes: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GIS_SERVER_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 224usize, + concat!("Size of: ", stringify!(tagNET_DVR_GIS_SERVER_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GIS_SERVER_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUserName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_SERVER_INFO), + "::", + stringify!(byUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPassword) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_SERVER_INFO), + "::", + stringify!(byPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struServerIP) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_SERVER_INFO), + "::", + stringify!(struServerIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_SERVER_INFO), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 194usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GIS_SERVER_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GIS_SERVER_INFO = tagNET_DVR_GIS_SERVER_INFO; +pub type LPNET_DVR_GIS_SERVER_INFO = *mut tagNET_DVR_GIS_SERVER_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BASEMAP_CONTROL_CFG_V40 { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byBaseMapType: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwBaseMapNo: DWORD, + pub struGisServer: NET_DVR_GIS_SERVER_INFO, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BASEMAP_CONTROL_CFG_V40() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 300usize, + concat!("Size of: ", stringify!(tagNET_DVR_BASEMAP_CONTROL_CFG_V40)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_BASEMAP_CONTROL_CFG_V40) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_CONTROL_CFG_V40), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_CONTROL_CFG_V40), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBaseMapType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_CONTROL_CFG_V40), + "::", + stringify!(byBaseMapType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_CONTROL_CFG_V40), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBaseMapNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_CONTROL_CFG_V40), + "::", + stringify!(dwBaseMapNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGisServer) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_CONTROL_CFG_V40), + "::", + stringify!(struGisServer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 236usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASEMAP_CONTROL_CFG_V40), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_BASEMAP_CONTROL_CFG_V40 = tagNET_DVR_BASEMAP_CONTROL_CFG_V40; +pub type LPNET_DVR_BASEMAP_CONTROL_CFG_V40 = *mut tagNET_DVR_BASEMAP_CONTROL_CFG_V40; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIDEO_IMG_DB_CFG { + pub dwSize: DWORD, + pub i64Capacity: INT64, + pub i64UsedSpace: INT64, + pub i64AvailableSpace: INT64, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEO_IMG_DB_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 288usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEO_IMG_DB_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VIDEO_IMG_DB_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_IMG_DB_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i64Capacity) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_IMG_DB_CFG), + "::", + stringify!(i64Capacity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i64UsedSpace) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_IMG_DB_CFG), + "::", + stringify!(i64UsedSpace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i64AvailableSpace) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_IMG_DB_CFG), + "::", + stringify!(i64AvailableSpace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_IMG_DB_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VIDEO_IMG_DB_CFG = tagNET_DVR_VIDEO_IMG_DB_CFG; +pub type LPNET_DVR_VIDEO_IMG_DB_CFG = *mut tagNET_DVR_VIDEO_IMG_DB_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FILE_QUERY_INFO { + pub dwSize: DWORD, + pub i64FileLen: INT64, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FILE_QUERY_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 272usize, + concat!("Size of: ", stringify!(tagNET_DVR_FILE_QUERY_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FILE_QUERY_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILE_QUERY_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i64FileLen) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILE_QUERY_INFO), + "::", + stringify!(i64FileLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILE_QUERY_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FILE_QUERY_INFO = tagNET_DVR_FILE_QUERY_INFO; +pub type LPNET_DVR_FILE_QUERY_INFO = *mut tagNET_DVR_FILE_QUERY_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FILE_INFO_IN { + pub szFileID: [::std::os::raw::c_char; 128usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FILE_INFO_IN() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 384usize, + concat!("Size of: ", stringify!(tagNET_DVR_FILE_INFO_IN)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FILE_INFO_IN)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szFileID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILE_INFO_IN), + "::", + stringify!(szFileID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILE_INFO_IN), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FILE_INFO_IN = tagNET_DVR_FILE_INFO_IN; +pub type LPNET_DVR_FILE_INFO_IN = *mut tagNET_DVR_FILE_INFO_IN; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DOWNLOAD_CB_INFO { + pub dwType: DWORD, + pub pData: *mut BYTE, + pub dwDataLen: DWORD, + pub pFileInfo: *mut ::std::os::raw::c_void, + pub dwFileInfoLen: DWORD, + pub byRes: [BYTE; 120usize], +} +#[test] +fn bindgen_test_layout_tagNET_DOWNLOAD_CB_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 160usize, + concat!("Size of: ", stringify!(tagNET_DOWNLOAD_CB_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DOWNLOAD_CB_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DOWNLOAD_CB_INFO), + "::", + stringify!(dwType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pData) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DOWNLOAD_CB_INFO), + "::", + stringify!(pData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataLen) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DOWNLOAD_CB_INFO), + "::", + stringify!(dwDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pFileInfo) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DOWNLOAD_CB_INFO), + "::", + stringify!(pFileInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileInfoLen) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DOWNLOAD_CB_INFO), + "::", + stringify!(dwFileInfoLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DOWNLOAD_CB_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DOWNLOAD_CB_INFO = tagNET_DOWNLOAD_CB_INFO; +pub type LPNET_DOWNLOAD_CB_INFO = *mut tagNET_DOWNLOAD_CB_INFO; +pub type DOWNLOAD_DATA_CB = ::std::option::Option< + unsafe extern "C" fn( + lHandle: LONG, + pCBInfo: *mut NET_DOWNLOAD_CB_INFO, + pUserData: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DOWNLOAD_CB_PARAM { + pub fnDownloadDataCB: DOWNLOAD_DATA_CB, + pub pUserData: *mut ::std::os::raw::c_void, + pub i64Offset: INT64, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DOWNLOAD_CB_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 280usize, + concat!("Size of: ", stringify!(tagNET_DVR_DOWNLOAD_CB_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DOWNLOAD_CB_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fnDownloadDataCB) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOWNLOAD_CB_PARAM), + "::", + stringify!(fnDownloadDataCB) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pUserData) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOWNLOAD_CB_PARAM), + "::", + stringify!(pUserData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i64Offset) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOWNLOAD_CB_PARAM), + "::", + stringify!(i64Offset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOWNLOAD_CB_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DOWNLOAD_CB_PARAM = tagNET_DVR_DOWNLOAD_CB_PARAM; +pub type LPNET_DVR_DOWNLOAD_CB_PARAM = *mut tagNET_DVR_DOWNLOAD_CB_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_UPLOAD_DB_IN { + pub i64FileLen: INT64, + pub byContinueUpload: BYTE, + pub byRes: [BYTE; 255usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_UPLOAD_DB_IN() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_DVR_UPLOAD_DB_IN)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_UPLOAD_DB_IN)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i64FileLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_DB_IN), + "::", + stringify!(i64FileLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byContinueUpload) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_DB_IN), + "::", + stringify!(byContinueUpload) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_DB_IN), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_UPLOAD_DB_IN = tagNET_DVR_UPLOAD_DB_IN; +pub type LPNET_DVR_UPLOAD_DB_IN = *mut tagNET_DVR_UPLOAD_DB_IN; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_UPLOAD_DB_OUT { + pub szFileID: [::std::os::raw::c_char; 128usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_UPLOAD_DB_OUT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 384usize, + concat!("Size of: ", stringify!(tagNET_DVR_UPLOAD_DB_OUT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_UPLOAD_DB_OUT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szFileID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_DB_OUT), + "::", + stringify!(szFileID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_DB_OUT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_UPLOAD_DB_OUT = tagNET_DVR_UPLOAD_DB_OUT; +pub type LPNET_DVR_UPLOAD_DB_OUT = *mut tagNET_DVR_UPLOAD_DB_OUT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEND_PARAM_IN { + pub pSendData: *mut BYTE, + pub dwSendDataLen: DWORD, + pub struTime: NET_DVR_TIME_V30, + pub byPicType: BYTE, + pub byPicURL: BYTE, + pub byUploadModeling: BYTE, + pub byRes1: BYTE, + pub dwPicMangeNo: DWORD, + pub sPicName: [BYTE; 32usize], + pub dwPicDisplayTime: DWORD, + pub pSendAppendData: *mut BYTE, + pub dwSendAppendDataLen: DWORD, + pub byRes: [BYTE; 192usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEND_PARAM_IN() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 280usize, + concat!("Size of: ", stringify!(tagNET_DVR_SEND_PARAM_IN)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SEND_PARAM_IN)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pSendData) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEND_PARAM_IN), + "::", + stringify!(pSendData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSendDataLen) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEND_PARAM_IN), + "::", + stringify!(dwSendDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEND_PARAM_IN), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicType) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEND_PARAM_IN), + "::", + stringify!(byPicType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicURL) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEND_PARAM_IN), + "::", + stringify!(byPicURL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUploadModeling) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEND_PARAM_IN), + "::", + stringify!(byUploadModeling) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 27usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEND_PARAM_IN), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicMangeNo) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEND_PARAM_IN), + "::", + stringify!(dwPicMangeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPicName) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEND_PARAM_IN), + "::", + stringify!(sPicName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicDisplayTime) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEND_PARAM_IN), + "::", + stringify!(dwPicDisplayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pSendAppendData) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEND_PARAM_IN), + "::", + stringify!(pSendAppendData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSendAppendDataLen) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEND_PARAM_IN), + "::", + stringify!(dwSendAppendDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEND_PARAM_IN), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SEND_PARAM_IN = tagNET_DVR_SEND_PARAM_IN; +pub type LPNET_DVR_SEND_PARAM_IN = *mut tagNET_DVR_SEND_PARAM_IN; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DOWNLOAD_QOS { + pub dwMaxSpeed: DWORD, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DOWNLOAD_QOS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(tagNET_DVR_DOWNLOAD_QOS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DOWNLOAD_QOS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxSpeed) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOWNLOAD_QOS), + "::", + stringify!(dwMaxSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOWNLOAD_QOS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DOWNLOAD_QOS = tagNET_DVR_DOWNLOAD_QOS; +pub type LPNET_DVR_DOWNLOAD_QOS = *mut tagNET_DVR_DOWNLOAD_QOS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_UPLOAD_FILEVOLUME_PRARAM_ { + pub dwSize: DWORD, + pub byFileType: BYTE, + pub byFileVolnumeID: BYTE, + pub byArchive: BYTE, + pub byRes1: BYTE, + pub dwFileSize: DWORD, + pub szFileName: [::std::os::raw::c_char; 100usize], + pub byRes: [BYTE; 300usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_UPLOAD_FILEVOLUME_PRARAM_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 412usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_UPLOAD_FILEVOLUME_PRARAM_) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_UPLOAD_FILEVOLUME_PRARAM_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_FILEVOLUME_PRARAM_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_FILEVOLUME_PRARAM_), + "::", + stringify!(byFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileVolnumeID) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_FILEVOLUME_PRARAM_), + "::", + stringify!(byFileVolnumeID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byArchive) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_FILEVOLUME_PRARAM_), + "::", + stringify!(byArchive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_FILEVOLUME_PRARAM_), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileSize) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_FILEVOLUME_PRARAM_), + "::", + stringify!(dwFileSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szFileName) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_FILEVOLUME_PRARAM_), + "::", + stringify!(szFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_FILEVOLUME_PRARAM_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_UPLOAD_FILEVOLUME_PRARAM = tagNET_DVR_UPLOAD_FILEVOLUME_PRARAM_; +pub type LPNET_DVR_UPLOAD_FILEVOLUME_PRARAM = *mut tagNET_DVR_UPLOAD_FILEVOLUME_PRARAM_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DOWNLOAD_FILEVOLUME_PARAM_ { + pub dwSize: DWORD, + pub sUrl: [BYTE; 240usize], + pub byRes: [BYTE; 248usize], + pub fnDownloadDataCB: DOWNLOAD_DATA_CB, + pub pUserData: *mut ::std::os::raw::c_void, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DOWNLOAD_FILEVOLUME_PARAM_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_DOWNLOAD_FILEVOLUME_PARAM_) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_DOWNLOAD_FILEVOLUME_PARAM_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOWNLOAD_FILEVOLUME_PARAM_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUrl) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOWNLOAD_FILEVOLUME_PARAM_), + "::", + stringify!(sUrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 244usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOWNLOAD_FILEVOLUME_PARAM_), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fnDownloadDataCB) as usize - ptr as usize }, + 496usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOWNLOAD_FILEVOLUME_PARAM_), + "::", + stringify!(fnDownloadDataCB) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pUserData) as usize - ptr as usize }, + 504usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOWNLOAD_FILEVOLUME_PARAM_), + "::", + stringify!(pUserData) + ) + ); +} +pub type NET_DVR_DOWNLOAD_FILEVOLUME_PARAM = tagNET_DVR_DOWNLOAD_FILEVOLUME_PARAM_; +pub type LPNET_DVR_DOWNLOAD_FILEVOLUME_PARAM = *mut tagNET_DVR_DOWNLOAD_FILEVOLUME_PARAM_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FILM_MODE_CFG { + pub dwSize: DWORD, + pub byScreenType: BYTE, + pub byRes: [BYTE; 255usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FILM_MODE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(tagNET_DVR_FILM_MODE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FILM_MODE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILM_MODE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScreenType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILM_MODE_CFG), + "::", + stringify!(byScreenType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILM_MODE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FILM_MODE_CFG = tagNET_DVR_FILM_MODE_CFG; +pub type LPNET_DVR_FILM_MODE_CFG = *mut tagNET_DVR_FILM_MODE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DIRECTED_STRATEGY_CFG { + pub dwSize: DWORD, + pub byDirectedStrategyType: BYTE, + pub byRes: [BYTE; 255usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DIRECTED_STRATEGY_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(tagNET_DVR_DIRECTED_STRATEGY_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_DIRECTED_STRATEGY_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECTED_STRATEGY_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDirectedStrategyType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECTED_STRATEGY_CFG), + "::", + stringify!(byDirectedStrategyType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DIRECTED_STRATEGY_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DIRECTED_STRATEGY_CFG = tagNET_DVR_DIRECTED_STRATEGY_CFG; +pub type LPNET_DVR_DIRECTED_STRATEGY_CFG = *mut tagNET_DVR_DIRECTED_STRATEGY_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_FRAME { + pub byFrameWide: BYTE, + pub byRed: BYTE, + pub byGreen: BYTE, + pub byBlue: BYTE, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_FRAME() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(NET_DVR_FRAME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(NET_DVR_FRAME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFrameWide) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAME), + "::", + stringify!(byFrameWide) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRed) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAME), + "::", + stringify!(byRed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGreen) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAME), + "::", + stringify!(byGreen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBlue) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAME), + "::", + stringify!(byBlue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_FRAME), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_FRAME = *mut NET_DVR_FRAME; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FRAME_CFG { + pub dwSize: DWORD, + pub struTopFrame: NET_DVR_FRAME, + pub struBottomFrame: NET_DVR_FRAME, + pub struLeftFrame: NET_DVR_FRAME, + pub struRightFrame: NET_DVR_FRAME, + pub byFrameEnable: BYTE, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FRAME_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1304usize, + concat!("Size of: ", stringify!(tagNET_DVR_FRAME_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FRAME_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FRAME_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTopFrame) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FRAME_CFG), + "::", + stringify!(struTopFrame) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBottomFrame) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FRAME_CFG), + "::", + stringify!(struBottomFrame) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLeftFrame) as usize - ptr as usize }, + 524usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FRAME_CFG), + "::", + stringify!(struLeftFrame) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRightFrame) as usize - ptr as usize }, + 784usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FRAME_CFG), + "::", + stringify!(struRightFrame) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFrameEnable) as usize - ptr as usize }, + 1044usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FRAME_CFG), + "::", + stringify!(byFrameEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1045usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FRAME_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FRAME_CFG = tagNET_DVR_FRAME_CFG; +pub type LPNET_DVR_FRAME_CFG = *mut tagNET_DVR_FRAME_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FRAME_COND { + pub dwSize: DWORD, + pub dwPicNo: DWORD, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FRAME_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_DVR_FRAME_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FRAME_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FRAME_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FRAME_COND), + "::", + stringify!(dwPicNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FRAME_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FRAME_COND = tagNET_DVR_FRAME_COND; +pub type LPNET_DVR_FRAME_COND = *mut tagNET_DVR_FRAME_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUDIO_EFFECTIVE_CFG { + pub dwSize: DWORD, + pub dwCheckDelay: DWORD, + pub byThreshold: BYTE, + pub byVolumePercent: BYTE, + pub byPriority: BYTE, + pub byRes: [BYTE; 301usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUDIO_EFFECTIVE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 312usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUDIO_EFFECTIVE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AUDIO_EFFECTIVE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_EFFECTIVE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCheckDelay) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_EFFECTIVE_CFG), + "::", + stringify!(dwCheckDelay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byThreshold) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_EFFECTIVE_CFG), + "::", + stringify!(byThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVolumePercent) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_EFFECTIVE_CFG), + "::", + stringify!(byVolumePercent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPriority) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_EFFECTIVE_CFG), + "::", + stringify!(byPriority) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_EFFECTIVE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AUDIO_EFFECTIVE_CFG = tagNET_DVR_AUDIO_EFFECTIVE_CFG; +pub type LPNET_DVR_AUDIO_EFFECTIVE_CFG = *mut tagNET_DVR_AUDIO_EFFECTIVE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECORD_VIDEO_CFG { + pub dwSize: DWORD, + pub byExportType: BYTE, + pub byRes: [BYTE; 255usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECORD_VIDEO_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(tagNET_DVR_RECORD_VIDEO_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RECORD_VIDEO_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_VIDEO_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExportType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_VIDEO_CFG), + "::", + stringify!(byExportType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_VIDEO_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RECORD_VIDEO_CFG = tagNET_DVR_RECORD_VIDEO_CFG; +pub type LPNET_DVR_RECORD_VIDEO_CFG = *mut tagNET_DVR_RECORD_VIDEO_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RTMP_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byStreamType: BYTE, + pub byRes: [BYTE; 303usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RTMP_COND() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 312usize, + concat!("Size of: ", stringify!(tagNET_DVR_RTMP_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RTMP_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RTMP_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RTMP_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RTMP_COND), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RTMP_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RTMP_COND = tagNET_DVR_RTMP_COND; +pub type LPNET_DVR_RTMP_COND = *mut tagNET_DVR_RTMP_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RTMP_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwPacketLen: DWORD, + pub szURL: [::std::os::raw::c_char; 128usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RTMP_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 396usize, + concat!("Size of: ", stringify!(tagNET_DVR_RTMP_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RTMP_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RTMP_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RTMP_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RTMP_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPacketLen) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RTMP_CFG), + "::", + stringify!(dwPacketLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szURL) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RTMP_CFG), + "::", + stringify!(szURL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RTMP_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RTMP_CFG = tagNET_DVR_RTMP_CFG; +pub type LPNET_DVR_RTMP_CFG = *mut tagNET_DVR_RTMP_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECORDING_PUBLISH_FILE_CFG { + pub dwSize: DWORD, + pub byFileID: [BYTE; 128usize], + pub struStartTime: NET_DVR_TIME_EX, + pub struEndTime: NET_DVR_TIME_EX, + pub byCmdType: BYTE, + pub byFileType: BYTE, + pub byRes: [BYTE; 254usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECORDING_PUBLISH_FILE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 404usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_RECORDING_PUBLISH_FILE_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_RECORDING_PUBLISH_FILE_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_PUBLISH_FILE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_PUBLISH_FILE_CFG), + "::", + stringify!(byFileID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_PUBLISH_FILE_CFG), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_PUBLISH_FILE_CFG), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCmdType) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_PUBLISH_FILE_CFG), + "::", + stringify!(byCmdType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileType) as usize - ptr as usize }, + 149usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_PUBLISH_FILE_CFG), + "::", + stringify!(byFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_PUBLISH_FILE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RECORDING_PUBLISH_FILE_CFG = tagNET_DVR_RECORDING_PUBLISH_FILE_CFG; +pub type LPNET_DVR_RECORDING_PUBLISH_FILE_CFG = *mut tagNET_DVR_RECORDING_PUBLISH_FILE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PUBLISH_PROGRESS_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byFileID: [BYTE; 128usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PUBLISH_PROGRESS_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 392usize, + concat!("Size of: ", stringify!(tagNET_DVR_PUBLISH_PROGRESS_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PUBLISH_PROGRESS_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_PROGRESS_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_PROGRESS_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_PROGRESS_COND), + "::", + stringify!(byFileID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_PROGRESS_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PUBLISH_PROGRESS_COND = tagNET_DVR_PUBLISH_PROGRESS_COND; +pub type LPNET_DVR_PUBLISH_PROGRESS_COND = *mut tagNET_DVR_PUBLISH_PROGRESS_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PUBLISH_PROGRESS_CFG { + pub dwSize: DWORD, + pub byPublishPercent: BYTE, + pub byPublishStatus: BYTE, + pub byRes: [BYTE; 302usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PUBLISH_PROGRESS_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 308usize, + concat!("Size of: ", stringify!(tagNET_DVR_PUBLISH_PROGRESS_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PUBLISH_PROGRESS_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_PROGRESS_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPublishPercent) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_PROGRESS_CFG), + "::", + stringify!(byPublishPercent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPublishStatus) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_PROGRESS_CFG), + "::", + stringify!(byPublishStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_PROGRESS_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PUBLISH_PROGRESS_CFG = tagNET_DVR_PUBLISH_PROGRESS_CFG; +pub type LPNET_DVR_PUBLISH_PROGRESS_CFG = *mut tagNET_DVR_PUBLISH_PROGRESS_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BACKGROUND_PIC_COND { + pub dwSize: DWORD, + pub szFileID: [::std::os::raw::c_char; 128usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BACKGROUND_PIC_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 388usize, + concat!("Size of: ", stringify!(tagNET_DVR_BACKGROUND_PIC_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BACKGROUND_PIC_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKGROUND_PIC_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szFileID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKGROUND_PIC_COND), + "::", + stringify!(szFileID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKGROUND_PIC_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BACKGROUND_PIC_COND = tagNET_DVR_BACKGROUND_PIC_COND; +pub type LPNET_DVR_BACKGROUND_PIC_COND = *mut tagNET_DVR_BACKGROUND_PIC_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BACKGROUND_PIC_CFG { + pub dwSize: DWORD, + pub dwPicSize: DWORD, + pub dwPicType: DWORD, + pub wPicWidth: WORD, + pub wPicHeight: WORD, + pub byPicName: [BYTE; 128usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BACKGROUND_PIC_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 272usize, + concat!("Size of: ", stringify!(tagNET_DVR_BACKGROUND_PIC_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BACKGROUND_PIC_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKGROUND_PIC_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicSize) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKGROUND_PIC_CFG), + "::", + stringify!(dwPicSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKGROUND_PIC_CFG), + "::", + stringify!(dwPicType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPicWidth) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKGROUND_PIC_CFG), + "::", + stringify!(wPicWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPicHeight) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKGROUND_PIC_CFG), + "::", + stringify!(wPicHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicName) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKGROUND_PIC_CFG), + "::", + stringify!(byPicName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKGROUND_PIC_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BACKGROUND_PIC_CFG = tagNET_DVR_BACKGROUND_PIC_CFG; +pub type LPNET_DVR_BACKGROUND_PIC_CFG = *mut tagNET_DVR_BACKGROUND_PIC_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BACKGROUND_PIC_INFO { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub byPicID: [BYTE; 128usize], + pub byRes: [BYTE; 300usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BACKGROUND_PIC_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 436usize, + concat!("Size of: ", stringify!(tagNET_DVR_BACKGROUND_PIC_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BACKGROUND_PIC_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKGROUND_PIC_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKGROUND_PIC_INFO), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKGROUND_PIC_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKGROUND_PIC_INFO), + "::", + stringify!(byPicID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKGROUND_PIC_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BACKGROUND_PIC_INFO = tagNET_DVR_BACKGROUND_PIC_INFO; +pub type LPNET_DVR_BACKGROUND_PIC_INFO = *mut tagNET_DVR_BACKGROUND_PIC_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BACKGROUND_PIC_PRARAM { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub dwPicSize: DWORD, + pub wPicWidth: WORD, + pub wPicHeight: WORD, + pub szPicName: [::std::os::raw::c_char; 128usize], + pub byPicType: BYTE, + pub byRes: [BYTE; 303usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BACKGROUND_PIC_PRARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 448usize, + concat!("Size of: ", stringify!(tagNET_DVR_BACKGROUND_PIC_PRARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_BACKGROUND_PIC_PRARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKGROUND_PIC_PRARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKGROUND_PIC_PRARAM), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicSize) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKGROUND_PIC_PRARAM), + "::", + stringify!(dwPicSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPicWidth) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKGROUND_PIC_PRARAM), + "::", + stringify!(wPicWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPicHeight) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKGROUND_PIC_PRARAM), + "::", + stringify!(wPicHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szPicName) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKGROUND_PIC_PRARAM), + "::", + stringify!(szPicName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicType) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKGROUND_PIC_PRARAM), + "::", + stringify!(byPicType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 145usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BACKGROUND_PIC_PRARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BACKGROUND_PIC_PRARAM = tagNET_DVR_BACKGROUND_PIC_PRARAM; +pub type LPNET_DVR_BACKGROUND_PIC_PRARAM = *mut tagNET_DVR_BACKGROUND_PIC_PRARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOWPOWER { + pub dwSize: DWORD, + pub byMode: BYTE, + pub byEnabled: BYTE, + pub byRes: [BYTE; 6usize], + pub struSchedTime: NET_DVR_SCHEDULE_DAYTIME, + pub byRes1: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOWPOWER() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 284usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOWPOWER)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOWPOWER)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOWPOWER), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOWPOWER), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOWPOWER), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOWPOWER), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSchedTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOWPOWER), + "::", + stringify!(struSchedTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOWPOWER), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_LOWPOWER = tagNET_DVR_LOWPOWER; +pub type LPNET_DVR_LOWPOWER = *mut tagNET_DVR_LOWPOWER; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_POINT { + pub dwX: DWORD, + pub dwY: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_POINT() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_POINT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_POINT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwX) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POINT), + "::", + stringify!(dwX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwY) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POINT), + "::", + stringify!(dwY) + ) + ); +} +pub type NET_DVR_POINT = tagNET_DVR_POINT; +pub type LPNET_DVR_POINT = *mut tagNET_DVR_POINT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ZOOMLINKAGE { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes: [BYTE; 255usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ZOOMLINKAGE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(tagNET_DVR_ZOOMLINKAGE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ZOOMLINKAGE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ZOOMLINKAGE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ZOOMLINKAGE), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ZOOMLINKAGE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ZOOMLINKAGE = tagNET_DVR_ZOOMLINKAGE; +pub type LPNET_DVR_ZOOMLINKAGE = *mut tagNET_DVR_ZOOMLINKAGE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ONLINEUPGRADE_STATUS { + pub dwSize: DWORD, + pub byUpgradeStatus: BYTE, + pub byProgress: BYTE, + pub byRes: [BYTE; 250usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ONLINEUPGRADE_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_ONLINEUPGRADE_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ONLINEUPGRADE_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUPGRADE_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUpgradeStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUPGRADE_STATUS), + "::", + stringify!(byUpgradeStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProgress) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUPGRADE_STATUS), + "::", + stringify!(byProgress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUPGRADE_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ONLINEUPGRADE_STATUS = tagNET_DVR_ONLINEUPGRADE_STATUS; +pub type LPNET_DVR_ONLINEUPGRADE_STATUS = *mut tagNET_DVR_ONLINEUPGRADE_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FIRMWARECODE_COND { + pub dwSize: DWORD, + pub dwStartIndex: DWORD, + pub dwMaxNum: DWORD, + pub byRes: [BYTE; 52usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FIRMWARECODE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(tagNET_DVR_FIRMWARECODE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FIRMWARECODE_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIRMWARECODE_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStartIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIRMWARECODE_COND), + "::", + stringify!(dwStartIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIRMWARECODE_COND), + "::", + stringify!(dwMaxNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIRMWARECODE_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FIRMWARECODE_COND = tagNET_DVR_FIRMWARECODE_COND; +pub type LPNET_DVR_FIRMWARECODE_COND = *mut tagNET_DVR_FIRMWARECODE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FIRMWARECODE { + pub wIndex: WORD, + pub wCodeLen: WORD, + pub byCode: [BYTE; 128usize], + pub byVersion: [BYTE; 64usize], + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FIRMWARECODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 208usize, + concat!("Size of: ", stringify!(tagNET_DVR_FIRMWARECODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FIRMWARECODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wIndex) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIRMWARECODE), + "::", + stringify!(wIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCodeLen) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIRMWARECODE), + "::", + stringify!(wCodeLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIRMWARECODE), + "::", + stringify!(byCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVersion) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIRMWARECODE), + "::", + stringify!(byVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIRMWARECODE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FIRMWARECODE = tagNET_DVR_FIRMWARECODE; +pub type LPNET_DVR_FIRMWARECODE = *mut tagNET_DVR_FIRMWARECODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FIRMWARECODE_LIST { + pub dwSize: DWORD, + pub dwValidCodeNum: DWORD, + pub struCode: [NET_DVR_FIRMWARECODE; 32usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FIRMWARECODE_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 6728usize, + concat!("Size of: ", stringify!(tagNET_DVR_FIRMWARECODE_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FIRMWARECODE_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIRMWARECODE_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwValidCodeNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIRMWARECODE_LIST), + "::", + stringify!(dwValidCodeNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIRMWARECODE_LIST), + "::", + stringify!(struCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6664usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIRMWARECODE_LIST), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FIRMWARECODE_LIST = tagNET_DVR_FIRMWARECODE_LIST; +pub type LPNET_DVR_FIRMWARECODE_LIST = *mut tagNET_DVR_FIRMWARECODE_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ONLINEUPGRADE_SERVER { + pub dwSize: DWORD, + pub byConnectStatus: BYTE, + pub byRes: [BYTE; 1019usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ONLINEUPGRADE_SERVER() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1024usize, + concat!("Size of: ", stringify!(tagNET_DVR_ONLINEUPGRADE_SERVER)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ONLINEUPGRADE_SERVER)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUPGRADE_SERVER), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byConnectStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUPGRADE_SERVER), + "::", + stringify!(byConnectStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUPGRADE_SERVER), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ONLINEUPGRADE_SERVER = tagNET_DVR_ONLINEUPGRADE_SERVER; +pub type LPNET_DVR_ONLINEUPGRADE_SERVER = *mut tagNET_DVR_ONLINEUPGRADE_SERVER; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ONLINEUPGRADE_VERSION_COND { + pub dwSize: DWORD, + pub byCheckFromSvr: BYTE, + pub byRes: [BYTE; 59usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ONLINEUPGRADE_VERSION_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ONLINEUPGRADE_VERSION_COND) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ONLINEUPGRADE_VERSION_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUPGRADE_VERSION_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCheckFromSvr) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUPGRADE_VERSION_COND), + "::", + stringify!(byCheckFromSvr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUPGRADE_VERSION_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ONLINEUPGRADE_VERSION_COND = tagNET_DVR_ONLINEUPGRADE_VERSION_COND; +pub type LPNET_DVR_ONLINEUPGRADE_VERSION_COND = *mut tagNET_DVR_ONLINEUPGRADE_VERSION_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ONLINEUPGRADE_VERSION_RET { + pub dwSize: DWORD, + pub byNewVersionAvailable: BYTE, + pub byNewVersion: [BYTE; 64usize], + pub byChangeLog: [BYTE; 2048usize], + pub byRes: [BYTE; 971usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ONLINEUPGRADE_VERSION_RET() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 3088usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ONLINEUPGRADE_VERSION_RET) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ONLINEUPGRADE_VERSION_RET) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUPGRADE_VERSION_RET), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNewVersionAvailable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUPGRADE_VERSION_RET), + "::", + stringify!(byNewVersionAvailable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNewVersion) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUPGRADE_VERSION_RET), + "::", + stringify!(byNewVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChangeLog) as usize - ptr as usize }, + 69usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUPGRADE_VERSION_RET), + "::", + stringify!(byChangeLog) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2117usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUPGRADE_VERSION_RET), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ONLINEUPGRADE_VERSION_RET = tagNET_DVR_ONLINEUPGRADE_VERSION_RET; +pub type LPNET_DVR_ONLINEUPGRADE_VERSION_RET = *mut tagNET_DVR_ONLINEUPGRADE_VERSION_RET; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECOMMEN_VERSION_COND { + pub dwSize: DWORD, + pub byFirmwareCode: [BYTE; 128usize], + pub byFirmwareVersion: [BYTE; 64usize], + pub byRes: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECOMMEN_VERSION_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_RECOMMEN_VERSION_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_RECOMMEN_VERSION_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECOMMEN_VERSION_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFirmwareCode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECOMMEN_VERSION_COND), + "::", + stringify!(byFirmwareCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFirmwareVersion) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECOMMEN_VERSION_COND), + "::", + stringify!(byFirmwareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECOMMEN_VERSION_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RECOMMEN_VERSION_COND = tagNET_DVR_RECOMMEN_VERSION_COND; +pub type LPNET_DVR_RECOMMEN_VERSION_COND = *mut tagNET_DVR_RECOMMEN_VERSION_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECOMMEN_VERSION_RET { + pub dwSize: DWORD, + pub byRecommenUpgrade: BYTE, + pub byRes: [BYTE; 123usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECOMMEN_VERSION_RET() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_DVR_RECOMMEN_VERSION_RET)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RECOMMEN_VERSION_RET)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECOMMEN_VERSION_RET), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecommenUpgrade) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECOMMEN_VERSION_RET), + "::", + stringify!(byRecommenUpgrade) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECOMMEN_VERSION_RET), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RECOMMEN_VERSION_RET = tagNET_DVR_RECOMMEN_VERSION_RET; +pub type LPNET_DVR_RECOMMEN_VERSION_RET = *mut tagNET_DVR_RECOMMEN_VERSION_RET; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_THSCREEN { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byTHOSDDisplay: BYTE, + pub byRes: [BYTE; 2usize], + pub struTHOSDPoint: NET_VCA_POINT, + pub byTimingMode: BYTE, + pub byRes1: BYTE, + pub wInterval: WORD, + pub byRes2: [BYTE; 254usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_THSCREEN() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 276usize, + concat!("Size of: ", stringify!(tagNET_DVR_THSCREEN)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_THSCREEN)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THSCREEN), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THSCREEN), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTHOSDDisplay) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THSCREEN), + "::", + stringify!(byTHOSDDisplay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THSCREEN), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTHOSDPoint) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THSCREEN), + "::", + stringify!(struTHOSDPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimingMode) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THSCREEN), + "::", + stringify!(byTimingMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THSCREEN), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInterval) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THSCREEN), + "::", + stringify!(wInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THSCREEN), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_THSCREEN = tagNET_DVR_THSCREEN; +pub type LPNET_DVR_THSCREEN = *mut tagNET_DVR_THSCREEN; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SENSOR_ADJUSTMENT { + pub dwSize: DWORD, + pub byType: BYTE, + pub bySensorNo: BYTE, + pub byRes: [BYTE; 2usize], + pub iAdjustMentRange: ::std::os::raw::c_int, + pub byR: BYTE, + pub byG: BYTE, + pub byB: BYTE, + pub byRgbType: BYTE, + pub byBrightness: BYTE, + pub byRes1: [BYTE; 3usize], + pub wRex: WORD, + pub wGex: WORD, + pub wBex: WORD, + pub byRes2: [BYTE; 114usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SENSOR_ADJUSTMENT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 140usize, + concat!("Size of: ", stringify!(tagNET_DVR_SENSOR_ADJUSTMENT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SENSOR_ADJUSTMENT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensorNo) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT), + "::", + stringify!(bySensorNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iAdjustMentRange) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT), + "::", + stringify!(iAdjustMentRange) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byR) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT), + "::", + stringify!(byR) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byG) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT), + "::", + stringify!(byG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byB) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT), + "::", + stringify!(byB) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRgbType) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT), + "::", + stringify!(byRgbType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrightness) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT), + "::", + stringify!(byBrightness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRex) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT), + "::", + stringify!(wRex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wGex) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT), + "::", + stringify!(wGex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBex) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT), + "::", + stringify!(wBex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 26usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SENSOR_ADJUSTMENT = tagNET_DVR_SENSOR_ADJUSTMENT; +pub type LPNET_DVR_SENSOR_ADJUSTMENT = *mut tagNET_DVR_SENSOR_ADJUSTMENT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SENSOR_ADJUSTMENT_INFO { + pub dwSize: DWORD, + pub iPan: ::std::os::raw::c_int, + pub iTilt: ::std::os::raw::c_int, + pub iRotation: ::std::os::raw::c_int, + pub iFieldAngle: ::std::os::raw::c_int, + pub byR: BYTE, + pub byG: BYTE, + pub byB: BYTE, + pub byRgbType: BYTE, + pub byBrightness: BYTE, + pub byRes: [BYTE; 3usize], + pub wRex: WORD, + pub wGex: WORD, + pub wBex: WORD, + pub byRes1: [BYTE; 114usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SENSOR_ADJUSTMENT_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!("Size of: ", stringify!(tagNET_DVR_SENSOR_ADJUSTMENT_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iPan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT_INFO), + "::", + stringify!(iPan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iTilt) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT_INFO), + "::", + stringify!(iTilt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iRotation) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT_INFO), + "::", + stringify!(iRotation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iFieldAngle) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT_INFO), + "::", + stringify!(iFieldAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byR) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT_INFO), + "::", + stringify!(byR) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byG) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT_INFO), + "::", + stringify!(byG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byB) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT_INFO), + "::", + stringify!(byB) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRgbType) as usize - ptr as usize }, + 23usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT_INFO), + "::", + stringify!(byRgbType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrightness) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT_INFO), + "::", + stringify!(byBrightness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 25usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT_INFO), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRex) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT_INFO), + "::", + stringify!(wRex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wGex) as usize - ptr as usize }, + 30usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT_INFO), + "::", + stringify!(wGex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBex) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT_INFO), + "::", + stringify!(wBex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 34usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_ADJUSTMENT_INFO), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_SENSOR_ADJUSTMENT_INFO = tagNET_DVR_SENSOR_ADJUSTMENT_INFO; +pub type LPNET_DVR_SENSOR_ADJUSTMENT_INFO = *mut tagNET_DVR_SENSOR_ADJUSTMENT_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SENSOR_RESET { + pub dwSize: DWORD, + pub bySensorNo: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SENSOR_RESET() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_SENSOR_RESET)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SENSOR_RESET)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_RESET), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensorNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_RESET), + "::", + stringify!(bySensorNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SENSOR_RESET), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SENSOR_RESET = tagNET_DVR_SENSOR_RESET; +pub type LPNET_DVR_SENSOR_RESET = *mut tagNET_DVR_SENSOR_RESET; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PANORAMAIMAGE { + pub dwSize: DWORD, + pub byFusionMode: BYTE, + pub byPreviewMode: BYTE, + pub byRes: [BYTE; 126usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PANORAMAIMAGE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_PANORAMAIMAGE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PANORAMAIMAGE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PANORAMAIMAGE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFusionMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PANORAMAIMAGE), + "::", + stringify!(byFusionMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPreviewMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PANORAMAIMAGE), + "::", + stringify!(byPreviewMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PANORAMAIMAGE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PANORAMAIMAGE = tagNET_DVR_PANORAMAIMAGE; +pub type LPNET_DVR_PANORAMAIMAGE = *mut tagNET_DVR_PANORAMAIMAGE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RELOCATE_INFO { + pub dwSize: DWORD, + pub byTakeOverAddr: [BYTE; 64usize], + pub wPort: WORD, + pub byRes: [BYTE; 254usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RELOCATE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 324usize, + concat!("Size of: ", stringify!(tagNET_DVR_RELOCATE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RELOCATE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RELOCATE_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTakeOverAddr) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RELOCATE_INFO), + "::", + stringify!(byTakeOverAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RELOCATE_INFO), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 70usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RELOCATE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RELOCATE_INFO = tagNET_DVR_RELOCATE_INFO; +pub type LPNET_DVR_RELOCATE_INFO = *mut tagNET_DVR_RELOCATE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CONFERENCE_REGION { + pub dwSize: DWORD, + pub byEnabled: BYTE, + pub byRes1: [BYTE; 3usize], + pub struRegion: [NET_DVR_POINT; 4usize], + pub dwOutputWidth: DWORD, + pub dwOutputHeight: DWORD, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CONFERENCE_REGION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_CONFERENCE_REGION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CONFERENCE_REGION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONFERENCE_REGION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONFERENCE_REGION), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONFERENCE_REGION), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONFERENCE_REGION), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOutputWidth) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONFERENCE_REGION), + "::", + stringify!(dwOutputWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOutputHeight) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONFERENCE_REGION), + "::", + stringify!(dwOutputHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONFERENCE_REGION), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CONFERENCE_REGION = tagNET_DVR_CONFERENCE_REGION; +pub type LPNET_DVR_CONFERENCE_REGION = *mut tagNET_DVR_CONFERENCE_REGION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TERMINAL_CALL_CFG { + pub dwSize: DWORD, + pub byAnswerType: BYTE, + pub byProtocolType: BYTE, + pub byTransmissionProtocol: BYTE, + pub byRes: [BYTE; 29usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TERMINAL_CALL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_TERMINAL_CALL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TERMINAL_CALL_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_CALL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAnswerType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_CALL_CFG), + "::", + stringify!(byAnswerType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProtocolType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_CALL_CFG), + "::", + stringify!(byProtocolType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransmissionProtocol) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_CALL_CFG), + "::", + stringify!(byTransmissionProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_CALL_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TERMINAL_CALL_CFG = tagNET_DVR_TERMINAL_CALL_CFG; +pub type LPNET_DVR_TERMINAL_CALL_CFG = *mut tagNET_DVR_TERMINAL_CALL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TERMINAL_CALL_INFO { + pub byTermianlURL: [BYTE; 512usize], + pub dwCallRate: DWORD, + pub byRes: [BYTE; 124usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TERMINAL_CALL_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 640usize, + concat!("Size of: ", stringify!(tagNET_DVR_TERMINAL_CALL_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TERMINAL_CALL_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTermianlURL) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_CALL_INFO), + "::", + stringify!(byTermianlURL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCallRate) as usize - ptr as usize }, + 512usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_CALL_INFO), + "::", + stringify!(dwCallRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 516usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_CALL_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TERMINAL_CALL_INFO = tagNET_DVR_TERMINAL_CALL_INFO; +pub type LPNET_DVR_TERMINAL_CALL_INFO = *mut tagNET_DVR_TERMINAL_CALL_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TERMINAL_AUDIO_CTRL { + pub byMute: BYTE, + pub byVolume: BYTE, + pub byAudioInputDisabled: BYTE, + pub byAudioInputVolume: BYTE, + pub byRes: [BYTE; 636usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TERMINAL_AUDIO_CTRL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 640usize, + concat!("Size of: ", stringify!(tagNET_DVR_TERMINAL_AUDIO_CTRL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TERMINAL_AUDIO_CTRL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMute) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_AUDIO_CTRL), + "::", + stringify!(byMute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVolume) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_AUDIO_CTRL), + "::", + stringify!(byVolume) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioInputDisabled) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_AUDIO_CTRL), + "::", + stringify!(byAudioInputDisabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioInputVolume) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_AUDIO_CTRL), + "::", + stringify!(byAudioInputVolume) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_AUDIO_CTRL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TERMINAL_AUDIO_CTRL = tagNET_DVR_TERMINAL_AUDIO_CTRL; +pub type LPNET_DVR_TERMINAL_AUDIO_CTRL = *mut tagNET_DVR_TERMINAL_AUDIO_CTRL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HOWLING_SUPPRESSION { + pub byEnabled: BYTE, + pub byHsSensibility: BYTE, + pub byHsMode: BYTE, + pub byRes1: BYTE, + pub dwHsTime: DWORD, + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HOWLING_SUPPRESSION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_DVR_HOWLING_SUPPRESSION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HOWLING_SUPPRESSION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOWLING_SUPPRESSION), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHsSensibility) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOWLING_SUPPRESSION), + "::", + stringify!(byHsSensibility) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHsMode) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOWLING_SUPPRESSION), + "::", + stringify!(byHsMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOWLING_SUPPRESSION), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHsTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOWLING_SUPPRESSION), + "::", + stringify!(dwHsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HOWLING_SUPPRESSION), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_HOWLING_SUPPRESSION = tagNET_DVR_HOWLING_SUPPRESSION; +pub type LPNET_DVR_HOWLING_SUPPRESSION = *mut tagNET_DVR_HOWLING_SUPPRESSION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TERMINAL_INPUT_AUDIO { + pub dwChannel: DWORD, + pub byGainType: BYTE, + pub byEnableSimulate: BYTE, + pub byVolumeSimulate: BYTE, + pub byEnableDigital: BYTE, + pub byVolumeDigital: BYTE, + pub byRes1: [BYTE; 3usize], + pub struHsParam: NET_DVR_HOWLING_SUPPRESSION, + pub byRes: [BYTE; 604usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TERMINAL_INPUT_AUDIO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 640usize, + concat!("Size of: ", stringify!(tagNET_DVR_TERMINAL_INPUT_AUDIO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TERMINAL_INPUT_AUDIO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_INPUT_AUDIO), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGainType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_INPUT_AUDIO), + "::", + stringify!(byGainType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableSimulate) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_INPUT_AUDIO), + "::", + stringify!(byEnableSimulate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVolumeSimulate) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_INPUT_AUDIO), + "::", + stringify!(byVolumeSimulate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableDigital) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_INPUT_AUDIO), + "::", + stringify!(byEnableDigital) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVolumeDigital) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_INPUT_AUDIO), + "::", + stringify!(byVolumeDigital) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_INPUT_AUDIO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHsParam) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_INPUT_AUDIO), + "::", + stringify!(struHsParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_INPUT_AUDIO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TERMINAL_INPUT_AUDIO = tagNET_DVR_TERMINAL_INPUT_AUDIO; +pub type LPNET_DVR_TERMINAL_INPUT_AUDIO = *mut tagNET_DVR_TERMINAL_INPUT_AUDIO; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_TERMINAL_DETAIL_CTRL_PARAM { + pub byRes: [BYTE; 640usize], + pub struCallInfo: NET_DVR_TERMINAL_CALL_INFO, + pub struAudioCtrl: NET_DVR_TERMINAL_AUDIO_CTRL, + pub struInputAudio: NET_DVR_TERMINAL_INPUT_AUDIO, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TERMINAL_DETAIL_CTRL_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 640usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_TERMINAL_DETAIL_CTRL_PARAM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_TERMINAL_DETAIL_CTRL_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_DETAIL_CTRL_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCallInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_DETAIL_CTRL_PARAM), + "::", + stringify!(struCallInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAudioCtrl) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_DETAIL_CTRL_PARAM), + "::", + stringify!(struAudioCtrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struInputAudio) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_DETAIL_CTRL_PARAM), + "::", + stringify!(struInputAudio) + ) + ); +} +pub type NET_DVR_TERMINAL_DETAIL_CTRL_PARAM = tagNET_DVR_TERMINAL_DETAIL_CTRL_PARAM; +pub type LPNET_DVR_TERMINAL_DETAIL_CTRL_PARAM = *mut tagNET_DVR_TERMINAL_DETAIL_CTRL_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_TERMINAL_CTRL_PARAM { + pub dwSize: DWORD, + pub byOperateType: BYTE, + pub byRes1: [BYTE; 3usize], + pub struCtrlParam: NET_DVR_TERMINAL_DETAIL_CTRL_PARAM, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TERMINAL_CTRL_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 680usize, + concat!("Size of: ", stringify!(tagNET_DVR_TERMINAL_CTRL_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TERMINAL_CTRL_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_CTRL_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOperateType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_CTRL_PARAM), + "::", + stringify!(byOperateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_CTRL_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCtrlParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_CTRL_PARAM), + "::", + stringify!(struCtrlParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 648usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_CTRL_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_TERMINAL_CTRL_PARAM = tagNET_DVR_TERMINAL_CTRL_PARAM; +pub type LPNET_DVR_TERMINAL_CTRL_PARAM = *mut tagNET_DVR_TERMINAL_CTRL_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_POS_INFO_OVERLAY { + pub dwSize: DWORD, + pub byPosInfoOverlayEnable: BYTE, + pub byOverlayType: BYTE, + pub byRes: [BYTE; 126usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_POS_INFO_OVERLAY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_POS_INFO_OVERLAY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_POS_INFO_OVERLAY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POS_INFO_OVERLAY), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPosInfoOverlayEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POS_INFO_OVERLAY), + "::", + stringify!(byPosInfoOverlayEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverlayType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POS_INFO_OVERLAY), + "::", + stringify!(byOverlayType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POS_INFO_OVERLAY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_POS_INFO_OVERLAY = tagNET_DVR_POS_INFO_OVERLAY; +pub type LPNET_DVR_POS_INFO_OVERLAY = *mut tagNET_DVR_POS_INFO_OVERLAY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CAMERA_WORK_MODE { + pub dwSize: DWORD, + pub byWorkMode: BYTE, + pub byPreviewImageMode: BYTE, + pub byRes: [BYTE; 126usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CAMERA_WORK_MODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_CAMERA_WORK_MODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CAMERA_WORK_MODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_WORK_MODE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_WORK_MODE), + "::", + stringify!(byWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPreviewImageMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_WORK_MODE), + "::", + stringify!(byPreviewImageMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAMERA_WORK_MODE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CAMERA_WORK_MODE = tagNET_DVR_CAMERA_WORK_MODE; +pub type LPNET_DVR_CAMERA_WORK_MODE = *mut tagNET_DVR_CAMERA_WORK_MODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VCA_VERSION_LIST { + pub dwSize: DWORD, + pub struVcaVersion: [NET_DVR_VCA_VERSION; 64usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VCA_VERSION_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1412usize, + concat!("Size of: ", stringify!(tagNET_DVR_VCA_VERSION_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VCA_VERSION_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_VERSION_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVcaVersion) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_VERSION_LIST), + "::", + stringify!(struVcaVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1284usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VCA_VERSION_LIST), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VCA_VERSION_LIST = tagNET_DVR_VCA_VERSION_LIST; +pub type LPNET_DVR_VCA_VERSION_LIST = *mut tagNET_DVR_VCA_VERSION_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SETUP_CALIB_COND { + pub dwSize: DWORD, + pub byCalibrateType: BYTE, + pub byRes1: [BYTE; 3usize], + pub fTiltAngle: f32, + pub fHeelAngle: f32, + pub fHeight: f32, + pub struAutoCalibPolygon: NET_VCA_POLYGON, + pub byIntelligentType: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SETUP_CALIB_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 232usize, + concat!("Size of: ", stringify!(tagNET_DVR_SETUP_CALIB_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SETUP_CALIB_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUP_CALIB_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCalibrateType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUP_CALIB_COND), + "::", + stringify!(byCalibrateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUP_CALIB_COND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fTiltAngle) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUP_CALIB_COND), + "::", + stringify!(fTiltAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fHeelAngle) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUP_CALIB_COND), + "::", + stringify!(fHeelAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fHeight) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUP_CALIB_COND), + "::", + stringify!(fHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAutoCalibPolygon) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUP_CALIB_COND), + "::", + stringify!(struAutoCalibPolygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIntelligentType) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUP_CALIB_COND), + "::", + stringify!(byIntelligentType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 105usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUP_CALIB_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SETUP_CALIB_COND = tagNET_DVR_SETUP_CALIB_COND; +pub type LPNET_DVR_SETUP_CALIB_COND = *mut tagNET_DVR_SETUP_CALIB_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SETUP_CALIB_RESULT { + pub dwSize: DWORD, + pub byCalibrateType: BYTE, + pub byRes1: [BYTE; 3usize], + pub fTiltAngle: f32, + pub fHeelAngle: f32, + pub fHeight: f32, + pub struCountPolygon: NET_VCA_POLYGON, + pub struEnterDirection: NET_DVR_PDC_ENTER_DIRECTION, + pub struLine: NET_VCA_LINE, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SETUP_CALIB_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_DVR_SETUP_CALIB_RESULT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SETUP_CALIB_RESULT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUP_CALIB_RESULT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCalibrateType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUP_CALIB_RESULT), + "::", + stringify!(byCalibrateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUP_CALIB_RESULT), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fTiltAngle) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUP_CALIB_RESULT), + "::", + stringify!(fTiltAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fHeelAngle) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUP_CALIB_RESULT), + "::", + stringify!(fHeelAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fHeight) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUP_CALIB_RESULT), + "::", + stringify!(fHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCountPolygon) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUP_CALIB_RESULT), + "::", + stringify!(struCountPolygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEnterDirection) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUP_CALIB_RESULT), + "::", + stringify!(struEnterDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLine) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUP_CALIB_RESULT), + "::", + stringify!(struLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SETUP_CALIB_RESULT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SETUP_CALIB_RESULT = tagNET_DVR_SETUP_CALIB_RESULT; +pub type LPNET_DVR_SETUP_CALIB_RESULT = *mut tagNET_DVR_SETUP_CALIB_RESULT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CALL_QUERY_COND { + pub dwSize: DWORD, + pub bySearchID: [BYTE; 36usize], + pub struStartTime: NET_DVR_TIME, + pub struEndTime: NET_DVR_TIME, + pub byCallType: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwMaxResults: DWORD, + pub dwSearchPos: DWORD, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CALL_QUERY_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_CALL_QUERY_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CALL_QUERY_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_QUERY_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySearchID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_QUERY_COND), + "::", + stringify!(bySearchID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_QUERY_COND), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_QUERY_COND), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCallType) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_QUERY_COND), + "::", + stringify!(byCallType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 89usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_QUERY_COND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxResults) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_QUERY_COND), + "::", + stringify!(dwMaxResults) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSearchPos) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_QUERY_COND), + "::", + stringify!(dwSearchPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_QUERY_COND), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CALL_QUERY_COND = tagNET_DVR_CALL_QUERY_COND; +pub type LPNET_DVR_CALL_QUERY_COND = *mut tagNET_DVR_CALL_QUERY_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CALL_QUERY_SINGLE { + pub dwSize: DWORD, + pub byCallType: BYTE, + pub byRes1: [BYTE; 3usize], + pub byTerminalName: [BYTE; 64usize], + pub byAddressURL: [BYTE; 512usize], + pub struStartTime: NET_DVR_TIME, + pub struEndTime: NET_DVR_TIME, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CALL_QUERY_SINGLE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 664usize, + concat!("Size of: ", stringify!(tagNET_DVR_CALL_QUERY_SINGLE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CALL_QUERY_SINGLE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_QUERY_SINGLE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCallType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_QUERY_SINGLE), + "::", + stringify!(byCallType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_QUERY_SINGLE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTerminalName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_QUERY_SINGLE), + "::", + stringify!(byTerminalName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddressURL) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_QUERY_SINGLE), + "::", + stringify!(byAddressURL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 584usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_QUERY_SINGLE), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 608usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_QUERY_SINGLE), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 632usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_QUERY_SINGLE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CALL_QUERY_SINGLE = tagNET_DVR_CALL_QUERY_SINGLE; +pub type LPNET_DVR_CALL_QUERY_SINGLE = *mut tagNET_DVR_CALL_QUERY_SINGLE; +pub const tagCALL_QUERY_RESULT_STATUS_CALL_QUERY_RESULT_OK: tagCALL_QUERY_RESULT_STATUS = 0; +pub const tagCALL_QUERY_RESULT_STATUS_CALL_QUERY_RESULT_FAIL: tagCALL_QUERY_RESULT_STATUS = 1; +pub const tagCALL_QUERY_RESULT_STATUS_CALL_QUERY_RESULT_MORE: tagCALL_QUERY_RESULT_STATUS = 2; +pub const tagCALL_QUERY_RESULT_STATUS_CALL_QUERY_RESULT_NOMATCH: tagCALL_QUERY_RESULT_STATUS = 3; +pub const tagCALL_QUERY_RESULT_STATUS_CALL_QUERY_RESULT_PARAMERROR: tagCALL_QUERY_RESULT_STATUS = 4; +pub const tagCALL_QUERY_RESULT_STATUS_CALL_QUERY_RESULT_INVALIDTIME: tagCALL_QUERY_RESULT_STATUS = + 5; +pub const tagCALL_QUERY_RESULT_STATUS_CALL_QUERY_RESULT_TIMEOUT: tagCALL_QUERY_RESULT_STATUS = 6; +pub type tagCALL_QUERY_RESULT_STATUS = ::std::os::raw::c_uint; +pub use self::tagCALL_QUERY_RESULT_STATUS as CALL_QUERY_RESULT_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CALL_QUERY_RESULT { + pub dwSize: DWORD, + pub bySearchID: [BYTE; 36usize], + pub byStatus: BYTE, + pub byRes: [BYTE; 3usize], + pub dwCount: DWORD, + pub pResults: *mut BYTE, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CALL_QUERY_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(tagNET_DVR_CALL_QUERY_RESULT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CALL_QUERY_RESULT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_QUERY_RESULT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySearchID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_QUERY_RESULT), + "::", + stringify!(bySearchID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_QUERY_RESULT), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_QUERY_RESULT), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCount) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_QUERY_RESULT), + "::", + stringify!(dwCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pResults) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_QUERY_RESULT), + "::", + stringify!(pResults) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_QUERY_RESULT), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CALL_QUERY_RESULT = tagNET_DVR_CALL_QUERY_RESULT; +pub type LPNET_DVR_CALL_QUERY_RESULT = *mut tagNET_DVR_CALL_QUERY_RESULT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CONFERENCE_CALL_INFO { + pub byConferenceID: [BYTE; 48usize], + pub byConferenceName: [BYTE; 32usize], + pub struStartTime: NET_DVR_TIME, + pub struEndTime: NET_DVR_TIME, + pub byRes: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CONFERENCE_CALL_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 640usize, + concat!("Size of: ", stringify!(tagNET_DVR_CONFERENCE_CALL_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CONFERENCE_CALL_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byConferenceID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONFERENCE_CALL_INFO), + "::", + stringify!(byConferenceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byConferenceName) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONFERENCE_CALL_INFO), + "::", + stringify!(byConferenceName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONFERENCE_CALL_INFO), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONFERENCE_CALL_INFO), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONFERENCE_CALL_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CONFERENCE_CALL_INFO = tagNET_DVR_CONFERENCE_CALL_INFO; +pub type LPNET_DVR_CONFERENCE_CALL_INFO = *mut tagNET_DVR_CONFERENCE_CALL_INFO; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_CALL_INFO { + pub byRes: [BYTE; 640usize], + pub struTerminalCallInfo: NET_DVR_TERMINAL_CALL_INFO, + pub struConferenceCallInfo: NET_DVR_CONFERENCE_CALL_INFO, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CALL_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 640usize, + concat!("Size of: ", stringify!(tagNET_DVR_CALL_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CALL_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_INFO), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTerminalCallInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_INFO), + "::", + stringify!(struTerminalCallInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struConferenceCallInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_INFO), + "::", + stringify!(struConferenceCallInfo) + ) + ); +} +pub type NET_DVR_CALL_INFO = tagNET_DVR_CALL_INFO; +pub type LPNET_DVR_CALL_INFO = *mut tagNET_DVR_CALL_INFO; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_CONFERENCE_CALL_ALARM { + pub dwSize: DWORD, + pub byAlarmType: BYTE, + pub byCallType: BYTE, + pub byAutoAnswer: BYTE, + pub byCallStatusSwitch: BYTE, + pub struCallInfo: NET_DVR_CALL_INFO, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CONFERENCE_CALL_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 680usize, + concat!("Size of: ", stringify!(tagNET_DVR_CONFERENCE_CALL_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_CONFERENCE_CALL_ALARM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONFERENCE_CALL_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONFERENCE_CALL_ALARM), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCallType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONFERENCE_CALL_ALARM), + "::", + stringify!(byCallType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAutoAnswer) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONFERENCE_CALL_ALARM), + "::", + stringify!(byAutoAnswer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCallStatusSwitch) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONFERENCE_CALL_ALARM), + "::", + stringify!(byCallStatusSwitch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCallInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONFERENCE_CALL_ALARM), + "::", + stringify!(struCallInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 648usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CONFERENCE_CALL_ALARM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CONFERENCE_CALL_ALARM = tagNET_DVR_CONFERENCE_CALL_ALARM; +pub type LPNET_DVR_CONFERENCE_CALL_ALARM = *mut tagNET_DVR_CONFERENCE_CALL_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TERMINAL_INPUT_CFG { + pub dwSize: DWORD, + pub dwInputNo: DWORD, + pub byStreamType: BYTE, + pub byRes: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TERMINAL_INPUT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_TERMINAL_INPUT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TERMINAL_INPUT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_INPUT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInputNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_INPUT_CFG), + "::", + stringify!(dwInputNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_INPUT_CFG), + "::", + stringify!(byStreamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_INPUT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TERMINAL_INPUT_CFG = tagNET_DVR_TERMINAL_INPUT_CFG; +pub type LPNET_DVR_TERMINAL_INPUT_CFG = *mut tagNET_DVR_TERMINAL_INPUT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUDIO_STATUS { + pub byMute: BYTE, + pub byVolume: BYTE, + pub byAudioInputDisabled: BYTE, + pub byAudioInputVolume: BYTE, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUDIO_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUDIO_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AUDIO_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMute) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_STATUS), + "::", + stringify!(byMute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVolume) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_STATUS), + "::", + stringify!(byVolume) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioInputDisabled) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_STATUS), + "::", + stringify!(byAudioInputDisabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioInputVolume) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_STATUS), + "::", + stringify!(byAudioInputVolume) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AUDIO_STATUS = tagNET_DVR_AUDIO_STATUS; +pub type LPNET_DVR_AUDIO_STATUS = *mut tagNET_DVR_AUDIO_STATUS; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_TERMINAL_CONFERENCE_STATUS { + pub dwSize: DWORD, + pub byConferenceState: BYTE, + pub byConferenceType: BYTE, + pub byDualStreamEnabled: BYTE, + pub byMicPowerEnabled: BYTE, + pub dwInputNo: DWORD, + pub struCallInfo: NET_DVR_CALL_INFO, + pub struAudioStatus: NET_DVR_AUDIO_STATUS, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TERMINAL_CONFERENCE_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 720usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_TERMINAL_CONFERENCE_STATUS) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_TERMINAL_CONFERENCE_STATUS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_CONFERENCE_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byConferenceState) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_CONFERENCE_STATUS), + "::", + stringify!(byConferenceState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byConferenceType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_CONFERENCE_STATUS), + "::", + stringify!(byConferenceType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDualStreamEnabled) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_CONFERENCE_STATUS), + "::", + stringify!(byDualStreamEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMicPowerEnabled) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_CONFERENCE_STATUS), + "::", + stringify!(byMicPowerEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInputNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_CONFERENCE_STATUS), + "::", + stringify!(dwInputNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCallInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_CONFERENCE_STATUS), + "::", + stringify!(struCallInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAudioStatus) as usize - ptr as usize }, + 652usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_CONFERENCE_STATUS), + "::", + stringify!(struAudioStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 688usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_CONFERENCE_STATUS), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_TERMINAL_CONFERENCE_STATUS = tagNET_DVR_TERMINAL_CONFERENCE_STATUS; +pub type LPNET_DVR_TERMINAL_CONFERENCE_STATUS = *mut tagNET_DVR_TERMINAL_CONFERENCE_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TERMINAL_GK_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRegisterState: BYTE, + pub byRes1: [BYTE; 2usize], + pub struGKIP: NET_DVR_IPADDR, + pub wGKPort: WORD, + pub byRes2: [BYTE; 2usize], + pub byRegisterName: [BYTE; 64usize], + pub byPassword: [BYTE; 16usize], + pub byRes3: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TERMINAL_GK_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 252usize, + concat!("Size of: ", stringify!(tagNET_DVR_TERMINAL_GK_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TERMINAL_GK_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_GK_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_GK_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRegisterState) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_GK_CFG), + "::", + stringify!(byRegisterState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_GK_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGKIP) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_GK_CFG), + "::", + stringify!(struGKIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wGKPort) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_GK_CFG), + "::", + stringify!(wGKPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 154usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_GK_CFG), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRegisterName) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_GK_CFG), + "::", + stringify!(byRegisterName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPassword) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_GK_CFG), + "::", + stringify!(byPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 236usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TERMINAL_GK_CFG), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_TERMINAL_GK_CFG = tagNET_DVR_TERMINAL_GK_CFG; +pub type LPNET_DVR_TERMINAL_GK_CFG = *mut tagNET_DVR_TERMINAL_GK_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WIN_ROAM_SWITCH_CFG { + pub dwSize: DWORD, + pub byEnableRoam: BYTE, + pub byRes: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIN_ROAM_SWITCH_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_WIN_ROAM_SWITCH_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WIN_ROAM_SWITCH_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIN_ROAM_SWITCH_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableRoam) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIN_ROAM_SWITCH_CFG), + "::", + stringify!(byEnableRoam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIN_ROAM_SWITCH_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WIN_ROAM_SWITCH_CFG = tagNET_DVR_WIN_ROAM_SWITCH_CFG; +pub type LPNET_DVR_WIN_ROAM_SWITCH_CFG = *mut tagNET_DVR_WIN_ROAM_SWITCH_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_OUTPUT_CFG { + pub dwSize: DWORD, + pub byEnableZoom: BYTE, + pub byAutoCutBlackEdge: BYTE, + pub byRes1: [BYTE; 2usize], + pub wLEDWidth: WORD, + pub wLEDHeight: WORD, + pub dwRefreshRate: DWORD, + pub dwInputNO: DWORD, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_OUTPUT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 52usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_OUTPUT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LED_OUTPUT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_OUTPUT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableZoom) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_OUTPUT_CFG), + "::", + stringify!(byEnableZoom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAutoCutBlackEdge) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_OUTPUT_CFG), + "::", + stringify!(byAutoCutBlackEdge) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_OUTPUT_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLEDWidth) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_OUTPUT_CFG), + "::", + stringify!(wLEDWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLEDHeight) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_OUTPUT_CFG), + "::", + stringify!(wLEDHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRefreshRate) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_OUTPUT_CFG), + "::", + stringify!(dwRefreshRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInputNO) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_OUTPUT_CFG), + "::", + stringify!(dwInputNO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_OUTPUT_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_LED_OUTPUT_CFG = tagNET_DVR_LED_OUTPUT_CFG; +pub type LPNET_DVR_LED_OUTPUT_CFG = *mut tagNET_DVR_LED_OUTPUT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_OUTPUT_PORT_CFG { + pub dwSize: DWORD, + pub byEnabled: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwPortNum: DWORD, + pub dwPortNo: [DWORD; 32usize], + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_OUTPUT_PORT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 204usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_OUTPUT_PORT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LED_OUTPUT_PORT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_OUTPUT_PORT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_OUTPUT_PORT_CFG), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_OUTPUT_PORT_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPortNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_OUTPUT_PORT_CFG), + "::", + stringify!(dwPortNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPortNo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_OUTPUT_PORT_CFG), + "::", + stringify!(dwPortNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_OUTPUT_PORT_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_LED_OUTPUT_PORT_CFG = tagNET_DVR_LED_OUTPUT_PORT_CFG; +pub type LPNET_DVR_LED_OUTPUT_PORT_CFG = *mut tagNET_DVR_LED_OUTPUT_PORT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LINE_COLUMN_INFO { + pub wLine: WORD, + pub wColumn: WORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LINE_COLUMN_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(tagNET_DVR_LINE_COLUMN_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LINE_COLUMN_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLine) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINE_COLUMN_INFO), + "::", + stringify!(wLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wColumn) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINE_COLUMN_INFO), + "::", + stringify!(wColumn) + ) + ); +} +pub type NET_DVR_LINE_COLUMN_INFO = tagNET_DVR_LINE_COLUMN_INFO; +pub type LPNET_DVR_LINE_COLUMN_INFO = *mut tagNET_DVR_LINE_COLUMN_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_DISPLAY_AREA { + pub dwSize: DWORD, + pub struLCInfo: NET_DVR_LINE_COLUMN_INFO, + pub wWidth: WORD, + pub wHeight: WORD, + pub wRecvCardWidth: WORD, + pub wRecvCardHeigt: WORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_DISPLAY_AREA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_DISPLAY_AREA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LED_DISPLAY_AREA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_DISPLAY_AREA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLCInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_DISPLAY_AREA), + "::", + stringify!(struLCInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wWidth) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_DISPLAY_AREA), + "::", + stringify!(wWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHeight) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_DISPLAY_AREA), + "::", + stringify!(wHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRecvCardWidth) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_DISPLAY_AREA), + "::", + stringify!(wRecvCardWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRecvCardHeigt) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_DISPLAY_AREA), + "::", + stringify!(wRecvCardHeigt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_DISPLAY_AREA), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LED_DISPLAY_AREA = tagNET_DVR_LED_DISPLAY_AREA; +pub type LPNET_DVR_LED_DISPLAY_AREA = *mut tagNET_DVR_LED_DISPLAY_AREA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_RECV_CARD_INFO { + pub struPos: NET_DVR_LINE_COLUMN_INFO, + pub wRecvCardWidth: WORD, + pub wRecvCardHeigt: WORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_RECV_CARD_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_RECV_CARD_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LED_RECV_CARD_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPos) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_CARD_INFO), + "::", + stringify!(struPos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRecvCardWidth) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_CARD_INFO), + "::", + stringify!(wRecvCardWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRecvCardHeigt) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_CARD_INFO), + "::", + stringify!(wRecvCardHeigt) + ) + ); +} +pub type NET_DVR_LED_RECV_CARD_INFO = tagNET_DVR_LED_RECV_CARD_INFO; +pub type LPNET_DVR_LED_RECV_CARD_INFO = *mut tagNET_DVR_LED_RECV_CARD_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_PORT_BACKUP { + pub byEnabled: BYTE, + pub byPortMode: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwPairPort: DWORD, + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_PORT_BACKUP() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_PORT_BACKUP)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LED_PORT_BACKUP)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_PORT_BACKUP), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPortMode) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_PORT_BACKUP), + "::", + stringify!(byPortMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_PORT_BACKUP), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPairPort) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_PORT_BACKUP), + "::", + stringify!(dwPairPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_PORT_BACKUP), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_LED_PORT_BACKUP = tagNET_DVR_LED_PORT_BACKUP; +pub type LPNET_DVR_LED_PORT_BACKUP = *mut tagNET_DVR_LED_PORT_BACKUP; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_PORT_CFG { + pub dwSize: DWORD, + pub byEnabled: BYTE, + pub byRes1: [BYTE; 3usize], + pub struLedPortBackup: NET_DVR_LED_PORT_BACKUP, + pub dwRecvCardNum: DWORD, + pub struRecvCard: [NET_DVR_LED_RECV_CARD_INFO; 64usize], + pub dwPortNo: DWORD, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_PORT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 616usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_PORT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LED_PORT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_PORT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_PORT_CFG), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_PORT_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLedPortBackup) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_PORT_CFG), + "::", + stringify!(struLedPortBackup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecvCardNum) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_PORT_CFG), + "::", + stringify!(dwRecvCardNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRecvCard) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_PORT_CFG), + "::", + stringify!(struRecvCard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPortNo) as usize - ptr as usize }, + 548usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_PORT_CFG), + "::", + stringify!(dwPortNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 552usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_PORT_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_LED_PORT_CFG = tagNET_DVR_LED_PORT_CFG; +pub type LPNET_DVR_LED_PORT_CFG = *mut tagNET_DVR_LED_PORT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_DISPLAY_CFG { + pub dwSize: DWORD, + pub struColorTemp: NET_DVR_COLOR_TEMPERATURE_CFG, + pub struVoutCfg: NET_DVR_VIDEO_OUT_CFG, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_DISPLAY_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 60usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_DISPLAY_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LED_DISPLAY_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_DISPLAY_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struColorTemp) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_DISPLAY_CFG), + "::", + stringify!(struColorTemp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVoutCfg) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_DISPLAY_CFG), + "::", + stringify!(struVoutCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_DISPLAY_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LED_DISPLAY_CFG = tagNET_DVR_LED_DISPLAY_CFG; +pub type LPNET_DVR_LED_DISPLAY_CFG = *mut tagNET_DVR_LED_DISPLAY_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_TEST_SIGNAL_CFG { + pub dwSize: DWORD, + pub byEnabled: BYTE, + pub bySignalType: BYTE, + pub byRes1: [BYTE; 2usize], + pub struSignalColor: NET_DVR_RGB_COLOR, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_TEST_SIGNAL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_TEST_SIGNAL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LED_TEST_SIGNAL_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_TEST_SIGNAL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_TEST_SIGNAL_CFG), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySignalType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_TEST_SIGNAL_CFG), + "::", + stringify!(bySignalType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_TEST_SIGNAL_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSignalColor) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_TEST_SIGNAL_CFG), + "::", + stringify!(struSignalColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_TEST_SIGNAL_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LED_TEST_SIGNAL_CFG = tagNET_DVR_LED_TEST_SIGNAL_CFG; +pub type LPNET_DVR_LED_TEST_SIGNAL_CFG = *mut tagNET_DVR_LED_TEST_SIGNAL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_NOSIGNAL_CFG { + pub dwSize: DWORD, + pub byNoSignalMode: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_NOSIGNAL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_NOSIGNAL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LED_NOSIGNAL_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_NOSIGNAL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNoSignalMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_NOSIGNAL_CFG), + "::", + stringify!(byNoSignalMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_NOSIGNAL_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LED_NOSIGNAL_CFG = tagNET_DVR_LED_NOSIGNAL_CFG; +pub type LPNET_DVR_LED_NOSIGNAL_CFG = *mut tagNET_DVR_LED_NOSIGNAL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_INPUT_CFG { + pub dwSize: DWORD, + pub dwResolutionWidth: DWORD, + pub dwResolutionHeight: DWORD, + pub dwRefreshRate: DWORD, + pub struVgaCfg: NET_DVR_SCREEN_VGA_CFG, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_INPUT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_INPUT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LED_INPUT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_INPUT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwResolutionWidth) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_INPUT_CFG), + "::", + stringify!(dwResolutionWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwResolutionHeight) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_INPUT_CFG), + "::", + stringify!(dwResolutionHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRefreshRate) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_INPUT_CFG), + "::", + stringify!(dwRefreshRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVgaCfg) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_INPUT_CFG), + "::", + stringify!(struVgaCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_INPUT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LED_INPUT_CFG = tagNET_DVR_LED_INPUT_CFG; +pub type LPNET_DVR_LED_INPUT_CFG = *mut tagNET_DVR_LED_INPUT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_RECV_CARD_CFG_COND { + pub dwSize: DWORD, + pub dwOutputNo: DWORD, + pub struPosStart: NET_DVR_LINE_COLUMN_INFO, + pub struPosEnd: NET_DVR_LINE_COLUMN_INFO, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_RECV_CARD_CFG_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_RECV_CARD_CFG_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_LED_RECV_CARD_CFG_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_CARD_CFG_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOutputNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_CARD_CFG_COND), + "::", + stringify!(dwOutputNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPosStart) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_CARD_CFG_COND), + "::", + stringify!(struPosStart) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPosEnd) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_CARD_CFG_COND), + "::", + stringify!(struPosEnd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_CARD_CFG_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LED_RECV_CARD_CFG_COND = tagNET_DVR_LED_RECV_CARD_CFG_COND; +pub type LPNET_DVR_LED_RECV_CARD_CFG_COND = *mut tagNET_DVR_LED_RECV_CARD_CFG_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_GAMMA_CFG_COND { + pub dwSize: DWORD, + pub dwOutputNo: DWORD, + pub struPosStart: NET_DVR_LINE_COLUMN_INFO, + pub struPosEnd: NET_DVR_LINE_COLUMN_INFO, + pub byGammaType: BYTE, + pub byRes: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_GAMMA_CFG_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_GAMMA_CFG_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LED_GAMMA_CFG_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_GAMMA_CFG_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOutputNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_GAMMA_CFG_COND), + "::", + stringify!(dwOutputNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPosStart) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_GAMMA_CFG_COND), + "::", + stringify!(struPosStart) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPosEnd) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_GAMMA_CFG_COND), + "::", + stringify!(struPosEnd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGammaType) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_GAMMA_CFG_COND), + "::", + stringify!(byGammaType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_GAMMA_CFG_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LED_GAMMA_CFG_COND = tagNET_DVR_LED_GAMMA_CFG_COND; +pub type LPNET_DVR_LED_GAMMA_CFG_COND = *mut tagNET_DVR_LED_GAMMA_CFG_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_GAMMA_CFG { + pub dwSize: DWORD, + pub wGammaValue: [WORD; 256usize], + pub byGammaModel: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_GAMMA_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 644usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_GAMMA_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LED_GAMMA_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_GAMMA_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wGammaValue) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_GAMMA_CFG), + "::", + stringify!(wGammaValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGammaModel) as usize - ptr as usize }, + 516usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_GAMMA_CFG), + "::", + stringify!(byGammaModel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 517usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_GAMMA_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LED_GAMMA_CFG = tagNET_DVR_LED_GAMMA_CFG; +pub type LPNET_DVR_LED_GAMMA_CFG = *mut tagNET_DVR_LED_GAMMA_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_CLOCK_CFG { + pub dwDclkRate: DWORD, + pub dwGclkRate: DWORD, + pub dwGclkCountNum: DWORD, + pub byDclkDutyRatio: BYTE, + pub byDclkPhase: BYTE, + pub byGclkNum: BYTE, + pub byRes: [BYTE; 17usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_CLOCK_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_CLOCK_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LED_CLOCK_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDclkRate) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_CLOCK_CFG), + "::", + stringify!(dwDclkRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGclkRate) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_CLOCK_CFG), + "::", + stringify!(dwGclkRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGclkCountNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_CLOCK_CFG), + "::", + stringify!(dwGclkCountNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDclkDutyRatio) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_CLOCK_CFG), + "::", + stringify!(byDclkDutyRatio) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDclkPhase) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_CLOCK_CFG), + "::", + stringify!(byDclkPhase) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGclkNum) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_CLOCK_CFG), + "::", + stringify!(byGclkNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_CLOCK_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LED_CLOCK_CFG = tagNET_DVR_LED_CLOCK_CFG; +pub type LPNET_DVR_LED_CLOCK_CFG = *mut tagNET_DVR_LED_CLOCK_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_RECV_CFG { + pub dwSize: DWORD, + pub struClockCfg: NET_DVR_LED_CLOCK_CFG, + pub byGrayLevel: BYTE, + pub byRefreshRate: BYTE, + pub byLineScanNum: BYTE, + pub byRefreshCompleteGrayNum: BYTE, + pub dwHBlank: DWORD, + pub dwAfterglowCtrl: DWORD, + pub dwLineFeedTime: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_RECV_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 180usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_RECV_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LED_RECV_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struClockCfg) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_CFG), + "::", + stringify!(struClockCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGrayLevel) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_CFG), + "::", + stringify!(byGrayLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRefreshRate) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_CFG), + "::", + stringify!(byRefreshRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLineScanNum) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_CFG), + "::", + stringify!(byLineScanNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRefreshCompleteGrayNum) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_CFG), + "::", + stringify!(byRefreshCompleteGrayNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHBlank) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_CFG), + "::", + stringify!(dwHBlank) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAfterglowCtrl) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_CFG), + "::", + stringify!(dwAfterglowCtrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLineFeedTime) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_CFG), + "::", + stringify!(dwLineFeedTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LED_RECV_CFG = tagNET_DVR_LED_RECV_CFG; +pub type LPNET_DVR_LED_RECV_CFG = *mut tagNET_DVR_LED_RECV_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_REGISTOR_VALUE { + pub byChip1High: BYTE, + pub byChip1Low: BYTE, + pub byChip2High: BYTE, + pub byChip2Low: BYTE, + pub byChip3High: BYTE, + pub byChip3Low: BYTE, + pub byChip4High: BYTE, + pub byChip4Low: BYTE, + pub byChip5High: BYTE, + pub byChip5Low: BYTE, + pub byChip6High: BYTE, + pub byChip6Low: BYTE, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_REGISTOR_VALUE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_REGISTOR_VALUE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LED_REGISTOR_VALUE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChip1High) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_REGISTOR_VALUE), + "::", + stringify!(byChip1High) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChip1Low) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_REGISTOR_VALUE), + "::", + stringify!(byChip1Low) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChip2High) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_REGISTOR_VALUE), + "::", + stringify!(byChip2High) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChip2Low) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_REGISTOR_VALUE), + "::", + stringify!(byChip2Low) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChip3High) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_REGISTOR_VALUE), + "::", + stringify!(byChip3High) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChip3Low) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_REGISTOR_VALUE), + "::", + stringify!(byChip3Low) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChip4High) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_REGISTOR_VALUE), + "::", + stringify!(byChip4High) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChip4Low) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_REGISTOR_VALUE), + "::", + stringify!(byChip4Low) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChip5High) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_REGISTOR_VALUE), + "::", + stringify!(byChip5High) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChip5Low) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_REGISTOR_VALUE), + "::", + stringify!(byChip5Low) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChip6High) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_REGISTOR_VALUE), + "::", + stringify!(byChip6High) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChip6Low) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_REGISTOR_VALUE), + "::", + stringify!(byChip6Low) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_REGISTOR_VALUE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LED_REGISTOR_VALUE = tagNET_DVR_LED_REGISTOR_VALUE; +pub type LPNET_DVR_LED_REGISTOR_VALUE = *mut tagNET_DVR_LED_REGISTOR_VALUE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_RECV_REGISTOR { + pub byEliminateGhostShadowLevel: BYTE, + pub byEliminateShadowy: BYTE, + pub byGrayEqualize1: BYTE, + pub byGrayEqualize2: BYTE, + pub byEnableGrayUniformity: BYTE, + pub byDisableHGrayStripes: BYTE, + pub byGhostShadowEnhancedMode1: BYTE, + pub byGhostShadowEnhancedMode2: BYTE, + pub byClearBadPoint: BYTE, + pub byEnableSelfDefineRegistor: BYTE, + pub byRes1: [BYTE; 2usize], + pub struRegistorValue: NET_DVR_LED_REGISTOR_VALUE, + pub byEnabledExGradientOptimition: BYTE, + pub byDummyGClockCycle: BYTE, + pub byDummyGClockHighTime: BYTE, + pub byFirstGClockExtendedTime: BYTE, + pub byRes: [BYTE; 28usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_RECV_REGISTOR() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 60usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_RECV_REGISTOR)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LED_RECV_REGISTOR)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEliminateGhostShadowLevel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_REGISTOR), + "::", + stringify!(byEliminateGhostShadowLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEliminateShadowy) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_REGISTOR), + "::", + stringify!(byEliminateShadowy) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGrayEqualize1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_REGISTOR), + "::", + stringify!(byGrayEqualize1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGrayEqualize2) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_REGISTOR), + "::", + stringify!(byGrayEqualize2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableGrayUniformity) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_REGISTOR), + "::", + stringify!(byEnableGrayUniformity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDisableHGrayStripes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_REGISTOR), + "::", + stringify!(byDisableHGrayStripes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGhostShadowEnhancedMode1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_REGISTOR), + "::", + stringify!(byGhostShadowEnhancedMode1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGhostShadowEnhancedMode2) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_REGISTOR), + "::", + stringify!(byGhostShadowEnhancedMode2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byClearBadPoint) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_REGISTOR), + "::", + stringify!(byClearBadPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableSelfDefineRegistor) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_REGISTOR), + "::", + stringify!(byEnableSelfDefineRegistor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_REGISTOR), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegistorValue) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_REGISTOR), + "::", + stringify!(struRegistorValue) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byEnabledExGradientOptimition) as usize - ptr as usize + }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_REGISTOR), + "::", + stringify!(byEnabledExGradientOptimition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDummyGClockCycle) as usize - ptr as usize }, + 29usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_REGISTOR), + "::", + stringify!(byDummyGClockCycle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDummyGClockHighTime) as usize - ptr as usize }, + 30usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_REGISTOR), + "::", + stringify!(byDummyGClockHighTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFirstGClockExtendedTime) as usize - ptr as usize }, + 31usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_REGISTOR), + "::", + stringify!(byFirstGClockExtendedTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_REGISTOR), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LED_RECV_REGISTOR = tagNET_DVR_LED_RECV_REGISTOR; +pub type LPNET_DVR_LED_RECV_REGISTOR = *mut tagNET_DVR_LED_RECV_REGISTOR; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_RECV_ADVANCED_CFG { + pub dwSize: DWORD, + pub struFirstRegistor: NET_DVR_LED_RECV_REGISTOR, + pub struSecondRegistor: NET_DVR_LED_RECV_REGISTOR, + pub struThirdRegistor: NET_DVR_LED_RECV_REGISTOR, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_RECV_ADVANCED_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 248usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_RECV_ADVANCED_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_LED_RECV_ADVANCED_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_ADVANCED_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFirstRegistor) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_ADVANCED_CFG), + "::", + stringify!(struFirstRegistor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSecondRegistor) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_ADVANCED_CFG), + "::", + stringify!(struSecondRegistor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struThirdRegistor) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_ADVANCED_CFG), + "::", + stringify!(struThirdRegistor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_RECV_ADVANCED_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_LED_RECV_ADVANCED_CFG = tagNET_DVR_LED_RECV_ADVANCED_CFG; +pub type LPNET_DVR_LED_RECV_ADVANCED_CFG = *mut tagNET_DVR_LED_RECV_ADVANCED_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_CHECK_COND { + pub dwSize: DWORD, + pub dwOutputNo: DWORD, + pub struPosStart: NET_DVR_LINE_COLUMN_INFO, + pub byStartPosType: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwXCoordinate: DWORD, + pub dwYCoordinate: DWORD, + pub dwWidth: DWORD, + pub dwHeight: DWORD, + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_CHECK_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_CHECK_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LED_CHECK_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_CHECK_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOutputNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_CHECK_COND), + "::", + stringify!(dwOutputNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPosStart) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_CHECK_COND), + "::", + stringify!(struPosStart) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStartPosType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_CHECK_COND), + "::", + stringify!(byStartPosType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_CHECK_COND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwXCoordinate) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_CHECK_COND), + "::", + stringify!(dwXCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwYCoordinate) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_CHECK_COND), + "::", + stringify!(dwYCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWidth) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_CHECK_COND), + "::", + stringify!(dwWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHeight) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_CHECK_COND), + "::", + stringify!(dwHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_CHECK_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LED_CHECK_COND = tagNET_DVR_LED_CHECK_COND; +pub type LPNET_DVR_LED_CHECK_COND = *mut tagNET_DVR_LED_CHECK_COND; +pub const ADDR_QUERY_TYPE_QUERYSVR_BY_COUNTRYID: ADDR_QUERY_TYPE = 0; +pub const ADDR_QUERY_TYPE_QUERYSVR_BY_SERVERTYPE: ADDR_QUERY_TYPE = 1; +pub const ADDR_QUERY_TYPE_QUERYDEV_BY_NICKNAME_DDNS: ADDR_QUERY_TYPE = 2; +pub const ADDR_QUERY_TYPE_QUERYDEV_BY_SERIAL_DDNS: ADDR_QUERY_TYPE = 3; +pub const ADDR_QUERY_TYPE_CHECKDEV_BY_NICKNAME_DDNS: ADDR_QUERY_TYPE = 4; +pub const ADDR_QUERY_TYPE_CHECKDEV_BY_SERIAL_DDNS: ADDR_QUERY_TYPE = 5; +pub const ADDR_QUERY_TYPE_QUERYDEV_BY_NICKNAME_IPSERVER: ADDR_QUERY_TYPE = 6; +pub const ADDR_QUERY_TYPE_QUERYDEV_BY_SERIAL_IPSERVER: ADDR_QUERY_TYPE = 7; +pub type ADDR_QUERY_TYPE = ::std::os::raw::c_uint; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_QUERY_COUNTRYID_COND { + pub wCountryID: WORD, + pub szSvrAddr: [::std::os::raw::c_char; 64usize], + pub szClientVersion: [::std::os::raw::c_char; 64usize], + pub byRes: [BYTE; 382usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_QUERY_COUNTRYID_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(tagNET_DVR_QUERY_COUNTRYID_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_QUERY_COUNTRYID_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCountryID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_COUNTRYID_COND), + "::", + stringify!(wCountryID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szSvrAddr) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_COUNTRYID_COND), + "::", + stringify!(szSvrAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szClientVersion) as usize - ptr as usize }, + 66usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_COUNTRYID_COND), + "::", + stringify!(szClientVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 130usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_COUNTRYID_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_QUERY_COUNTRYID_COND = tagNET_DVR_QUERY_COUNTRYID_COND; +pub type LPNET_DVR_QUERY_COUNTRYID_COND = *mut tagNET_DVR_QUERY_COUNTRYID_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_QUERY_COUNTRYID_RET { + pub szResolveSvrAddr: [::std::os::raw::c_char; 64usize], + pub szAlarmSvrAddr: [::std::os::raw::c_char; 64usize], + pub byRes: [BYTE; 1024usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_QUERY_COUNTRYID_RET() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1152usize, + concat!("Size of: ", stringify!(tagNET_DVR_QUERY_COUNTRYID_RET)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_QUERY_COUNTRYID_RET)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szResolveSvrAddr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_COUNTRYID_RET), + "::", + stringify!(szResolveSvrAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szAlarmSvrAddr) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_COUNTRYID_RET), + "::", + stringify!(szAlarmSvrAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_COUNTRYID_RET), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_QUERY_COUNTRYID_RET = tagNET_DVR_QUERY_COUNTRYID_RET; +pub type LPNET_DVR_QUERY_COUNTRYID_RET = *mut tagNET_DVR_QUERY_COUNTRYID_RET; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_QUERY_SERVERTYPE_COND { + pub wSvrType: WORD, + pub szSvrAddr: [::std::os::raw::c_char; 64usize], + pub szClientVersion: [::std::os::raw::c_char; 64usize], + pub byRes: [BYTE; 382usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_QUERY_SERVERTYPE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(tagNET_DVR_QUERY_SERVERTYPE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_QUERY_SERVERTYPE_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSvrType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_SERVERTYPE_COND), + "::", + stringify!(wSvrType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szSvrAddr) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_SERVERTYPE_COND), + "::", + stringify!(szSvrAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szClientVersion) as usize - ptr as usize }, + 66usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_SERVERTYPE_COND), + "::", + stringify!(szClientVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 130usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_SERVERTYPE_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_QUERY_SERVERTYPE_COND = tagNET_DVR_QUERY_SERVERTYPE_COND; +pub type LPNET_DVR_QUERY_SERVERTYPE_COND = *mut tagNET_DVR_QUERY_SERVERTYPE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_QUERY_SERVERTYPE_RET { + pub szSvrAddr: [::std::os::raw::c_char; 64usize], + pub wSvrPort: WORD, + pub byRes: [BYTE; 446usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_QUERY_SERVERTYPE_RET() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(tagNET_DVR_QUERY_SERVERTYPE_RET)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_QUERY_SERVERTYPE_RET)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szSvrAddr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_SERVERTYPE_RET), + "::", + stringify!(szSvrAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSvrPort) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_SERVERTYPE_RET), + "::", + stringify!(wSvrPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 66usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_SERVERTYPE_RET), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_QUERY_SERVERTYPE_RET = tagNET_DVR_QUERY_SERVERTYPE_RET; +pub type LPNET_DVR_QUERY_SERVERTYPE_RET = *mut tagNET_DVR_QUERY_SERVERTYPE_RET; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_QUERY_DDNS_COND { + pub szResolveSvrAddr: [::std::os::raw::c_char; 64usize], + pub szDevNickName: [::std::os::raw::c_char; 64usize], + pub szDevSerial: [::std::os::raw::c_char; 48usize], + pub szClientVersion: [::std::os::raw::c_char; 64usize], + pub byRes: [BYTE; 272usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_QUERY_DDNS_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(tagNET_DVR_QUERY_DDNS_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_QUERY_DDNS_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szResolveSvrAddr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_DDNS_COND), + "::", + stringify!(szResolveSvrAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDevNickName) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_DDNS_COND), + "::", + stringify!(szDevNickName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDevSerial) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_DDNS_COND), + "::", + stringify!(szDevSerial) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szClientVersion) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_DDNS_COND), + "::", + stringify!(szClientVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_DDNS_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_QUERY_DDNS_COND = tagNET_DVR_QUERY_DDNS_COND; +pub type LPNET_DVR_QUERY_DDNS_COND = *mut tagNET_DVR_QUERY_DDNS_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_QUERY_DDNS_RET { + pub szDevIP: [::std::os::raw::c_char; 48usize], + pub wCmdPort: WORD, + pub wHttpPort: WORD, + pub byRes: [BYTE; 460usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_QUERY_DDNS_RET() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(tagNET_DVR_QUERY_DDNS_RET)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_QUERY_DDNS_RET)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDevIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_DDNS_RET), + "::", + stringify!(szDevIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCmdPort) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_DDNS_RET), + "::", + stringify!(wCmdPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHttpPort) as usize - ptr as usize }, + 50usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_DDNS_RET), + "::", + stringify!(wHttpPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_DDNS_RET), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_QUERY_DDNS_RET = tagNET_DVR_QUERY_DDNS_RET; +pub type LPNET_DVR_QUERY_DDNS_RET = *mut tagNET_DVR_QUERY_DDNS_RET; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CHECK_DDNS_RET { + pub byDevStatus: BYTE, + pub byRes1: BYTE, + pub struQueryRet: NET_DVR_QUERY_DDNS_RET, + pub wRegionID: WORD, + pub byRes2: [BYTE; 508usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CHECK_DDNS_RET() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1024usize, + concat!("Size of: ", stringify!(tagNET_DVR_CHECK_DDNS_RET)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CHECK_DDNS_RET)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevStatus) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHECK_DDNS_RET), + "::", + stringify!(byDevStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHECK_DDNS_RET), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struQueryRet) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHECK_DDNS_RET), + "::", + stringify!(struQueryRet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRegionID) as usize - ptr as usize }, + 514usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHECK_DDNS_RET), + "::", + stringify!(wRegionID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 516usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHECK_DDNS_RET), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CHECK_DDNS_RET = tagNET_DVR_CHECK_DDNS_RET; +pub type LPNET_DVR_CHECK_DDNS_RET = *mut tagNET_DVR_CHECK_DDNS_RET; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_QUERY_IPSERVER_COND { + pub szResolveSvrAddr: [::std::os::raw::c_char; 64usize], + pub wResolveSvrPort: WORD, + pub szDevNickName: [::std::os::raw::c_char; 64usize], + pub szDevSerial: [::std::os::raw::c_char; 48usize], + pub byRes: [BYTE; 334usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_QUERY_IPSERVER_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(tagNET_DVR_QUERY_IPSERVER_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_QUERY_IPSERVER_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szResolveSvrAddr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_IPSERVER_COND), + "::", + stringify!(szResolveSvrAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wResolveSvrPort) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_IPSERVER_COND), + "::", + stringify!(wResolveSvrPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDevNickName) as usize - ptr as usize }, + 66usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_IPSERVER_COND), + "::", + stringify!(szDevNickName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDevSerial) as usize - ptr as usize }, + 130usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_IPSERVER_COND), + "::", + stringify!(szDevSerial) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 178usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_IPSERVER_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_QUERY_IPSERVER_COND = tagNET_DVR_QUERY_IPSERVER_COND; +pub type LPNET_DVR_QUERY_IPSERVER_COND = *mut tagNET_DVR_QUERY_IPSERVER_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_QUERY_IPSERVER_RET { + pub szDevIP: [::std::os::raw::c_char; 48usize], + pub wCmdPort: WORD, + pub byRes: [BYTE; 462usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_QUERY_IPSERVER_RET() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(tagNET_DVR_QUERY_IPSERVER_RET)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_QUERY_IPSERVER_RET)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDevIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_IPSERVER_RET), + "::", + stringify!(szDevIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCmdPort) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_IPSERVER_RET), + "::", + stringify!(wCmdPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 50usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_QUERY_IPSERVER_RET), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_QUERY_IPSERVER_RET = tagNET_DVR_QUERY_IPSERVER_RET; +pub type LPNET_DVR_QUERY_IPSERVER_RET = *mut tagNET_DVR_QUERY_IPSERVER_RET; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CURRENT_VALID_PORT { + pub dwSize: DWORD, + pub wHTTPPort: WORD, + pub byRes: [BYTE; 122usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CURRENT_VALID_PORT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_DVR_CURRENT_VALID_PORT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CURRENT_VALID_PORT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CURRENT_VALID_PORT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHTTPPort) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CURRENT_VALID_PORT), + "::", + stringify!(wHTTPPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CURRENT_VALID_PORT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CURRENT_VALID_PORT = tagNET_DVR_CURRENT_VALID_PORT; +pub type LPNET_DVR_CURRENT_VALID_PORT = *mut tagNET_DVR_CURRENT_VALID_PORT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUDIO_CHANNEL { + pub dwChannelNum: DWORD, + pub byres: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUDIO_CHANNEL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 36usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUDIO_CHANNEL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AUDIO_CHANNEL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannelNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_CHANNEL), + "::", + stringify!(dwChannelNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byres) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUDIO_CHANNEL), + "::", + stringify!(byres) + ) + ); +} +pub type NET_DVR_AUDIO_CHANNEL = tagNET_DVR_AUDIO_CHANNEL; +pub type LPNET_DVR_AUDIO_CHANNEL = *mut tagNET_DVR_AUDIO_CHANNEL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_STREAMENCRYPTION_COND { + pub dwSize: DWORD, + pub dwChan: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STREAMENCRYPTION_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_STREAMENCRYPTION_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_STREAMENCRYPTION_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAMENCRYPTION_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAMENCRYPTION_COND), + "::", + stringify!(dwChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAMENCRYPTION_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_STREAMENCRYPTION_COND = tagNET_DVR_STREAMENCRYPTION_COND; +pub type LPNET_DVR_STREAMENCRYPTION_COND = *mut tagNET_DVR_STREAMENCRYPTION_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_STREAMENCRYPTION_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes: [BYTE; 255usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STREAMENCRYPTION_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(tagNET_DVR_STREAMENCRYPTION_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_STREAMENCRYPTION_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAMENCRYPTION_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAMENCRYPTION_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAMENCRYPTION_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_STREAMENCRYPTION_CFG = tagNET_DVR_STREAMENCRYPTION_CFG; +pub type LPNET_DVR_STREAMENCRYPTION_CFG = *mut tagNET_DVR_STREAMENCRYPTION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REVISE_GPS_CFG { + pub dwSize: DWORD, + pub byLatitudeType: BYTE, + pub byLongitudeType: BYTE, + pub byMode: BYTE, + pub byRes: BYTE, + pub struLatitude: NET_DVR_LLI_PARAM, + pub struLongitude: NET_DVR_LLI_PARAM, + pub byRes1: [BYTE; 300usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REVISE_GPS_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 332usize, + concat!("Size of: ", stringify!(tagNET_DVR_REVISE_GPS_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_REVISE_GPS_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REVISE_GPS_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLatitudeType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REVISE_GPS_CFG), + "::", + stringify!(byLatitudeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLongitudeType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REVISE_GPS_CFG), + "::", + stringify!(byLongitudeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REVISE_GPS_CFG), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REVISE_GPS_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLatitude) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REVISE_GPS_CFG), + "::", + stringify!(struLatitude) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLongitude) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REVISE_GPS_CFG), + "::", + stringify!(struLongitude) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REVISE_GPS_CFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_REVISE_GPS_CFG = tagNET_DVR_REVISE_GPS_CFG; +pub type LPNET_DVR_REVISE_GPS_CFG = *mut tagNET_DVR_REVISE_GPS_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PDC_RECOMMEND { + pub dwSize: DWORD, + pub wWidth: WORD, + pub byRes: [BYTE; 126usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PDC_RECOMMEND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_PDC_RECOMMEND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PDC_RECOMMEND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RECOMMEND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wWidth) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RECOMMEND), + "::", + stringify!(wWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PDC_RECOMMEND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PDC_RECOMMEND = tagNET_DVR_PDC_RECOMMEND; +pub type LPNET_DVR_PDC_RECOMMEND = *mut tagNET_DVR_PDC_RECOMMEND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FLASHSTORAGE_REMOVE { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byPDCRemoveEnable: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FLASHSTORAGE_REMOVE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_FLASHSTORAGE_REMOVE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FLASHSTORAGE_REMOVE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLASHSTORAGE_REMOVE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLASHSTORAGE_REMOVE), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPDCRemoveEnable) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLASHSTORAGE_REMOVE), + "::", + stringify!(byPDCRemoveEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FLASHSTORAGE_REMOVE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FLASHSTORAGE_REMOVE = tagNET_DVR_FLASHSTORAGE_REMOVE; +pub type LPNET_DVR_FLASHSTORAGE_REMOVE = *mut tagNET_DVR_FLASHSTORAGE_REMOVE; +#[doc = "DS-TME4XX���ƻ����� Begin"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PARKING_CARD { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub szCardNo: [::std::os::raw::c_char; 48usize], + pub byCardType: BYTE, + pub byCardStatus: BYTE, + pub byChargeRuleID: BYTE, + pub byDelete: BYTE, + pub struStartTime: NET_DVR_TIME_V30, + pub struEndTime: NET_DVR_TIME_V30, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PARKING_CARD() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 212usize, + concat!("Size of: ", stringify!(tagNET_DVR_PARKING_CARD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PARKING_CARD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_CARD), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_CARD), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szCardNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_CARD), + "::", + stringify!(szCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardType) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_CARD), + "::", + stringify!(byCardType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardStatus) as usize - ptr as usize }, + 57usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_CARD), + "::", + stringify!(byCardStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChargeRuleID) as usize - ptr as usize }, + 58usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_CARD), + "::", + stringify!(byChargeRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDelete) as usize - ptr as usize }, + 59usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_CARD), + "::", + stringify!(byDelete) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_CARD), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_CARD), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_CARD), + "::", + stringify!(byRes) + ) + ); +} +#[doc = "DS-TME4XX���ƻ����� Begin"] +pub type NET_DVR_PARKING_CARD = tagNET_DVR_PARKING_CARD; +#[doc = "DS-TME4XX���ƻ����� Begin"] +pub type LPNET_DVR_PARKING_CARD = *mut tagNET_DVR_PARKING_CARD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GATE_CARDINFO { + pub dwSize: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub szCardNo: [::std::os::raw::c_char; 48usize], + pub szPassVehicleID: [::std::os::raw::c_char; 32usize], + pub szInVehicleID: [::std::os::raw::c_char; 32usize], + pub struSwipeTime: NET_DVR_TIME_V30, + pub struCardTime: NET_DVR_TIME_V30, + pub byLetPass: BYTE, + pub byCardType: BYTE, + pub byRes: [BYTE; 126usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GATE_CARDINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 424usize, + concat!("Size of: ", stringify!(tagNET_DVR_GATE_CARDINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GATE_CARDINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CARDINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CARDINFO), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CARDINFO), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CARDINFO), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szCardNo) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CARDINFO), + "::", + stringify!(szCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szPassVehicleID) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CARDINFO), + "::", + stringify!(szPassVehicleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szInVehicleID) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CARDINFO), + "::", + stringify!(szInVehicleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSwipeTime) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CARDINFO), + "::", + stringify!(struSwipeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCardTime) as usize - ptr as usize }, + 284usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CARDINFO), + "::", + stringify!(struCardTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLetPass) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CARDINFO), + "::", + stringify!(byLetPass) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardType) as usize - ptr as usize }, + 297usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CARDINFO), + "::", + stringify!(byCardType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 298usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CARDINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GATE_CARDINFO = tagNET_DVR_GATE_CARDINFO; +pub type LPNET_DVR_GATE_CARDINFO = *mut tagNET_DVR_GATE_CARDINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _tagNET_LOADING_DOCK_OPERATEINFO_ { + pub dwSize: DWORD, + pub byAbsTime: [BYTE; 32usize], + pub byParkingNo: [BYTE; 16usize], + pub dwIndex: DWORD, + pub sLicense: [::std::os::raw::c_char; 16usize], + pub byCurrentWorkerNumber: BYTE, + pub byCurrentGoodsLoadingRate: BYTE, + pub byDoorsStatus: BYTE, + pub byRes1: BYTE, + pub dwBackPicDataLength: DWORD, + pub pBackPicDataBuffer: *mut BYTE, + pub dwChannel: DWORD, + pub byRes: [BYTE; 508usize], +} +#[test] +fn bindgen_test_layout__tagNET_LOADING_DOCK_OPERATEINFO_() { + const UNINIT: ::std::mem::MaybeUninit<_tagNET_LOADING_DOCK_OPERATEINFO_> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_tagNET_LOADING_DOCK_OPERATEINFO_>(), + 600usize, + concat!("Size of: ", stringify!(_tagNET_LOADING_DOCK_OPERATEINFO_)) + ); + assert_eq!( + ::std::mem::align_of::<_tagNET_LOADING_DOCK_OPERATEINFO_>(), + 8usize, + concat!( + "Alignment of ", + stringify!(_tagNET_LOADING_DOCK_OPERATEINFO_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_LOADING_DOCK_OPERATEINFO_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAbsTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_LOADING_DOCK_OPERATEINFO_), + "::", + stringify!(byAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParkingNo) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_LOADING_DOCK_OPERATEINFO_), + "::", + stringify!(byParkingNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwIndex) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_LOADING_DOCK_OPERATEINFO_), + "::", + stringify!(dwIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLicense) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_LOADING_DOCK_OPERATEINFO_), + "::", + stringify!(sLicense) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCurrentWorkerNumber) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_LOADING_DOCK_OPERATEINFO_), + "::", + stringify!(byCurrentWorkerNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCurrentGoodsLoadingRate) as usize - ptr as usize }, + 73usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_LOADING_DOCK_OPERATEINFO_), + "::", + stringify!(byCurrentGoodsLoadingRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDoorsStatus) as usize - ptr as usize }, + 74usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_LOADING_DOCK_OPERATEINFO_), + "::", + stringify!(byDoorsStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 75usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_LOADING_DOCK_OPERATEINFO_), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBackPicDataLength) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_LOADING_DOCK_OPERATEINFO_), + "::", + stringify!(dwBackPicDataLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBackPicDataBuffer) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_LOADING_DOCK_OPERATEINFO_), + "::", + stringify!(pBackPicDataBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_LOADING_DOCK_OPERATEINFO_), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_LOADING_DOCK_OPERATEINFO_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_LOADING_DOCK_OPERATEINFO = _tagNET_LOADING_DOCK_OPERATEINFO_; +pub type LPNET_LOADING_DOCK_OPERATEINFO = *mut _tagNET_LOADING_DOCK_OPERATEINFO_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GATE_CHARGEINFO { + pub dwSize: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub sLicense: [::std::os::raw::c_char; 16usize], + pub szCardNo: [::std::os::raw::c_char; 48usize], + pub struEntranceTime: NET_DVR_TIME_V30, + pub struDepartureTime: NET_DVR_TIME_V30, + pub szDepartureID: [::std::os::raw::c_char; 32usize], + pub szEntranceID: [::std::os::raw::c_char; 32usize], + pub dwTotalCost: DWORD, + pub szOperateName: [::std::os::raw::c_char; 32usize], + pub byChargeRuleId: BYTE, + pub byVehicleType: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GATE_CHARGEINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 480usize, + concat!("Size of: ", stringify!(tagNET_DVR_GATE_CHARGEINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GATE_CHARGEINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CHARGEINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CHARGEINFO), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CHARGEINFO), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CHARGEINFO), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLicense) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CHARGEINFO), + "::", + stringify!(sLicense) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szCardNo) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CHARGEINFO), + "::", + stringify!(szCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEntranceTime) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CHARGEINFO), + "::", + stringify!(struEntranceTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDepartureTime) as usize - ptr as usize }, + 236usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CHARGEINFO), + "::", + stringify!(struDepartureTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDepartureID) as usize - ptr as usize }, + 248usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CHARGEINFO), + "::", + stringify!(szDepartureID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szEntranceID) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CHARGEINFO), + "::", + stringify!(szEntranceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotalCost) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CHARGEINFO), + "::", + stringify!(dwTotalCost) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szOperateName) as usize - ptr as usize }, + 316usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CHARGEINFO), + "::", + stringify!(szOperateName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChargeRuleId) as usize - ptr as usize }, + 348usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CHARGEINFO), + "::", + stringify!(byChargeRuleId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleType) as usize - ptr as usize }, + 349usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CHARGEINFO), + "::", + stringify!(byVehicleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 350usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GATE_CHARGEINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GATE_CHARGEINFO = tagNET_DVR_GATE_CHARGEINFO; +pub type LPNET_DVR_GATE_CHARGEINFO = *mut tagNET_DVR_GATE_CHARGEINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PARKING_CARD_CTRL_PARAM { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byCardType: BYTE, + pub byDeleteALL: BYTE, + pub byRes: [BYTE; 62usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PARKING_CARD_CTRL_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_PARKING_CARD_CTRL_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PARKING_CARD_CTRL_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_CARD_CTRL_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_CARD_CTRL_PARAM), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_CARD_CTRL_PARAM), + "::", + stringify!(byCardType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeleteALL) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_CARD_CTRL_PARAM), + "::", + stringify!(byDeleteALL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_CARD_CTRL_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PARKING_CARD_CTRL_PARAM = tagNET_DVR_PARKING_CARD_CTRL_PARAM; +pub type LPNET_DVR_PARKING_CARD_CTRL_PARAM = *mut tagNET_DVR_PARKING_CARD_CTRL_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TME_VEHICLE_RESULT_ { + pub dwSize: DWORD, + pub wLaneid: WORD, + pub byCamLaneId: BYTE, + pub byRes1: BYTE, + pub dwChanIndex: DWORD, + pub struPlateInfo: NET_DVR_PLATE_INFO, + pub struVehicleInfo: NET_DVR_VEHICLE_INFO, + pub byMonitoringSiteID: [BYTE; 48usize], + pub byDeviceID: [BYTE; 48usize], + pub byDir: BYTE, + pub byRes2: BYTE, + pub wBackList: WORD, + pub dwPicNum: DWORD, + pub struPicInfo: [NET_ITS_PICTURE_INFO; 4usize], + pub byPassVehicleID: [BYTE; 32usize], + pub byCardNo: [BYTE; 48usize], + pub bySwipeTime: [BYTE; 32usize], + pub dwCharge: DWORD, + pub byHistory: BYTE, + pub byLetPass: BYTE, + pub byRes3: [BYTE; 186usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TME_VEHICLE_RESULT_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 984usize, + concat!("Size of: ", stringify!(tagNET_DVR_TME_VEHICLE_RESULT_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TME_VEHICLE_RESULT_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TME_VEHICLE_RESULT_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLaneid) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TME_VEHICLE_RESULT_), + "::", + stringify!(wLaneid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCamLaneId) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TME_VEHICLE_RESULT_), + "::", + stringify!(byCamLaneId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TME_VEHICLE_RESULT_), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChanIndex) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TME_VEHICLE_RESULT_), + "::", + stringify!(dwChanIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlateInfo) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TME_VEHICLE_RESULT_), + "::", + stringify!(struPlateInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVehicleInfo) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TME_VEHICLE_RESULT_), + "::", + stringify!(struVehicleInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonitoringSiteID) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TME_VEHICLE_RESULT_), + "::", + stringify!(byMonitoringSiteID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceID) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TME_VEHICLE_RESULT_), + "::", + stringify!(byDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDir) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TME_VEHICLE_RESULT_), + "::", + stringify!(byDir) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 257usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TME_VEHICLE_RESULT_), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBackList) as usize - ptr as usize }, + 258usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TME_VEHICLE_RESULT_), + "::", + stringify!(wBackList) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicNum) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TME_VEHICLE_RESULT_), + "::", + stringify!(dwPicNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPicInfo) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TME_VEHICLE_RESULT_), + "::", + stringify!(struPicInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPassVehicleID) as usize - ptr as usize }, + 680usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TME_VEHICLE_RESULT_), + "::", + stringify!(byPassVehicleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 712usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TME_VEHICLE_RESULT_), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySwipeTime) as usize - ptr as usize }, + 760usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TME_VEHICLE_RESULT_), + "::", + stringify!(bySwipeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCharge) as usize - ptr as usize }, + 792usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TME_VEHICLE_RESULT_), + "::", + stringify!(dwCharge) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHistory) as usize - ptr as usize }, + 796usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TME_VEHICLE_RESULT_), + "::", + stringify!(byHistory) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLetPass) as usize - ptr as usize }, + 797usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TME_VEHICLE_RESULT_), + "::", + stringify!(byLetPass) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 798usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TME_VEHICLE_RESULT_), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_TME_VEHICLE_RESULT = tagNET_DVR_TME_VEHICLE_RESULT_; +pub type LPNET_DVR_TME_VEHICLE_RESULT = *mut tagNET_DVR_TME_VEHICLE_RESULT_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MVMRegisterInfo_ { + pub dwSize: DWORD, + pub sDetectorID: [::std::os::raw::c_char; 16usize], + pub sManagerID: [::std::os::raw::c_char; 16usize], + pub sSim: [::std::os::raw::c_char; 20usize], + pub dwLocalIP: DWORD, + pub dwLocalIPMask: DWORD, + pub dwLocalGateway: DWORD, + pub dwDstIP: DWORD, + pub byMACAddr: [BYTE; 6usize], + pub wLocalPort: WORD, + pub wFirmwareYear: WORD, + pub byFirmwareMonth: BYTE, + pub byFirmwareDay: BYTE, + pub byMajorVersion: BYTE, + pub byMinorVersion: BYTE, + pub byRes: [BYTE; 170usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MVMRegisterInfo_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_MVMRegisterInfo_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MVMRegisterInfo_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MVMRegisterInfo_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDetectorID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MVMRegisterInfo_), + "::", + stringify!(sDetectorID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sManagerID) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MVMRegisterInfo_), + "::", + stringify!(sManagerID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSim) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MVMRegisterInfo_), + "::", + stringify!(sSim) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalIP) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MVMRegisterInfo_), + "::", + stringify!(dwLocalIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalIPMask) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MVMRegisterInfo_), + "::", + stringify!(dwLocalIPMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLocalGateway) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MVMRegisterInfo_), + "::", + stringify!(dwLocalGateway) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDstIP) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MVMRegisterInfo_), + "::", + stringify!(dwDstIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMACAddr) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MVMRegisterInfo_), + "::", + stringify!(byMACAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLocalPort) as usize - ptr as usize }, + 78usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MVMRegisterInfo_), + "::", + stringify!(wLocalPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFirmwareYear) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MVMRegisterInfo_), + "::", + stringify!(wFirmwareYear) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFirmwareMonth) as usize - ptr as usize }, + 82usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MVMRegisterInfo_), + "::", + stringify!(byFirmwareMonth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFirmwareDay) as usize - ptr as usize }, + 83usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MVMRegisterInfo_), + "::", + stringify!(byFirmwareDay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMajorVersion) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MVMRegisterInfo_), + "::", + stringify!(byMajorVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMinorVersion) as usize - ptr as usize }, + 85usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MVMRegisterInfo_), + "::", + stringify!(byMinorVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MVMRegisterInfo_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MVMRegisterInfo = tagNET_DVR_MVMRegisterInfo_; +pub type LPNET_DVR_MVMRegisterInfo = *mut tagNET_DVR_MVMRegisterInfo_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SingleMagneticStatus_ { + pub dwSize: DWORD, + pub sDetectorID: [::std::os::raw::c_char; 16usize], + pub sManagerID: [::std::os::raw::c_char; 16usize], + pub sParkNum: [::std::os::raw::c_char; 16usize], + pub struDetectorTime: NET_DVR_TIME_V30, + pub dwRssi: DWORD, + pub byParkinglotState: BYTE, + pub byBatteryState: BYTE, + pub byDeviceState: BYTE, + pub byCMD: BYTE, + pub byRes: [BYTE; 184usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SingleMagneticStatus_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_SingleMagneticStatus_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SingleMagneticStatus_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SingleMagneticStatus_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDetectorID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SingleMagneticStatus_), + "::", + stringify!(sDetectorID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sManagerID) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SingleMagneticStatus_), + "::", + stringify!(sManagerID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sParkNum) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SingleMagneticStatus_), + "::", + stringify!(sParkNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDetectorTime) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SingleMagneticStatus_), + "::", + stringify!(struDetectorTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRssi) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SingleMagneticStatus_), + "::", + stringify!(dwRssi) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byParkinglotState) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SingleMagneticStatus_), + "::", + stringify!(byParkinglotState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBatteryState) as usize - ptr as usize }, + 69usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SingleMagneticStatus_), + "::", + stringify!(byBatteryState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceState) as usize - ptr as usize }, + 70usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SingleMagneticStatus_), + "::", + stringify!(byDeviceState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCMD) as usize - ptr as usize }, + 71usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SingleMagneticStatus_), + "::", + stringify!(byCMD) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SingleMagneticStatus_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SingleMagneticStatus = tagNET_DVR_SingleMagneticStatus_; +pub type LPNET_DVR_SingleMagneticStatus = *mut tagNET_DVR_SingleMagneticStatus_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PARKING_VEHICLE { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub szLicense: [::std::os::raw::c_char; 16usize], + pub szRelateCardNo: [::std::os::raw::c_char; 48usize], + pub struStartTime: NET_DVR_TIME_V30, + pub struEndTime: NET_DVR_TIME_V30, + pub byVehicleType: BYTE, + pub byPlateColor: BYTE, + pub byRes: [BYTE; 126usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PARKING_VEHICLE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 224usize, + concat!("Size of: ", stringify!(tagNET_DVR_PARKING_VEHICLE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PARKING_VEHICLE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_VEHICLE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_VEHICLE), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szLicense) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_VEHICLE), + "::", + stringify!(szLicense) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szRelateCardNo) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_VEHICLE), + "::", + stringify!(szRelateCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_VEHICLE), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_VEHICLE), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleType) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_VEHICLE), + "::", + stringify!(byVehicleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlateColor) as usize - ptr as usize }, + 97usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_VEHICLE), + "::", + stringify!(byPlateColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 98usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKING_VEHICLE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PARKING_VEHICLE = tagNET_DVR_PARKING_VEHICLE; +pub type LPNET_DVR_PARKING_VEHICLE = *mut tagNET_DVR_PARKING_VEHICLE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CHARGEACCOUNT_CFG { + pub dwSize: DWORD, + pub fAccount: f32, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CHARGEACCOUNT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_CHARGEACCOUNT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CHARGEACCOUNT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHARGEACCOUNT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fAccount) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHARGEACCOUNT_CFG), + "::", + stringify!(fAccount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHARGEACCOUNT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CHARGEACCOUNT_CFG = tagNET_DVR_CHARGEACCOUNT_CFG; +pub type LPNET_DVR_CHARGEACCOUNT_CFG = *mut tagNET_DVR_CHARGEACCOUNT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PXMULTICTRL_CFG { + pub dwSize: DWORD, + pub dwMultiChansWaitTime: DWORD, + pub byMultiChansCapEnabled: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PXMULTICTRL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_PXMULTICTRL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PXMULTICTRL_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PXMULTICTRL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMultiChansWaitTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PXMULTICTRL_CFG), + "::", + stringify!(dwMultiChansWaitTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMultiChansCapEnabled) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PXMULTICTRL_CFG), + "::", + stringify!(byMultiChansCapEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PXMULTICTRL_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PXMULTICTRL_CFG = tagNET_DVR_PXMULTICTRL_CFG; +pub type LPNET_DVR_PXMULTICTRL_CFG = *mut tagNET_DVR_PXMULTICTRL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PXOFFLINE_CFG { + pub dwSize: DWORD, + pub byEnabled: BYTE, + pub byChargeEnabled: BYTE, + pub byAlarmEnabled: BYTE, + pub byRecordSource: BYTE, + pub dwTimeWait: DWORD, + #[doc = "realeaseMode&(0x1<<0) �\u{336}�������\nrealeaseMode&(0x1<<1) �\u{336}�������\nrealeaseMode&(0x1<<2) ��ʱ������\nrealeaseMode&(0x1<<3) ��ʱ������\nrealeaseMode&(0x1<<4) �\u{7b3}��Ʒ���\nrealeaseMode&(0x1<<5) �\u{336}�����������Զ�����\nrealeaseMode&(0x1<<6) ��ʱ����������Զ�����"] + pub dwRealeaseMode: DWORD, + pub byVehCardmatch: BYTE, + pub bySingleInSingleOut: BYTE, + pub byRes: [BYTE; 126usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PXOFFLINE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 144usize, + concat!("Size of: ", stringify!(tagNET_DVR_PXOFFLINE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PXOFFLINE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PXOFFLINE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PXOFFLINE_CFG), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChargeEnabled) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PXOFFLINE_CFG), + "::", + stringify!(byChargeEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmEnabled) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PXOFFLINE_CFG), + "::", + stringify!(byAlarmEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordSource) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PXOFFLINE_CFG), + "::", + stringify!(byRecordSource) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTimeWait) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PXOFFLINE_CFG), + "::", + stringify!(dwTimeWait) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRealeaseMode) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PXOFFLINE_CFG), + "::", + stringify!(dwRealeaseMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehCardmatch) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PXOFFLINE_CFG), + "::", + stringify!(byVehCardmatch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySingleInSingleOut) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PXOFFLINE_CFG), + "::", + stringify!(bySingleInSingleOut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PXOFFLINE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PXOFFLINE_CFG = tagNET_DVR_PXOFFLINE_CFG; +pub type LPNET_DVR_PXOFFLINE_CFG = *mut tagNET_DVR_PXOFFLINE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PARKINGSAPCE_CFG { + pub dwSize: DWORD, + pub dwTotalParkingLot: DWORD, + pub dwCurrParkingLot: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PARKINGSAPCE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 140usize, + concat!("Size of: ", stringify!(tagNET_DVR_PARKINGSAPCE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PARKINGSAPCE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKINGSAPCE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotalParkingLot) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKINGSAPCE_CFG), + "::", + stringify!(dwTotalParkingLot) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCurrParkingLot) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKINGSAPCE_CFG), + "::", + stringify!(dwCurrParkingLot) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PARKINGSAPCE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PARKINGSAPCE_CFG = tagNET_DVR_PARKINGSAPCE_CFG; +pub type LPNET_DVR_PARKINGSAPCE_CFG = *mut tagNET_DVR_PARKINGSAPCE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PAPERCHARGEINFO_CFG { + pub dwSize: DWORD, + pub szBarCode: [::std::os::raw::c_char; 16usize], + pub szLicense: [::std::os::raw::c_char; 16usize], + pub szVehicleInTime: [::std::os::raw::c_char; 32usize], + pub szPaymentTime: [::std::os::raw::c_char; 32usize], + pub fPaymentAmount: f32, + pub dwPaymentOutFailureTime: DWORD, + pub byVehicleOutEnabled: BYTE, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PAPERCHARGEINFO_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 240usize, + concat!("Size of: ", stringify!(tagNET_DVR_PAPERCHARGEINFO_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PAPERCHARGEINFO_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PAPERCHARGEINFO_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szBarCode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PAPERCHARGEINFO_CFG), + "::", + stringify!(szBarCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szLicense) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PAPERCHARGEINFO_CFG), + "::", + stringify!(szLicense) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szVehicleInTime) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PAPERCHARGEINFO_CFG), + "::", + stringify!(szVehicleInTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szPaymentTime) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PAPERCHARGEINFO_CFG), + "::", + stringify!(szPaymentTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fPaymentAmount) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PAPERCHARGEINFO_CFG), + "::", + stringify!(fPaymentAmount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPaymentOutFailureTime) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PAPERCHARGEINFO_CFG), + "::", + stringify!(dwPaymentOutFailureTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVehicleOutEnabled) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PAPERCHARGEINFO_CFG), + "::", + stringify!(byVehicleOutEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 109usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PAPERCHARGEINFO_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PAPERCHARGEINFO_CFG = tagNET_DVR_PAPERCHARGEINFO_CFG; +pub type LPNET_DVR_PAPERCHARGEINFO_CFG = *mut tagNET_DVR_PAPERCHARGEINFO_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ILLEGALCARDFILTERING_CFG { + pub dwSize: DWORD, + pub sLEDDefaultInfo: [::std::os::raw::c_char; 512usize], + pub byillegalCardFilteringEnabled: BYTE, + pub bySendCardSensingCoilEnabled: BYTE, + pub byWiegendSensingCoilEnabled: BYTE, + pub byGateSwitchEnabled: BYTE, + pub byVerifyKeyWriteCardEnabled: BYTE, + pub byNoplateTakeCardEnabled: BYTE, + pub byRes: [BYTE; 126usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ILLEGALCARDFILTERING_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 648usize, + concat!("Size of: ", stringify!(tagNET_DVR_ILLEGALCARDFILTERING_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ILLEGALCARDFILTERING_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ILLEGALCARDFILTERING_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLEDDefaultInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ILLEGALCARDFILTERING_CFG), + "::", + stringify!(sLEDDefaultInfo) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byillegalCardFilteringEnabled) as usize - ptr as usize + }, + 516usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ILLEGALCARDFILTERING_CFG), + "::", + stringify!(byillegalCardFilteringEnabled) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).bySendCardSensingCoilEnabled) as usize - ptr as usize + }, + 517usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ILLEGALCARDFILTERING_CFG), + "::", + stringify!(bySendCardSensingCoilEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWiegendSensingCoilEnabled) as usize - ptr as usize }, + 518usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ILLEGALCARDFILTERING_CFG), + "::", + stringify!(byWiegendSensingCoilEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byGateSwitchEnabled) as usize - ptr as usize }, + 519usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ILLEGALCARDFILTERING_CFG), + "::", + stringify!(byGateSwitchEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVerifyKeyWriteCardEnabled) as usize - ptr as usize }, + 520usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ILLEGALCARDFILTERING_CFG), + "::", + stringify!(byVerifyKeyWriteCardEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNoplateTakeCardEnabled) as usize - ptr as usize }, + 521usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ILLEGALCARDFILTERING_CFG), + "::", + stringify!(byNoplateTakeCardEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 522usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ILLEGALCARDFILTERING_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ILLEGALCARDFILTERING_CFG = tagNET_DVR_ILLEGALCARDFILTERING_CFG; +pub type LPNET_DVR_ILLEGALCARDFILTERING_CFG = *mut tagNET_DVR_ILLEGALCARDFILTERING_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TME_CHARGERULE_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub szCardNo: [::std::os::raw::c_char; 32usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TME_CHARGERULE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 168usize, + concat!("Size of: ", stringify!(tagNET_DVR_TME_CHARGERULE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TME_CHARGERULE_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TME_CHARGERULE_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TME_CHARGERULE_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szCardNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TME_CHARGERULE_COND), + "::", + stringify!(szCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TME_CHARGERULE_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TME_CHARGERULE_COND = tagNET_DVR_TME_CHARGERULE_COND; +pub type LPNET_DVR_TME_CHARGERULE_COND = *mut tagNET_DVR_TME_CHARGERULE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LEDDISPLAY_CFG { + pub dwSize: DWORD, + pub sDisplayInfo: [::std::os::raw::c_char; 512usize], + pub byDisplayMode: BYTE, + pub bySpeedType: BYTE, + pub byShowPlateEnable: BYTE, + pub byRes1: BYTE, + pub dwShowTime: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LEDDISPLAY_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 652usize, + concat!("Size of: ", stringify!(tagNET_DVR_LEDDISPLAY_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LEDDISPLAY_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LEDDISPLAY_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDisplayInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LEDDISPLAY_CFG), + "::", + stringify!(sDisplayInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDisplayMode) as usize - ptr as usize }, + 516usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LEDDISPLAY_CFG), + "::", + stringify!(byDisplayMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpeedType) as usize - ptr as usize }, + 517usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LEDDISPLAY_CFG), + "::", + stringify!(bySpeedType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShowPlateEnable) as usize - ptr as usize }, + 518usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LEDDISPLAY_CFG), + "::", + stringify!(byShowPlateEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 519usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LEDDISPLAY_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwShowTime) as usize - ptr as usize }, + 520usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LEDDISPLAY_CFG), + "::", + stringify!(dwShowTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 524usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LEDDISPLAY_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LEDDISPLAY_CFG = tagNET_DVR_LEDDISPLAY_CFG; +pub type LPNET_DVR_LEDDISPLAY_CFG = *mut tagNET_DVR_LEDDISPLAY_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VOICEBROADCAST_CFG { + pub dwSize: DWORD, + pub sInfo: [::std::os::raw::c_char; 128usize], + pub byBroadcastNum: BYTE, + pub byIntervalTime: BYTE, + pub byRes: [BYTE; 126usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VOICEBROADCAST_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(tagNET_DVR_VOICEBROADCAST_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VOICEBROADCAST_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOICEBROADCAST_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOICEBROADCAST_CFG), + "::", + stringify!(sInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBroadcastNum) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOICEBROADCAST_CFG), + "::", + stringify!(byBroadcastNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIntervalTime) as usize - ptr as usize }, + 133usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOICEBROADCAST_CFG), + "::", + stringify!(byIntervalTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 134usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOICEBROADCAST_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VOICEBROADCAST_CFG = tagNET_DVR_VOICEBROADCAST_CFG; +pub type LPNET_DVR_VOICEBROADCAST_CFG = *mut tagNET_DVR_VOICEBROADCAST_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PAPERPRINTFORMAT_CFG { + pub dwSize: DWORD, + pub sTitleInfo: [::std::os::raw::c_char; 64usize], + pub sCustomInfo: [::std::os::raw::c_char; 64usize], + pub sPhoneNum: [::std::os::raw::c_char; 16usize], + pub byPrintInTimeEnabled: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PAPERPRINTFORMAT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 276usize, + concat!("Size of: ", stringify!(tagNET_DVR_PAPERPRINTFORMAT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PAPERPRINTFORMAT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PAPERPRINTFORMAT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sTitleInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PAPERPRINTFORMAT_CFG), + "::", + stringify!(sTitleInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCustomInfo) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PAPERPRINTFORMAT_CFG), + "::", + stringify!(sCustomInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPhoneNum) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PAPERPRINTFORMAT_CFG), + "::", + stringify!(sPhoneNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPrintInTimeEnabled) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PAPERPRINTFORMAT_CFG), + "::", + stringify!(byPrintInTimeEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 149usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PAPERPRINTFORMAT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PAPERPRINTFORMAT_CFG = tagNET_DVR_PAPERPRINTFORMAT_CFG; +pub type LPNET_DVR_PAPERPRINTFORMAT_CFG = *mut tagNET_DVR_PAPERPRINTFORMAT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCKGATE_TIME_CFG { + pub sBeginTime: [::std::os::raw::c_char; 32usize], + pub sEndTime: [::std::os::raw::c_char; 32usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCKGATE_TIME_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOCKGATE_TIME_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOCKGATE_TIME_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sBeginTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCKGATE_TIME_CFG), + "::", + stringify!(sBeginTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sEndTime) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCKGATE_TIME_CFG), + "::", + stringify!(sEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCKGATE_TIME_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOCKGATE_TIME_CFG = tagNET_DVR_LOCKGATE_TIME_CFG; +pub type LPNET_DVR_LOCKGATE_TIME_CFG = *mut tagNET_DVR_LOCKGATE_TIME_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCKGATE_CFG { + pub dwSize: DWORD, + pub struTime: [NET_DVR_LOCKGATE_TIME_CFG; 4usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCKGATE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 644usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOCKGATE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOCKGATE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCKGATE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCKGATE_CFG), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 516usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCKGATE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOCKGATE_CFG = tagNET_DVR_LOCKGATE_CFG; +pub type LPNET_DVR_LOCKGATE_CFG = *mut tagNET_DVR_LOCKGATE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PARKING_DATASTATE_INFO { + pub dwSize: DWORD, + pub szAppSerialNum: [::std::os::raw::c_char; 32usize], + pub dwParkingNum: DWORD, + pub dwUpdataSerialNum: DWORD, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_PARKING_DATASTATE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 300usize, + concat!("Size of: ", stringify!(NET_DVR_PARKING_DATASTATE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_PARKING_DATASTATE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PARKING_DATASTATE_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szAppSerialNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PARKING_DATASTATE_INFO), + "::", + stringify!(szAppSerialNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwParkingNum) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PARKING_DATASTATE_INFO), + "::", + stringify!(dwParkingNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwUpdataSerialNum) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PARKING_DATASTATE_INFO), + "::", + stringify!(dwUpdataSerialNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PARKING_DATASTATE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_PARKING_DATASTATE_INFO = *mut NET_DVR_PARKING_DATASTATE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EPTZ_CFG { + pub dwSize: DWORD, + pub byEnableEPTZ: BYTE, + pub byRes: [BYTE; 503usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EPTZ_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 508usize, + concat!("Size of: ", stringify!(tagNET_DVR_EPTZ_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EPTZ_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EPTZ_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnableEPTZ) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EPTZ_CFG), + "::", + stringify!(byEnableEPTZ) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EPTZ_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EPTZ_CFG = tagNET_DVR_EPTZ_CFG; +pub type LPNET_DVR_EPTZ_CFG = *mut tagNET_DVR_EPTZ_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CENTER_POINT_CFG { + pub dwSize: DWORD, + pub struRegion: NET_VCA_POLYGON, + pub byRes: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CENTER_POINT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 600usize, + concat!("Size of: ", stringify!(tagNET_DVR_CENTER_POINT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CENTER_POINT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CENTER_POINT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CENTER_POINT_CFG), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CENTER_POINT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CENTER_POINT_CFG = tagNET_DVR_CENTER_POINT_CFG; +pub type LPNET_DVR_CENTER_POINT_CFG = *mut tagNET_DVR_CENTER_POINT_CFG; +#[doc = "IPC FF���� Start"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FTPUPLOAD_PARAM { + pub szRuleTypeItem: [::std::os::raw::c_char; 20usize], + pub szCameraName: [::std::os::raw::c_char; 32usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FTPUPLOAD_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 116usize, + concat!("Size of: ", stringify!(tagNET_DVR_FTPUPLOAD_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FTPUPLOAD_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szRuleTypeItem) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPUPLOAD_PARAM), + "::", + stringify!(szRuleTypeItem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szCameraName) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPUPLOAD_PARAM), + "::", + stringify!(szCameraName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPUPLOAD_PARAM), + "::", + stringify!(byRes) + ) + ); +} +#[doc = "IPC FF���� Start"] +pub type NET_DVR_FTPUPLOAD_PARAM = tagNET_DVR_FTPUPLOAD_PARAM; +#[doc = "IPC FF���� Start"] +pub type LPNET_DVR_FTPUPLOAD_PARAM = *mut tagNET_DVR_FTPUPLOAD_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FTPUPLOADCFG { + pub dwSize: DWORD, + pub byEventType: BYTE, + pub byMode: BYTE, + pub byRes: [BYTE; 62usize], + pub struCustomVehicle: [NET_DVR_FTPUPLOAD_PARAM; 12usize], + pub byRes1: [BYTE; 1024usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FTPUPLOADCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2484usize, + concat!("Size of: ", stringify!(tagNET_DVR_FTPUPLOADCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FTPUPLOADCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPUPLOADCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEventType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPUPLOADCFG), + "::", + stringify!(byEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPUPLOADCFG), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPUPLOADCFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struCustomVehicle) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPUPLOADCFG), + "::", + stringify!(struCustomVehicle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1460usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FTPUPLOADCFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_FTPUPLOADCFG = tagNET_DVR_FTPUPLOADCFG; +pub type LPNET_DVR_FTPUPLOADCFG = *mut tagNET_DVR_FTPUPLOADCFG; +#[doc = "IPC FF���� End"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PUBLISH_UPGRADE_COND { + pub dwSize: DWORD, + pub dwUpgradeType: DWORD, + pub dwTerminalNum: DWORD, + pub pTerminalNo: *mut DWORD, + pub dwGroupNo: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PUBLISH_UPGRADE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(tagNET_DVR_PUBLISH_UPGRADE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PUBLISH_UPGRADE_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_UPGRADE_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwUpgradeType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_UPGRADE_COND), + "::", + stringify!(dwUpgradeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTerminalNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_UPGRADE_COND), + "::", + stringify!(dwTerminalNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pTerminalNo) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_UPGRADE_COND), + "::", + stringify!(pTerminalNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGroupNo) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_UPGRADE_COND), + "::", + stringify!(dwGroupNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PUBLISH_UPGRADE_COND), + "::", + stringify!(byRes) + ) + ); +} +#[doc = "IPC FF���� End"] +pub type NET_DVR_PUBLISH_UPGRADE_COND = tagNET_DVR_PUBLISH_UPGRADE_COND; +#[doc = "IPC FF���� End"] +pub type LPNET_DVR_PUBLISH_UPGRADE_COND = *mut tagNET_DVR_PUBLISH_UPGRADE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WEP_KEY_CFG { + pub csWEPKey: [::std::os::raw::c_char; 32usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WEP_KEY_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 96usize, + concat!("Size of: ", stringify!(tagNET_DVR_WEP_KEY_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WEP_KEY_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).csWEPKey) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WEP_KEY_CFG), + "::", + stringify!(csWEPKey) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WEP_KEY_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WEP_KEY_CFG = tagNET_DVR_WEP_KEY_CFG; +pub type LPNET_DVR_WEP_KEY_CFG = *mut tagNET_DVR_WEP_KEY_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SUB_UPGRADE_PROGRESS { + pub dwTerminalNo: DWORD, + pub dwProgress: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUB_UPGRADE_PROGRESS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_SUB_UPGRADE_PROGRESS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SUB_UPGRADE_PROGRESS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTerminalNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUB_UPGRADE_PROGRESS), + "::", + stringify!(dwTerminalNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwProgress) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUB_UPGRADE_PROGRESS), + "::", + stringify!(dwProgress) + ) + ); +} +pub type NET_DVR_SUB_UPGRADE_PROGRESS = tagNET_DVR_SUB_UPGRADE_PROGRESS; +pub type LPNET_DVR_SUB_UPGRADE_PROGRESS = *mut tagNET_DVR_SUB_UPGRADE_PROGRESS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_UPGRADE_PROGRESS_RESULT { + pub dwSize: DWORD, + pub dwMainProgress: DWORD, + pub dwSubProgressNum: DWORD, + pub lpStruSubProgress: LPNET_DVR_SUB_UPGRADE_PROGRESS, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_UPGRADE_PROGRESS_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_UPGRADE_PROGRESS_RESULT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_UPGRADE_PROGRESS_RESULT) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_PROGRESS_RESULT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMainProgress) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_PROGRESS_RESULT), + "::", + stringify!(dwMainProgress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSubProgressNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_PROGRESS_RESULT), + "::", + stringify!(dwSubProgressNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpStruSubProgress) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_PROGRESS_RESULT), + "::", + stringify!(lpStruSubProgress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_PROGRESS_RESULT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_UPGRADE_PROGRESS_RESULT = tagNET_DVR_UPGRADE_PROGRESS_RESULT; +pub type LPNET_DVR_UPGRADE_PROGRESS_RESULT = *mut tagNET_DVR_UPGRADE_PROGRESS_RESULT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCHEDULE_PROGRESS_COND { + pub dwSize: DWORD, + pub dwScheduleNo: DWORD, + pub byProgressType: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwGroupNo: DWORD, + pub dwTerminalNo: DWORD, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCHEDULE_PROGRESS_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 52usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCHEDULE_PROGRESS_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SCHEDULE_PROGRESS_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_PROGRESS_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwScheduleNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_PROGRESS_COND), + "::", + stringify!(dwScheduleNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProgressType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_PROGRESS_COND), + "::", + stringify!(byProgressType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_PROGRESS_COND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGroupNo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_PROGRESS_COND), + "::", + stringify!(dwGroupNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTerminalNo) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_PROGRESS_COND), + "::", + stringify!(dwTerminalNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_PROGRESS_COND), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SCHEDULE_PROGRESS_COND = tagNET_DVR_SCHEDULE_PROGRESS_COND; +pub type LPNET_DVR_SCHEDULE_PROGRESS_COND = *mut tagNET_DVR_SCHEDULE_PROGRESS_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SUB_SCHEDULE_PROGRESS { + pub dwTerminalNo: DWORD, + pub dwProgress: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUB_SCHEDULE_PROGRESS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_SUB_SCHEDULE_PROGRESS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SUB_SCHEDULE_PROGRESS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTerminalNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUB_SCHEDULE_PROGRESS), + "::", + stringify!(dwTerminalNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwProgress) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUB_SCHEDULE_PROGRESS), + "::", + stringify!(dwProgress) + ) + ); +} +pub type NET_DVR_SUB_SCHEDULE_PROGRESS = tagNET_DVR_SUB_SCHEDULE_PROGRESS; +pub type LPNET_DVR_SUB_SCHEDULE_PROGRESS = *mut tagNET_DVR_SUB_SCHEDULE_PROGRESS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCHEDULE_PROGRESS_RESULT { + pub dwSize: DWORD, + pub dwMainProgress: DWORD, + pub dwSubProgressNum: DWORD, + pub lpStruSubProgress: LPNET_DVR_SUB_SCHEDULE_PROGRESS, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCHEDULE_PROGRESS_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCHEDULE_PROGRESS_RESULT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SCHEDULE_PROGRESS_RESULT) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_PROGRESS_RESULT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMainProgress) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_PROGRESS_RESULT), + "::", + stringify!(dwMainProgress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSubProgressNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_PROGRESS_RESULT), + "::", + stringify!(dwSubProgressNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpStruSubProgress) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_PROGRESS_RESULT), + "::", + stringify!(lpStruSubProgress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_PROGRESS_RESULT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCHEDULE_PROGRESS_RESULT = tagNET_DVR_SCHEDULE_PROGRESS_RESULT; +pub type LPNET_DVR_SCHEDULE_PROGRESS_RESULT = *mut tagNET_DVR_SCHEDULE_PROGRESS_RESULT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INSERTPLAY_PROGRESS_COND { + pub dwSize: DWORD, + pub byInsertType: BYTE, + pub byRes3: [BYTE; 3usize], + pub dwInsertNo: DWORD, + pub byProgressType: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwGroupNo: DWORD, + pub dwTerminalNo: DWORD, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INSERTPLAY_PROGRESS_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_INSERTPLAY_PROGRESS_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_INSERTPLAY_PROGRESS_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INSERTPLAY_PROGRESS_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInsertType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INSERTPLAY_PROGRESS_COND), + "::", + stringify!(byInsertType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INSERTPLAY_PROGRESS_COND), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInsertNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INSERTPLAY_PROGRESS_COND), + "::", + stringify!(dwInsertNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProgressType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INSERTPLAY_PROGRESS_COND), + "::", + stringify!(byProgressType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INSERTPLAY_PROGRESS_COND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwGroupNo) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INSERTPLAY_PROGRESS_COND), + "::", + stringify!(dwGroupNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTerminalNo) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INSERTPLAY_PROGRESS_COND), + "::", + stringify!(dwTerminalNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INSERTPLAY_PROGRESS_COND), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_INSERTPLAY_PROGRESS_COND = tagNET_DVR_INSERTPLAY_PROGRESS_COND; +pub type LPNET_DVR_INSERTPLAY_PROGRESS_COND = *mut tagNET_DVR_INSERTPLAY_PROGRESS_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SUB_INSERTPLAY_PROGRESS { + pub dwTerminalNo: DWORD, + pub dwProgress: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUB_INSERTPLAY_PROGRESS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_SUB_INSERTPLAY_PROGRESS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SUB_INSERTPLAY_PROGRESS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTerminalNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUB_INSERTPLAY_PROGRESS), + "::", + stringify!(dwTerminalNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwProgress) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUB_INSERTPLAY_PROGRESS), + "::", + stringify!(dwProgress) + ) + ); +} +pub type NET_DVR_SUB_INSERTPLAY_PROGRESS = tagNET_DVR_SUB_INSERTPLAY_PROGRESS; +pub type LPNET_DVR_SUB_INSERTPLAY_PROGRESS = *mut tagNET_DVR_SUB_INSERTPLAY_PROGRESS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INSERTPLAY_PROGRESS_RESULT { + pub dwSize: DWORD, + pub dwMainProgress: DWORD, + pub dwSubProgressNum: DWORD, + pub lpStruSubProgress: LPNET_DVR_SUB_INSERTPLAY_PROGRESS, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INSERTPLAY_PROGRESS_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_INSERTPLAY_PROGRESS_RESULT) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_INSERTPLAY_PROGRESS_RESULT) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INSERTPLAY_PROGRESS_RESULT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMainProgress) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INSERTPLAY_PROGRESS_RESULT), + "::", + stringify!(dwMainProgress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSubProgressNum) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INSERTPLAY_PROGRESS_RESULT), + "::", + stringify!(dwSubProgressNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpStruSubProgress) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INSERTPLAY_PROGRESS_RESULT), + "::", + stringify!(lpStruSubProgress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INSERTPLAY_PROGRESS_RESULT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INSERTPLAY_PROGRESS_RESULT = tagNET_DVR_INSERTPLAY_PROGRESS_RESULT; +pub type LPNET_DVR_INSERTPLAY_PROGRESS_RESULT = *mut tagNET_DVR_INSERTPLAY_PROGRESS_RESULT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WEP_CFG { + pub byAuthenticationType: BYTE, + pub byDefaultTransmitKeyIndex: BYTE, + pub byWepKeyLenType: BYTE, + pub byKeyType: BYTE, + pub struWEPKeyCfg: [NET_DVR_WEP_KEY_CFG; 4usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WEP_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 516usize, + concat!("Size of: ", stringify!(tagNET_DVR_WEP_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WEP_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAuthenticationType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WEP_CFG), + "::", + stringify!(byAuthenticationType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDefaultTransmitKeyIndex) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WEP_CFG), + "::", + stringify!(byDefaultTransmitKeyIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWepKeyLenType) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WEP_CFG), + "::", + stringify!(byWepKeyLenType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byKeyType) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WEP_CFG), + "::", + stringify!(byKeyType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWEPKeyCfg) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WEP_CFG), + "::", + stringify!(struWEPKeyCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 388usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WEP_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WEP_CFG = tagNET_DVR_WEP_CFG; +pub type LPNET_DVR_WEP_CFG = *mut tagNET_DVR_WEP_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WPA_CFG { + pub byAlgorithmType: BYTE, + pub byWPAKeyLen: BYTE, + pub byDefaultPassword: BYTE, + pub byRes1: BYTE, + pub csSharedKey: [::std::os::raw::c_char; 64usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WPA_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 196usize, + concat!("Size of: ", stringify!(tagNET_DVR_WPA_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WPA_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlgorithmType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WPA_CFG), + "::", + stringify!(byAlgorithmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWPAKeyLen) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WPA_CFG), + "::", + stringify!(byWPAKeyLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDefaultPassword) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WPA_CFG), + "::", + stringify!(byDefaultPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WPA_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).csSharedKey) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WPA_CFG), + "::", + stringify!(csSharedKey) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WPA_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WPA_CFG = tagNET_DVR_WPA_CFG; +pub type LPNET_DVR_WPA_CFG = *mut tagNET_DVR_WPA_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WIRELESS_SECURITY_CFG { + pub bySecurityMode: BYTE, + pub struWEPCfg: NET_DVR_WEP_CFG, + pub struWPACfg: NET_DVR_WPA_CFG, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIRELESS_SECURITY_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 969usize, + concat!("Size of: ", stringify!(tagNET_DVR_WIRELESS_SECURITY_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_WIRELESS_SECURITY_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySecurityMode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESS_SECURITY_CFG), + "::", + stringify!(bySecurityMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWEPCfg) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESS_SECURITY_CFG), + "::", + stringify!(struWEPCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWPACfg) as usize - ptr as usize }, + 517usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESS_SECURITY_CFG), + "::", + stringify!(struWPACfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 713usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESS_SECURITY_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WIRELESS_SECURITY_CFG = tagNET_DVR_WIRELESS_SECURITY_CFG; +pub type LPNET_DVR_WIRELESS_SECURITY_CFG = *mut tagNET_DVR_WIRELESS_SECURITY_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WIRELESSSERVER_FULLVERSION_CFG { + pub dwSize: DWORD, + pub byWifiAPEnabled: BYTE, + pub byBroadcastEnabled: BYTE, + pub byWlanShareEnabled: BYTE, + pub byDHCPEnabled: BYTE, + pub bySSID: [BYTE; 32usize], + pub byRes1: [BYTE; 11usize], + pub byIPType: BYTE, + pub struIPAddr: NET_DVR_IPADDR, + pub struIPMask: NET_DVR_IPADDR, + pub struGatewayIPMask: NET_DVR_IPADDR, + pub struStartIPAddrPool: NET_DVR_IPADDR, + pub struEndIPAddrPool: NET_DVR_IPADDR, + pub struDNSServerIpAddr: [NET_DVR_IPADDR; 2usize], + pub struWirelessSecurityCfg: NET_DVR_WIRELESS_SECURITY_CFG, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WIRELESSSERVER_FULLVERSION_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2288usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_WIRELESSSERVER_FULLVERSION_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_WIRELESSSERVER_FULLVERSION_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSSERVER_FULLVERSION_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWifiAPEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSSERVER_FULLVERSION_CFG), + "::", + stringify!(byWifiAPEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBroadcastEnabled) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSSERVER_FULLVERSION_CFG), + "::", + stringify!(byBroadcastEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWlanShareEnabled) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSSERVER_FULLVERSION_CFG), + "::", + stringify!(byWlanShareEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDHCPEnabled) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSSERVER_FULLVERSION_CFG), + "::", + stringify!(byDHCPEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySSID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSSERVER_FULLVERSION_CFG), + "::", + stringify!(bySSID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSSERVER_FULLVERSION_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIPType) as usize - ptr as usize }, + 51usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSSERVER_FULLVERSION_CFG), + "::", + stringify!(byIPType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPAddr) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSSERVER_FULLVERSION_CFG), + "::", + stringify!(struIPAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIPMask) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSSERVER_FULLVERSION_CFG), + "::", + stringify!(struIPMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struGatewayIPMask) as usize - ptr as usize }, + 340usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSSERVER_FULLVERSION_CFG), + "::", + stringify!(struGatewayIPMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartIPAddrPool) as usize - ptr as usize }, + 484usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSSERVER_FULLVERSION_CFG), + "::", + stringify!(struStartIPAddrPool) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndIPAddrPool) as usize - ptr as usize }, + 628usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSSERVER_FULLVERSION_CFG), + "::", + stringify!(struEndIPAddrPool) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDNSServerIpAddr) as usize - ptr as usize }, + 772usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSSERVER_FULLVERSION_CFG), + "::", + stringify!(struDNSServerIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struWirelessSecurityCfg) as usize - ptr as usize }, + 1060usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSSERVER_FULLVERSION_CFG), + "::", + stringify!(struWirelessSecurityCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2029usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WIRELESSSERVER_FULLVERSION_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_WIRELESSSERVER_FULLVERSION_CFG = tagNET_DVR_WIRELESSSERVER_FULLVERSION_CFG; +pub type LPNET_DVR_WIRELESSSERVER_FULLVERSION_CFG = *mut tagNET_DVR_WIRELESSSERVER_FULLVERSION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OPTICAL_DEV_CHAN_INFO { + pub dwChannel: DWORD, + pub byChannelName: [BYTE; 32usize], + pub bySignal: BYTE, + pub bySignalType: BYTE, + pub byRes: [BYTE; 10usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OPTICAL_DEV_CHAN_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(tagNET_DVR_OPTICAL_DEV_CHAN_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_OPTICAL_DEV_CHAN_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_DEV_CHAN_INFO), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byChannelName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_DEV_CHAN_INFO), + "::", + stringify!(byChannelName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySignal) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_DEV_CHAN_INFO), + "::", + stringify!(bySignal) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySignalType) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_DEV_CHAN_INFO), + "::", + stringify!(bySignalType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_DEV_CHAN_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_OPTICAL_DEV_CHAN_INFO = tagNET_DVR_OPTICAL_DEV_CHAN_INFO; +pub type LPNET_DVR_OPTICAL_DEV_CHAN_INFO = *mut tagNET_DVR_OPTICAL_DEV_CHAN_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OPTICAL_DEV_NODE { + pub byValid: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwDevNo: DWORD, + pub byDevName: [BYTE; 32usize], + pub byDevID: [BYTE; 48usize], + pub struChannel: [NET_DVR_OPTICAL_DEV_CHAN_INFO; 16usize], + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OPTICAL_DEV_NODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 888usize, + concat!("Size of: ", stringify!(tagNET_DVR_OPTICAL_DEV_NODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OPTICAL_DEV_NODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_DEV_NODE), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_DEV_NODE), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDevNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_DEV_NODE), + "::", + stringify!(dwDevNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_DEV_NODE), + "::", + stringify!(byDevName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevID) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_DEV_NODE), + "::", + stringify!(byDevID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struChannel) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_DEV_NODE), + "::", + stringify!(struChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 856usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_DEV_NODE), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_OPTICAL_DEV_NODE = tagNET_DVR_OPTICAL_DEV_NODE; +pub type LPNET_DVR_OPTICAL_DEV_NODE = *mut tagNET_DVR_OPTICAL_DEV_NODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OPTICAL_PORT_INFO { + pub dwSize: DWORD, + pub byValid: BYTE, + pub byLinkType: BYTE, + pub byPortWorkMode: BYTE, + pub byRes1: [BYTE; 1usize], + pub dwPairPort: DWORD, + pub struDevInfo: [NET_DVR_OPTICAL_DEV_NODE; 32usize], + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OPTICAL_PORT_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 28460usize, + concat!("Size of: ", stringify!(tagNET_DVR_OPTICAL_PORT_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OPTICAL_PORT_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_PORT_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byValid) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_PORT_INFO), + "::", + stringify!(byValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLinkType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_PORT_INFO), + "::", + stringify!(byLinkType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPortWorkMode) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_PORT_INFO), + "::", + stringify!(byPortWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_PORT_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPairPort) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_PORT_INFO), + "::", + stringify!(dwPairPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_PORT_INFO), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 28428usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_PORT_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_OPTICAL_PORT_INFO = tagNET_DVR_OPTICAL_PORT_INFO; +pub type LPNET_DVR_OPTICAL_PORT_INFO = *mut tagNET_DVR_OPTICAL_PORT_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OPTICAL_CHAN_RELATE_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwDevNo: DWORD, + pub dwOpticalPort: DWORD, + pub byDevID: [BYTE; 48usize], + pub dwInputChanNo: DWORD, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OPTICAL_CHAN_RELATE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_OPTICAL_CHAN_RELATE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_OPTICAL_CHAN_RELATE_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_CHAN_RELATE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_CHAN_RELATE_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_CHAN_RELATE_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDevNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_CHAN_RELATE_CFG), + "::", + stringify!(dwDevNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOpticalPort) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_CHAN_RELATE_CFG), + "::", + stringify!(dwOpticalPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevID) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_CHAN_RELATE_CFG), + "::", + stringify!(byDevID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInputChanNo) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_CHAN_RELATE_CFG), + "::", + stringify!(dwInputChanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPTICAL_CHAN_RELATE_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_OPTICAL_CHAN_RELATE_CFG = tagNET_DVR_OPTICAL_CHAN_RELATE_CFG; +pub type LPNET_DVR_OPTICAL_CHAN_RELATE_CFG = *mut tagNET_DVR_OPTICAL_CHAN_RELATE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_START_FILE_TO_CLOUD_COND { + pub dwSize: DWORD, + pub aCameraID: [BYTE; 64usize], + pub dwPoolID: DWORD, + pub dwRepPoolID: DWORD, + pub wReplication: WORD, + pub byRes: [BYTE; 178usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_START_FILE_TO_CLOUD_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_START_FILE_TO_CLOUD_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_START_FILE_TO_CLOUD_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_FILE_TO_CLOUD_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).aCameraID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_FILE_TO_CLOUD_COND), + "::", + stringify!(aCameraID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPoolID) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_FILE_TO_CLOUD_COND), + "::", + stringify!(dwPoolID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRepPoolID) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_FILE_TO_CLOUD_COND), + "::", + stringify!(dwRepPoolID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wReplication) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_FILE_TO_CLOUD_COND), + "::", + stringify!(wReplication) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 78usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_FILE_TO_CLOUD_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_START_FILE_TO_CLOUD_COND = tagNET_DVR_START_FILE_TO_CLOUD_COND; +pub type LPNET_DVR_START_FILE_TO_CLOUD_COND = *mut tagNET_DVR_START_FILE_TO_CLOUD_COND; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_START_PICTURE_FROM_CLOUD_COND { + pub dwSize: DWORD, + pub aCameraID: [BYTE; 64usize], + pub struBeginTime: NET_DVR_TIME_V30, + pub struEndTime: NET_DVR_TIME_V30, + pub dwPicType: DWORD, + pub byRes1: [BYTE; 3usize], + pub byZoomType: BYTE, + pub uZoomParam: tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1, + pub fnDownloadFileCallBack: DOWNLOAD_DATA_CB, + pub pUser: *mut ::std::os::raw::c_void, + pub byRes: [BYTE; 372usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1 { + pub uLen: [BYTE; 32usize], + pub struScale: tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1__bindgen_ty_1, + pub struQuality: tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1__bindgen_ty_2, + pub struResolution: tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1__bindgen_ty_3, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1__bindgen_ty_1 { + pub byScale: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::( + ), + 1usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::( + ), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScale) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(byScale) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1__bindgen_ty_2 { + pub byQuality: BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1__bindgen_ty_2, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::( + ), + 1usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::( + ), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byQuality) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(byQuality) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1__bindgen_ty_3 { + pub dwWidth: DWORD, + pub dwHeight: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1__bindgen_ty_3() { + const UNINIT: ::std::mem::MaybeUninit< + tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1__bindgen_ty_3, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::( + ), + 8usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + ::std::mem::align_of::( + ), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWidth) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(dwWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHeight) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(dwHeight) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1), + "::", + stringify!(uLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struScale) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1), + "::", + stringify!(struScale) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struQuality) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1), + "::", + stringify!(struQuality) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struResolution) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND__bindgen_ty_1), + "::", + stringify!(struResolution) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_START_PICTURE_FROM_CLOUD_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 528usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).aCameraID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND), + "::", + stringify!(aCameraID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBeginTime) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND), + "::", + stringify!(struBeginTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicType) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND), + "::", + stringify!(dwPicType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byZoomType) as usize - ptr as usize }, + 99usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND), + "::", + stringify!(byZoomType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).uZoomParam) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND), + "::", + stringify!(uZoomParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fnDownloadFileCallBack) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND), + "::", + stringify!(fnDownloadFileCallBack) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pUser) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND), + "::", + stringify!(pUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_START_PICTURE_FROM_CLOUD_COND = tagNET_DVR_START_PICTURE_FROM_CLOUD_COND; +pub type LPNET_DVR_START_PICTURE_FROM_CLOUD_COND = *mut tagNET_DVR_START_PICTURE_FROM_CLOUD_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_START_PICTURE_FROM_CLOUD_RET { + pub dwSize: DWORD, + pub dwFileCount: DWORD, + pub byRes: [BYTE; 120usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_START_PICTURE_FROM_CLOUD_RET() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_RET) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_RET) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_RET), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileCount) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_RET), + "::", + stringify!(dwFileCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_START_PICTURE_FROM_CLOUD_RET), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_START_PICTURE_FROM_CLOUD_RET = tagNET_DVR_START_PICTURE_FROM_CLOUD_RET; +pub type LPNET_DVR_START_PICTURE_FROM_CLOUD_RET = *mut tagNET_DVR_START_PICTURE_FROM_CLOUD_RET; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_PICTURE_FROM_CLOUD_RET { + pub dwSize: DWORD, + pub struTime: NET_DVR_TIME_V30, + pub dwPicLen: DWORD, + pub byPicType: BYTE, + pub byRes: [BYTE; 107usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_PICTURE_FROM_CLOUD_RET() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(NET_DVR_PICTURE_FROM_CLOUD_RET)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_PICTURE_FROM_CLOUD_RET)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICTURE_FROM_CLOUD_RET), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICTURE_FROM_CLOUD_RET), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicLen) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICTURE_FROM_CLOUD_RET), + "::", + stringify!(dwPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicType) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICTURE_FROM_CLOUD_RET), + "::", + stringify!(byPicType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 21usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_PICTURE_FROM_CLOUD_RET), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_PICTURE_FROM_CLOUD_RET = *mut NET_DVR_PICTURE_FROM_CLOUD_RET; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ACS_EXTERNAL_DEV_CFG { + pub dwSize: DWORD, + pub byIDCardUpMode: BYTE, + pub byRes1: BYTE, + pub byCardVerifyMode: BYTE, + pub byACSDevType: BYTE, + pub byDoorMode: BYTE, + pub byRes2: BYTE, + pub wDevDetailType: WORD, + pub byRes: [BYTE; 300usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ACS_EXTERNAL_DEV_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 312usize, + concat!("Size of: ", stringify!(tagNET_DVR_ACS_EXTERNAL_DEV_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ACS_EXTERNAL_DEV_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EXTERNAL_DEV_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIDCardUpMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EXTERNAL_DEV_CFG), + "::", + stringify!(byIDCardUpMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EXTERNAL_DEV_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardVerifyMode) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EXTERNAL_DEV_CFG), + "::", + stringify!(byCardVerifyMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byACSDevType) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EXTERNAL_DEV_CFG), + "::", + stringify!(byACSDevType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDoorMode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EXTERNAL_DEV_CFG), + "::", + stringify!(byDoorMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EXTERNAL_DEV_CFG), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevDetailType) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EXTERNAL_DEV_CFG), + "::", + stringify!(wDevDetailType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACS_EXTERNAL_DEV_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ACS_EXTERNAL_DEV_CFG = tagNET_DVR_ACS_EXTERNAL_DEV_CFG; +pub type LPNET_DVR_ACS_EXTERNAL_DEV_CFG = *mut tagNET_DVR_ACS_EXTERNAL_DEV_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PERSONNEL_CHANNEL_CFG { + pub dwSize: DWORD, + pub byInMode: BYTE, + pub byOutMode: BYTE, + pub byWorkMode: BYTE, + pub byRes: [BYTE; 301usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PERSONNEL_CHANNEL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 308usize, + concat!("Size of: ", stringify!(tagNET_DVR_PERSONNEL_CHANNEL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PERSONNEL_CHANNEL_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PERSONNEL_CHANNEL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PERSONNEL_CHANNEL_CFG), + "::", + stringify!(byInMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOutMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PERSONNEL_CHANNEL_CFG), + "::", + stringify!(byOutMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkMode) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PERSONNEL_CHANNEL_CFG), + "::", + stringify!(byWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PERSONNEL_CHANNEL_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PERSONNEL_CHANNEL_CFG = tagNET_DVR_PERSONNEL_CHANNEL_CFG; +pub type LPNET_DVR_PERSONNEL_CHANNEL_CFG = *mut tagNET_DVR_PERSONNEL_CHANNEL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ID_CARD_INFO { + pub dwSize: DWORD, + pub byName: [BYTE; 128usize], + pub struBirth: NET_DVR_DATE, + pub byAddr: [BYTE; 280usize], + pub byIDNum: [BYTE; 32usize], + pub byIssuingAuthority: [BYTE; 128usize], + pub struStartDate: NET_DVR_DATE, + pub struEndDate: NET_DVR_DATE, + pub byTermOfValidity: BYTE, + pub bySex: BYTE, + pub byNation: BYTE, + pub byRes: [BYTE; 101usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ID_CARD_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 688usize, + concat!("Size of: ", stringify!(tagNET_DVR_ID_CARD_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ID_CARD_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBirth) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO), + "::", + stringify!(struBirth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddr) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO), + "::", + stringify!(byAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIDNum) as usize - ptr as usize }, + 416usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO), + "::", + stringify!(byIDNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIssuingAuthority) as usize - ptr as usize }, + 448usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO), + "::", + stringify!(byIssuingAuthority) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartDate) as usize - ptr as usize }, + 576usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO), + "::", + stringify!(struStartDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndDate) as usize - ptr as usize }, + 580usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO), + "::", + stringify!(struEndDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTermOfValidity) as usize - ptr as usize }, + 584usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO), + "::", + stringify!(byTermOfValidity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySex) as usize - ptr as usize }, + 585usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO), + "::", + stringify!(bySex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNation) as usize - ptr as usize }, + 586usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO), + "::", + stringify!(byNation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 587usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ID_CARD_INFO = tagNET_DVR_ID_CARD_INFO; +pub type LPNET_DVR_ID_CARD_INFO = *mut tagNET_DVR_ID_CARD_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ID_CARD_INFO_ALARM { + pub dwSize: DWORD, + pub struIDCardCfg: NET_DVR_ID_CARD_INFO, + pub dwMajor: DWORD, + pub dwMinor: DWORD, + pub struSwipeTime: NET_DVR_TIME_V30, + pub byNetUser: [BYTE; 16usize], + pub struRemoteHostAddr: NET_DVR_IPADDR, + pub dwCardReaderNo: DWORD, + pub dwDoorNo: DWORD, + pub dwPicDataLen: DWORD, + pub pPicData: *mut ::std::os::raw::c_char, + pub byCardType: BYTE, + pub byDeviceNo: BYTE, + pub byMask: BYTE, + pub byCurrentEvent: BYTE, + pub dwFingerPrintDataLen: DWORD, + pub pFingerPrintData: *mut ::std::os::raw::c_char, + pub dwCapturePicDataLen: DWORD, + pub pCapturePicData: *mut ::std::os::raw::c_char, + pub dwCertificatePicDataLen: DWORD, + pub pCertificatePicData: *mut ::std::os::raw::c_char, + pub byCardReaderKind: BYTE, + pub byHelmet: BYTE, + pub byRes3: BYTE, + pub byIDCardInfoExtend: BYTE, + pub pIDCardInfoExtend: *mut ::std::os::raw::c_char, + pub dwSerialNo: DWORD, + pub byRes: [BYTE; 168usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ID_CARD_INFO_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1136usize, + concat!("Size of: ", stringify!(tagNET_DVR_ID_CARD_INFO_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ID_CARD_INFO_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIDCardCfg) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(struIDCardCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMajor) as usize - ptr as usize }, + 692usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(dwMajor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMinor) as usize - ptr as usize }, + 696usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(dwMinor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSwipeTime) as usize - ptr as usize }, + 700usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(struSwipeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetUser) as usize - ptr as usize }, + 712usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(byNetUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRemoteHostAddr) as usize - ptr as usize }, + 728usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(struRemoteHostAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardReaderNo) as usize - ptr as usize }, + 872usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(dwCardReaderNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDoorNo) as usize - ptr as usize }, + 876usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(dwDoorNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicDataLen) as usize - ptr as usize }, + 880usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(dwPicDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPicData) as usize - ptr as usize }, + 888usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(pPicData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardType) as usize - ptr as usize }, + 896usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(byCardType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDeviceNo) as usize - ptr as usize }, + 897usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(byDeviceNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMask) as usize - ptr as usize }, + 898usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(byMask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCurrentEvent) as usize - ptr as usize }, + 899usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(byCurrentEvent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFingerPrintDataLen) as usize - ptr as usize }, + 900usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(dwFingerPrintDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pFingerPrintData) as usize - ptr as usize }, + 904usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(pFingerPrintData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCapturePicDataLen) as usize - ptr as usize }, + 912usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(dwCapturePicDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pCapturePicData) as usize - ptr as usize }, + 920usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(pCapturePicData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCertificatePicDataLen) as usize - ptr as usize }, + 928usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(dwCertificatePicDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pCertificatePicData) as usize - ptr as usize }, + 936usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(pCertificatePicData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardReaderKind) as usize - ptr as usize }, + 944usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(byCardReaderKind) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHelmet) as usize - ptr as usize }, + 945usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(byHelmet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 946usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIDCardInfoExtend) as usize - ptr as usize }, + 947usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(byIDCardInfoExtend) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pIDCardInfoExtend) as usize - ptr as usize }, + 952usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(pIDCardInfoExtend) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSerialNo) as usize - ptr as usize }, + 960usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(dwSerialNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 964usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ID_CARD_INFO_ALARM = tagNET_DVR_ID_CARD_INFO_ALARM; +pub type LPNET_DVR_ID_CARD_INFO_ALARM = *mut tagNET_DVR_ID_CARD_INFO_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ID_CARD_INFO_EXTEND { + pub byRemoteCheck: BYTE, + pub byThermometryUnit: BYTE, + pub byIsAbnomalTemperature: BYTE, + pub byRes2: BYTE, + pub fCurrTemperature: f32, + pub struRegionCoordinates: NET_VCA_POINT, + pub dwQRCodeInfoLen: DWORD, + pub dwVisibleLightDataLen: DWORD, + pub dwThermalDataLen: DWORD, + pub pQRCodeInfo: *mut ::std::os::raw::c_char, + pub pVisibleLightData: *mut ::std::os::raw::c_char, + pub pThermalData: *mut ::std::os::raw::c_char, + pub wXCoordinate: WORD, + pub wYCoordinate: WORD, + pub wWidth: WORD, + pub wHeight: WORD, + pub byHealthCode: BYTE, + pub byNADCode: BYTE, + pub byTravelCode: BYTE, + pub byVaccineStatus: BYTE, + pub byRes: [BYTE; 1012usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ID_CARD_INFO_EXTEND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1080usize, + concat!("Size of: ", stringify!(tagNET_DVR_ID_CARD_INFO_EXTEND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ID_CARD_INFO_EXTEND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRemoteCheck) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_EXTEND), + "::", + stringify!(byRemoteCheck) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byThermometryUnit) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_EXTEND), + "::", + stringify!(byThermometryUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsAbnomalTemperature) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_EXTEND), + "::", + stringify!(byIsAbnomalTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_EXTEND), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fCurrTemperature) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_EXTEND), + "::", + stringify!(fCurrTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegionCoordinates) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_EXTEND), + "::", + stringify!(struRegionCoordinates) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwQRCodeInfoLen) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_EXTEND), + "::", + stringify!(dwQRCodeInfoLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVisibleLightDataLen) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_EXTEND), + "::", + stringify!(dwVisibleLightDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwThermalDataLen) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_EXTEND), + "::", + stringify!(dwThermalDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pQRCodeInfo) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_EXTEND), + "::", + stringify!(pQRCodeInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pVisibleLightData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_EXTEND), + "::", + stringify!(pVisibleLightData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pThermalData) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_EXTEND), + "::", + stringify!(pThermalData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wXCoordinate) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_EXTEND), + "::", + stringify!(wXCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wYCoordinate) as usize - ptr as usize }, + 58usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_EXTEND), + "::", + stringify!(wYCoordinate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wWidth) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_EXTEND), + "::", + stringify!(wWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHeight) as usize - ptr as usize }, + 62usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_EXTEND), + "::", + stringify!(wHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHealthCode) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_EXTEND), + "::", + stringify!(byHealthCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNADCode) as usize - ptr as usize }, + 65usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_EXTEND), + "::", + stringify!(byNADCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTravelCode) as usize - ptr as usize }, + 66usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_EXTEND), + "::", + stringify!(byTravelCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVaccineStatus) as usize - ptr as usize }, + 67usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_EXTEND), + "::", + stringify!(byVaccineStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_INFO_EXTEND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ID_CARD_INFO_EXTEND = tagNET_DVR_ID_CARD_INFO_EXTEND; +pub type LPNET_DVR_ID_CARD_INFO_EXTEND = *mut tagNET_DVR_ID_CARD_INFO_EXTEND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ID_CARD_BLOCKLIST_COND { + pub dwSize: DWORD, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ID_CARD_BLOCKLIST_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(tagNET_DVR_ID_CARD_BLOCKLIST_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ID_CARD_BLOCKLIST_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_BLOCKLIST_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_BLOCKLIST_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ID_CARD_BLOCKLIST_COND = tagNET_DVR_ID_CARD_BLOCKLIST_COND; +pub type LPNET_DVR_ID_CARD_BLOCKLIST_COND = *mut tagNET_DVR_ID_CARD_BLOCKLIST_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ID_CARD_BLOCKLIST_CFG { + pub dwSize: DWORD, + pub struIDCardCfg: NET_DVR_ID_CARD_INFO, + pub dwFingerPrintDataLen: DWORD, + pub pFingerPrintData: *mut ::std::os::raw::c_char, + pub dwPicDataLen: DWORD, + pub pPicData: *mut ::std::os::raw::c_char, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ID_CARD_BLOCKLIST_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 848usize, + concat!("Size of: ", stringify!(tagNET_DVR_ID_CARD_BLOCKLIST_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ID_CARD_BLOCKLIST_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_BLOCKLIST_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIDCardCfg) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_BLOCKLIST_CFG), + "::", + stringify!(struIDCardCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFingerPrintDataLen) as usize - ptr as usize }, + 692usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_BLOCKLIST_CFG), + "::", + stringify!(dwFingerPrintDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pFingerPrintData) as usize - ptr as usize }, + 696usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_BLOCKLIST_CFG), + "::", + stringify!(pFingerPrintData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicDataLen) as usize - ptr as usize }, + 704usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_BLOCKLIST_CFG), + "::", + stringify!(dwPicDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPicData) as usize - ptr as usize }, + 712usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_BLOCKLIST_CFG), + "::", + stringify!(pPicData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 720usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ID_CARD_BLOCKLIST_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ID_CARD_BLOCKLIST_CFG = tagNET_DVR_ID_CARD_BLOCKLIST_CFG; +pub type LPNET_DVR_ID_CARD_BLOCKLIST_CFG = *mut tagNET_DVR_ID_CARD_BLOCKLIST_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PASSPORT_INFO { + pub dwSize: DWORD, + pub byOCR: BYTE, + pub byRes1: [BYTE; 3usize], + pub byType: [BYTE; 4usize], + pub byCountryIssue: [BYTE; 128usize], + pub byName: [BYTE; 64usize], + pub byPassportNo: [BYTE; 16usize], + pub byNationality: [BYTE; 16usize], + pub struBirth: NET_DVR_DATE, + pub struExpireDate: NET_DVR_DATE, + pub bySex: BYTE, + pub byRes2: [BYTE; 35usize], + pub byLocalName: [BYTE; 128usize], + pub byNumber: [BYTE; 128usize], + pub byPlaceOfBirth: [BYTE; 128usize], + pub byAddr: [BYTE; 128usize], + pub byPhone: [BYTE; 128usize], + pub byJob: [BYTE; 128usize], + pub byTitle: [BYTE; 128usize], + pub byResume: [BYTE; 128usize], + pub byOtherNumber: [BYTE; 128usize], + pub byMonitoring: [BYTE; 1024usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PASSPORT_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2584usize, + concat!("Size of: ", stringify!(tagNET_DVR_PASSPORT_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PASSPORT_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOCR) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_INFO), + "::", + stringify!(byOCR) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_INFO), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCountryIssue) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_INFO), + "::", + stringify!(byCountryIssue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_INFO), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPassportNo) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_INFO), + "::", + stringify!(byPassportNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNationality) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_INFO), + "::", + stringify!(byNationality) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBirth) as usize - ptr as usize }, + 236usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_INFO), + "::", + stringify!(struBirth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struExpireDate) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_INFO), + "::", + stringify!(struExpireDate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySex) as usize - ptr as usize }, + 244usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_INFO), + "::", + stringify!(bySex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 245usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_INFO), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLocalName) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_INFO), + "::", + stringify!(byLocalName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNumber) as usize - ptr as usize }, + 408usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_INFO), + "::", + stringify!(byNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlaceOfBirth) as usize - ptr as usize }, + 536usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_INFO), + "::", + stringify!(byPlaceOfBirth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddr) as usize - ptr as usize }, + 664usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_INFO), + "::", + stringify!(byAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPhone) as usize - ptr as usize }, + 792usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_INFO), + "::", + stringify!(byPhone) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byJob) as usize - ptr as usize }, + 920usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_INFO), + "::", + stringify!(byJob) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTitle) as usize - ptr as usize }, + 1048usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_INFO), + "::", + stringify!(byTitle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byResume) as usize - ptr as usize }, + 1176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_INFO), + "::", + stringify!(byResume) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOtherNumber) as usize - ptr as usize }, + 1304usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_INFO), + "::", + stringify!(byOtherNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMonitoring) as usize - ptr as usize }, + 1432usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_INFO), + "::", + stringify!(byMonitoring) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2456usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PASSPORT_INFO = tagNET_DVR_PASSPORT_INFO; +pub type LPNET_DVR_PASSPORT_INFO = *mut tagNET_DVR_PASSPORT_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PASSPORT_ALARM { + pub dwSize: DWORD, + pub dwMajor: DWORD, + pub dwMinor: DWORD, + pub struSwipeTime: NET_DVR_TIME_V30, + pub byNetUser: [BYTE; 16usize], + pub struRemoteHostAddr: NET_DVR_IPADDR, + pub dwCardReaderNo: DWORD, + pub byCardType: BYTE, + pub byRes2: [BYTE; 11usize], + pub struPassportInfo: NET_DVR_PASSPORT_INFO, + pub dwFaceDataLen: DWORD, + pub pFaceData: *mut ::std::os::raw::c_char, + pub dwPicDataLen: DWORD, + pub pPicData: *mut ::std::os::raw::c_char, + pub dwCapturePicDataLen: DWORD, + pub pCapturePicData: *mut ::std::os::raw::c_char, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PASSPORT_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2960usize, + concat!("Size of: ", stringify!(tagNET_DVR_PASSPORT_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PASSPORT_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMajor) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_ALARM), + "::", + stringify!(dwMajor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMinor) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_ALARM), + "::", + stringify!(dwMinor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSwipeTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_ALARM), + "::", + stringify!(struSwipeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetUser) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_ALARM), + "::", + stringify!(byNetUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRemoteHostAddr) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_ALARM), + "::", + stringify!(struRemoteHostAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardReaderNo) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_ALARM), + "::", + stringify!(dwCardReaderNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardType) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_ALARM), + "::", + stringify!(byCardType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 189usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_ALARM), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPassportInfo) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_ALARM), + "::", + stringify!(struPassportInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFaceDataLen) as usize - ptr as usize }, + 2784usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_ALARM), + "::", + stringify!(dwFaceDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pFaceData) as usize - ptr as usize }, + 2792usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_ALARM), + "::", + stringify!(pFaceData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicDataLen) as usize - ptr as usize }, + 2800usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_ALARM), + "::", + stringify!(dwPicDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPicData) as usize - ptr as usize }, + 2808usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_ALARM), + "::", + stringify!(pPicData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCapturePicDataLen) as usize - ptr as usize }, + 2816usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_ALARM), + "::", + stringify!(dwCapturePicDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pCapturePicData) as usize - ptr as usize }, + 2824usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_ALARM), + "::", + stringify!(pCapturePicData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2832usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSPORT_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PASSPORT_ALARM = tagNET_DVR_PASSPORT_ALARM; +pub type LPNET_DVR_PASSPORT_ALARM = *mut tagNET_DVR_PASSPORT_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PASSNUM_INFO_ALARM { + pub dwSize: DWORD, + pub dwAccessChannel: DWORD, + pub struSwipeTime: NET_DVR_TIME_V30, + pub byNetUser: [BYTE; 16usize], + pub struRemoteHostAddr: NET_DVR_IPADDR, + pub dwEntryTimes: DWORD, + pub dwExitTimes: DWORD, + pub dwTotalTimes: DWORD, + pub byRes: [BYTE; 300usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PASSNUM_INFO_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 492usize, + concat!("Size of: ", stringify!(tagNET_DVR_PASSNUM_INFO_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PASSNUM_INFO_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSNUM_INFO_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAccessChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSNUM_INFO_ALARM), + "::", + stringify!(dwAccessChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSwipeTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSNUM_INFO_ALARM), + "::", + stringify!(struSwipeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNetUser) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSNUM_INFO_ALARM), + "::", + stringify!(byNetUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRemoteHostAddr) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSNUM_INFO_ALARM), + "::", + stringify!(struRemoteHostAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEntryTimes) as usize - ptr as usize }, + 180usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSNUM_INFO_ALARM), + "::", + stringify!(dwEntryTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwExitTimes) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSNUM_INFO_ALARM), + "::", + stringify!(dwExitTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotalTimes) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSNUM_INFO_ALARM), + "::", + stringify!(dwTotalTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSNUM_INFO_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PASSNUM_INFO_ALARM = tagNET_DVR_PASSNUM_INFO_ALARM; +pub type LPNET_DVR_PASSNUM_INFO_ALARM = *mut tagNET_DVR_PASSNUM_INFO_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_UPLOAD_VIDEO_INFO { + pub dwSize: DWORD, + pub dwVideoMangeNo: DWORD, + pub byVideoType: BYTE, + pub byRes1: [BYTE; 3usize], + pub sVideoName: [BYTE; 32usize], + pub struTime: NET_DVR_TIME_V30, + pub byRes: [BYTE; 132usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_UPLOAD_VIDEO_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 188usize, + concat!("Size of: ", stringify!(tagNET_DVR_UPLOAD_VIDEO_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_UPLOAD_VIDEO_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_VIDEO_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoMangeNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_VIDEO_INFO), + "::", + stringify!(dwVideoMangeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_VIDEO_INFO), + "::", + stringify!(byVideoType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_VIDEO_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sVideoName) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_VIDEO_INFO), + "::", + stringify!(sVideoName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_VIDEO_INFO), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_VIDEO_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_UPLOAD_VIDEO_INFO = tagNET_DVR_UPLOAD_VIDEO_INFO; +pub type LPNET_DVR_UPLOAD_VIDEO_INFO = *mut tagNET_DVR_UPLOAD_VIDEO_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEVICE_FILE_INFO { + pub dwSize: DWORD, + pub sFileName: [BYTE; 32usize], + pub dwManageNo: DWORD, + pub struTime: NET_DVR_TIME_EX, + pub byUsed: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEVICE_FILE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 176usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEVICE_FILE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEVICE_FILE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_FILE_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_FILE_INFO), + "::", + stringify!(sFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwManageNo) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_FILE_INFO), + "::", + stringify!(dwManageNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_FILE_INFO), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUsed) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_FILE_INFO), + "::", + stringify!(byUsed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 49usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_FILE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DEVICE_FILE_INFO = tagNET_DVR_DEVICE_FILE_INFO; +pub type LPNET_DVR_DEVICE_FILE_INFO = *mut tagNET_DVR_DEVICE_FILE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLAY_ITEM { + pub dwSize: DWORD, + pub byItemType: BYTE, + pub byRes: [BYTE; 3usize], + pub dwPlayManageNo: DWORD, + pub dwPlayPicTime: DWORD, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLAY_ITEM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLAY_ITEM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PLAY_ITEM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAY_ITEM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byItemType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAY_ITEM), + "::", + stringify!(byItemType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAY_ITEM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlayManageNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAY_ITEM), + "::", + stringify!(dwPlayManageNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlayPicTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAY_ITEM), + "::", + stringify!(dwPlayPicTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAY_ITEM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PLAY_ITEM = tagNET_DVR_PLAY_ITEM; +pub type LPNET_DVR_PLAY_ITEM = *mut tagNET_DVR_PLAY_ITEM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEVICE_PLAYLIST { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byPlayType: BYTE, + pub byVaildItemNum: BYTE, + pub byRes: [BYTE; 1usize], + pub struPlayItem: [NET_DVR_PLAY_ITEM; 64usize], + pub byPlaylistName: [BYTE; 64usize], + pub dwPlaylistNo: DWORD, + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEVICE_PLAYLIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 5324usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEVICE_PLAYLIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEVICE_PLAYLIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_PLAYLIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_PLAYLIST), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlayType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_PLAYLIST), + "::", + stringify!(byPlayType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVaildItemNum) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_PLAYLIST), + "::", + stringify!(byVaildItemNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_PLAYLIST), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlayItem) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_PLAYLIST), + "::", + stringify!(struPlayItem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlaylistName) as usize - ptr as usize }, + 5128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_PLAYLIST), + "::", + stringify!(byPlaylistName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlaylistNo) as usize - ptr as usize }, + 5192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_PLAYLIST), + "::", + stringify!(dwPlaylistNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 5196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEVICE_PLAYLIST), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_DEVICE_PLAYLIST = tagNET_DVR_DEVICE_PLAYLIST; +pub type LPNET_DVR_DEVICE_PLAYLIST = *mut tagNET_DVR_DEVICE_PLAYLIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLAYLIST_ITEM_CTRL { + pub dwSize: DWORD, + pub byCtrlType: BYTE, + pub byPlayIndex: BYTE, + pub struPlayItem: NET_DVR_PLAY_ITEM, + pub byNewPlayIndex: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLAYLIST_ITEM_CTRL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 152usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLAYLIST_ITEM_CTRL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PLAYLIST_ITEM_CTRL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYLIST_ITEM_CTRL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCtrlType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYLIST_ITEM_CTRL), + "::", + stringify!(byCtrlType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlayIndex) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYLIST_ITEM_CTRL), + "::", + stringify!(byPlayIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlayItem) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYLIST_ITEM_CTRL), + "::", + stringify!(struPlayItem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNewPlayIndex) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYLIST_ITEM_CTRL), + "::", + stringify!(byNewPlayIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 89usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYLIST_ITEM_CTRL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PLAYLIST_ITEM_CTRL = tagNET_DVR_PLAYLIST_ITEM_CTRL; +pub type LPNET_DVR_PLAYLIST_ITEM_CTRL = *mut tagNET_DVR_PLAYLIST_ITEM_CTRL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLAN_ITEM { + pub struPlanPlayItem: NET_DVR_PLAY_ITEM, + pub struTimeSegment: NET_DVR_TIME_SEGMENT, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLAN_ITEM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 104usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLAN_ITEM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PLAN_ITEM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlanPlayItem) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_ITEM), + "::", + stringify!(struPlanPlayItem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTimeSegment) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_ITEM), + "::", + stringify!(struTimeSegment) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAN_ITEM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PLAN_ITEM = tagNET_DVR_PLAN_ITEM; +pub type LPNET_DVR_PLAN_ITEM = *mut tagNET_DVR_PLAN_ITEM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLAYPLAN_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byPlanMode: BYTE, + pub byRes: [BYTE; 2usize], + pub struPlanItem: [[NET_DVR_PLAN_ITEM; 8usize]; 7usize], + pub dwPlayPlanNo: DWORD, + pub byPlayPlanName: [BYTE; 32usize], + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLAYPLAN_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 5900usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLAYPLAN_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PLAYPLAN_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYPLAN_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYPLAN_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlanMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYPLAN_CFG), + "::", + stringify!(byPlanMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYPLAN_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlanItem) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYPLAN_CFG), + "::", + stringify!(struPlanItem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlayPlanNo) as usize - ptr as usize }, + 5832usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYPLAN_CFG), + "::", + stringify!(dwPlayPlanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlayPlanName) as usize - ptr as usize }, + 5836usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYPLAN_CFG), + "::", + stringify!(byPlayPlanName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 5868usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYPLAN_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PLAYPLAN_CFG = tagNET_DVR_PLAYPLAN_CFG; +pub type LPNET_DVR_PLAYPLAN_CFG = *mut tagNET_DVR_PLAYPLAN_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_WINDOW_PLAYPLAN_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes: [BYTE; 3usize], + pub dwPlayPlanNo: DWORD, + pub byRes2: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_WINDOW_PLAYPLAN_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_WINDOW_PLAYPLAN_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_WINDOW_PLAYPLAN_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WINDOW_PLAYPLAN_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WINDOW_PLAYPLAN_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WINDOW_PLAYPLAN_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlayPlanNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WINDOW_PLAYPLAN_CFG), + "::", + stringify!(dwPlayPlanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_WINDOW_PLAYPLAN_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_WINDOW_PLAYPLAN_CFG = tagNET_DVR_WINDOW_PLAYPLAN_CFG; +pub type LPNET_DVR_WINDOW_PLAYPLAN_CFG = *mut tagNET_DVR_WINDOW_PLAYPLAN_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEV_PLAYCTRL { + pub dwSize: DWORD, + pub byControlType: BYTE, + pub byRes: [BYTE; 131usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEV_PLAYCTRL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEV_PLAYCTRL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEV_PLAYCTRL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_PLAYCTRL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byControlType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_PLAYCTRL), + "::", + stringify!(byControlType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_PLAYCTRL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DEV_PLAYCTRL = tagNET_DVR_DEV_PLAYCTRL; +pub type LPNET_DVR_DEV_PLAYCTRL = *mut tagNET_DVR_DEV_PLAYCTRL; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_PLAYITEM_INFO { + pub struPlayItem: tagNET_DVR_PLAYITEM_INFO__bindgen_ty_1, + pub struPlaylistItem: tagNET_DVR_PLAYITEM_INFO__bindgen_ty_2, + pub struPlayPlanItem: tagNET_DVR_PLAYITEM_INFO__bindgen_ty_3, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLAYITEM_INFO__bindgen_ty_1 { + pub dwPlayItem: DWORD, + pub byPlayItemName: [BYTE; 32usize], + pub byRes2: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLAYITEM_INFO__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_1) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlayItem) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_1), + "::", + stringify!(dwPlayItem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlayItemName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_1), + "::", + stringify!(byPlayItemName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_1), + "::", + stringify!(byRes2) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLAYITEM_INFO__bindgen_ty_2 { + pub dwPlaylistNo: DWORD, + pub byPlaylistName: [BYTE; 32usize], + pub wPlayIndex: WORD, + pub byPlayType: BYTE, + pub byRes: [BYTE; 3usize], + pub dwPlayItem: DWORD, + pub byPlayItemName: [BYTE; 32usize], + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLAYITEM_INFO__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 96usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_2) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlaylistNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_2), + "::", + stringify!(dwPlaylistNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlaylistName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_2), + "::", + stringify!(byPlaylistName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPlayIndex) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_2), + "::", + stringify!(wPlayIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlayType) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_2), + "::", + stringify!(byPlayType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_2), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlayItem) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_2), + "::", + stringify!(dwPlayItem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlayItemName) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_2), + "::", + stringify!(byPlayItemName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_2), + "::", + stringify!(byRes2) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLAYITEM_INFO__bindgen_ty_3 { + pub dwPlayPlanNo: DWORD, + pub struTime: NET_DVR_TIME_SEGMENT, + pub byPlayType: BYTE, + pub byRes: [BYTE; 3usize], + pub dwPlaylistNo: DWORD, + pub byPlaylistName: [BYTE; 32usize], + pub dwPlayItem: DWORD, + pub byPlayItemName: [BYTE; 32usize], + pub wPlayIndex: WORD, + pub byRes2: [BYTE; 18usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLAYITEM_INFO__bindgen_ty_3() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 108usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_3) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlayPlanNo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_3), + "::", + stringify!(dwPlayPlanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_3), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlayType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_3), + "::", + stringify!(byPlayType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_3), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlaylistNo) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_3), + "::", + stringify!(dwPlaylistNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlaylistName) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_3), + "::", + stringify!(byPlaylistName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlayItem) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_3), + "::", + stringify!(dwPlayItem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlayItemName) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_3), + "::", + stringify!(byPlayItemName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPlayIndex) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_3), + "::", + stringify!(wPlayIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 90usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYITEM_INFO__bindgen_ty_3), + "::", + stringify!(byRes2) + ) + ); +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLAYITEM_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 108usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLAYITEM_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PLAYITEM_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlayItem) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYITEM_INFO), + "::", + stringify!(struPlayItem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlaylistItem) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYITEM_INFO), + "::", + stringify!(struPlaylistItem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlayPlanItem) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYITEM_INFO), + "::", + stringify!(struPlayPlanItem) + ) + ); +} +pub type NET_DVR_PLAYITEM_INFO = tagNET_DVR_PLAYITEM_INFO; +pub type LPNET_DVR_PLAYITEM_INFO = *mut tagNET_DVR_PLAYITEM_INFO; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_PLAYING_INFO { + pub dwSize: DWORD, + pub byPlayWay: BYTE, + pub byCurPlayType: BYTE, + pub byPlayState: BYTE, + pub byAudioState: BYTE, + pub struPlayItemInfo: NET_DVR_PLAYITEM_INFO, + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLAYING_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLAYING_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PLAYING_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYING_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlayWay) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYING_INFO), + "::", + stringify!(byPlayWay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCurPlayType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYING_INFO), + "::", + stringify!(byCurPlayType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPlayState) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYING_INFO), + "::", + stringify!(byPlayState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioState) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYING_INFO), + "::", + stringify!(byAudioState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPlayItemInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYING_INFO), + "::", + stringify!(struPlayItemInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYING_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PLAYING_INFO = tagNET_DVR_PLAYING_INFO; +pub type LPNET_DVR_PLAYING_INFO = *mut tagNET_DVR_PLAYING_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ONLINEUSER_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ONLINEUSER_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_ONLINEUSER_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ONLINEUSER_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUSER_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUSER_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUSER_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ONLINEUSER_COND = tagNET_DVR_ONLINEUSER_COND; +pub type LPNET_DVR_ONLINEUSER_COND = *mut tagNET_DVR_ONLINEUSER_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ONLINEUSER_CFG { + pub dwSize: DWORD, + pub byID: BYTE, + pub byUserType: BYTE, + pub byDataType: BYTE, + pub byRes: BYTE, + pub struIpAddr: NET_DVR_IPADDR, + pub struLoginTime: NET_DVR_TIME_V30, + pub szUserName: [::std::os::raw::c_char; 32usize], + pub byRes1: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ONLINEUSER_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 324usize, + concat!("Size of: ", stringify!(tagNET_DVR_ONLINEUSER_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ONLINEUSER_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUSER_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUSER_CFG), + "::", + stringify!(byID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUserType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUSER_CFG), + "::", + stringify!(byUserType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataType) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUSER_CFG), + "::", + stringify!(byDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUSER_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIpAddr) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUSER_CFG), + "::", + stringify!(struIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLoginTime) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUSER_CFG), + "::", + stringify!(struLoginTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szUserName) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUSER_CFG), + "::", + stringify!(szUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINEUSER_CFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_ONLINEUSER_CFG = tagNET_DVR_ONLINEUSER_CFG; +pub type LPNET_DVR_ONLINEUSER_CFG = *mut tagNET_DVR_ONLINEUSER_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_STORAGE_DETECTION { + pub dwSize: DWORD, + pub byHealthState: BYTE, + pub bySDCardState: BYTE, + pub wAbnormalPowerLoss: WORD, + pub wBadBlocks: WORD, + pub byRemainingLife: BYTE, + pub byRes: [BYTE; 125usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STORAGE_DETECTION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_STORAGE_DETECTION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_STORAGE_DETECTION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_DETECTION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHealthState) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_DETECTION), + "::", + stringify!(byHealthState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySDCardState) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_DETECTION), + "::", + stringify!(bySDCardState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAbnormalPowerLoss) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_DETECTION), + "::", + stringify!(wAbnormalPowerLoss) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBadBlocks) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_DETECTION), + "::", + stringify!(wBadBlocks) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRemainingLife) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_DETECTION), + "::", + stringify!(byRemainingLife) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_DETECTION), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_STORAGE_DETECTION = tagNET_DVR_STORAGE_DETECTION; +pub type LPNET_DVR_STORAGE_DETECTION = *mut tagNET_DVR_STORAGE_DETECTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_STORAGE_DETECTION_ALARM { + pub dwSize: DWORD, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub dwCardID: DWORD, + pub wAbnormalPowerLoss: WORD, + pub wBadBlocks: WORD, + pub byHealthState: BYTE, + pub byRes1: [BYTE; 3usize], + pub fResidualLife: f32, + pub byRes: [BYTE; 118usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STORAGE_DETECTION_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 296usize, + concat!("Size of: ", stringify!(tagNET_DVR_STORAGE_DETECTION_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_STORAGE_DETECTION_ALARM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_DETECTION_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_DETECTION_ALARM), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_DETECTION_ALARM), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_DETECTION_ALARM), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardID) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_DETECTION_ALARM), + "::", + stringify!(dwCardID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wAbnormalPowerLoss) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_DETECTION_ALARM), + "::", + stringify!(wAbnormalPowerLoss) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBadBlocks) as usize - ptr as usize }, + 166usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_DETECTION_ALARM), + "::", + stringify!(wBadBlocks) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHealthState) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_DETECTION_ALARM), + "::", + stringify!(byHealthState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 169usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_DETECTION_ALARM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fResidualLife) as usize - ptr as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_DETECTION_ALARM), + "::", + stringify!(fResidualLife) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_DETECTION_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_STORAGE_DETECTION_ALARM = tagNET_DVR_STORAGE_DETECTION_ALARM; +pub type LPNET_DVR_STORAGE_DETECTION_ALARM = *mut tagNET_DVR_STORAGE_DETECTION_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_STORAGE_RWLOCK { + pub dwSize: DWORD, + pub byEnabled: BYTE, + pub byRes: [BYTE; 3usize], + pub szPassWD: [::std::os::raw::c_char; 16usize], + pub szOriginalPassWD: [::std::os::raw::c_char; 16usize], + pub byRes1: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STORAGE_RWLOCK() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 168usize, + concat!("Size of: ", stringify!(tagNET_DVR_STORAGE_RWLOCK)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_STORAGE_RWLOCK)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_RWLOCK), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_RWLOCK), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_RWLOCK), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szPassWD) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_RWLOCK), + "::", + stringify!(szPassWD) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szOriginalPassWD) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_RWLOCK), + "::", + stringify!(szOriginalPassWD) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_RWLOCK), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_STORAGE_RWLOCK = tagNET_DVR_STORAGE_RWLOCK; +pub type LPNET_DVR_STORAGE_RWLOCK = *mut tagNET_DVR_STORAGE_RWLOCK; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_STORAGE_UNLOCK { + pub dwSize: DWORD, + pub szPassWD: [::std::os::raw::c_char; 16usize], + pub byRes1: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STORAGE_UNLOCK() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!("Size of: ", stringify!(tagNET_DVR_STORAGE_UNLOCK)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_STORAGE_UNLOCK)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_UNLOCK), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szPassWD) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_UNLOCK), + "::", + stringify!(szPassWD) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STORAGE_UNLOCK), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_STORAGE_UNLOCK = tagNET_DVR_STORAGE_UNLOCK; +pub type LPNET_DVR_STORAGE_UNLOCK = *mut tagNET_DVR_STORAGE_UNLOCK; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PTZTRACKSTATUS { + pub dwSize: DWORD, + pub byID: BYTE, + pub byLinkageType: BYTE, + pub byRes: [BYTE; 254usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PTZTRACKSTATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(tagNET_DVR_PTZTRACKSTATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PTZTRACKSTATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZTRACKSTATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZTRACKSTATUS), + "::", + stringify!(byID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLinkageType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZTRACKSTATUS), + "::", + stringify!(byLinkageType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PTZTRACKSTATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PTZTRACKSTATUS = tagNET_DVR_PTZTRACKSTATUS; +pub type LPNET_DVR_PTZTRACKSTATUS = *mut tagNET_DVR_PTZTRACKSTATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SOCKS_PROXY_PARA { + pub byIP: [BYTE; 129usize], + pub byAuthType: BYTE, + pub wPort: WORD, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SOCKS_PROXY_PARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 196usize, + concat!("Size of: ", stringify!(tagNET_DVR_SOCKS_PROXY_PARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SOCKS_PROXY_PARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIP) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SOCKS_PROXY_PARA), + "::", + stringify!(byIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAuthType) as usize - ptr as usize }, + 129usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SOCKS_PROXY_PARA), + "::", + stringify!(byAuthType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 130usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SOCKS_PROXY_PARA), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SOCKS_PROXY_PARA), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SOCKS_PROXY_PARA = tagNET_DVR_SOCKS_PROXY_PARA; +pub type LPNET_DVR_SOCKS_PROXY_PARA = *mut tagNET_DVR_SOCKS_PROXY_PARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SOCKS_PROXYS { + pub struProxy: [NET_DVR_SOCKS_PROXY_PARA; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SOCKS_PROXYS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 6272usize, + concat!("Size of: ", stringify!(tagNET_DVR_SOCKS_PROXYS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SOCKS_PROXYS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struProxy) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SOCKS_PROXYS), + "::", + stringify!(struProxy) + ) + ); +} +pub type NET_DVR_SOCKS_PROXYS = tagNET_DVR_SOCKS_PROXYS; +pub type LPNET_DVR_SOCKS_PROXYS = *mut tagNET_DVR_SOCKS_PROXYS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GET_FIGURE_COND { + pub dwLength: DWORD, + pub dwChannel: DWORD, + pub struTimePoint: NET_DVR_TIME_V30, + pub byID: [BYTE; 32usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GET_FIGURE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 84usize, + concat!("Size of: ", stringify!(tagNET_DVR_GET_FIGURE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GET_FIGURE_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLength) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GET_FIGURE_COND), + "::", + stringify!(dwLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GET_FIGURE_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTimePoint) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GET_FIGURE_COND), + "::", + stringify!(struTimePoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byID) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GET_FIGURE_COND), + "::", + stringify!(byID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GET_FIGURE_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GET_FIGURE_COND = tagNET_DVR_GET_FIGURE_COND; +pub type LPNET_DVR_GET_FIGURE_COND = *mut tagNET_DVR_GET_FIGURE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FIGURE_INFO { + pub dwPicLen: DWORD, + pub pPicBuf: *mut ::std::os::raw::c_char, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FIGURE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_FIGURE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FIGURE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIGURE_INFO), + "::", + stringify!(dwPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPicBuf) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FIGURE_INFO), + "::", + stringify!(pPicBuf) + ) + ); +} +pub type NET_DVR_FIGURE_INFO = tagNET_DVR_FIGURE_INFO; +pub type LPNET_DVR_FIGURE_INFO = *mut tagNET_DVR_FIGURE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MANUALRANGING_CFG { + pub dwSize: DWORD, + pub byEnabled: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MANUALRANGING_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_MANUALRANGING_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MANUALRANGING_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANUALRANGING_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANUALRANGING_CFG), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANUALRANGING_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MANUALRANGING_CFG = tagNET_DVR_MANUALRANGING_CFG; +pub type LPNET_DVR_MANUALRANGING_CFG = *mut tagNET_DVR_MANUALRANGING_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VIDEO_INTERCOM_ALARM_CFG { + pub dwSize: DWORD, + pub byDoorNotCloseAlarm: BYTE, + pub byRes: [BYTE; 603usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VIDEO_INTERCOM_ALARM_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 608usize, + concat!("Size of: ", stringify!(tagNET_DVR_VIDEO_INTERCOM_ALARM_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_ALARM_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_ALARM_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDoorNotCloseAlarm) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_ALARM_CFG), + "::", + stringify!(byDoorNotCloseAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VIDEO_INTERCOM_ALARM_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VIDEO_INTERCOM_ALARM_CFG = tagNET_DVR_VIDEO_INTERCOM_ALARM_CFG; +pub type LPNET_DVR_VIDEO_INTERCOM_ALARM_CFG = *mut tagNET_DVR_VIDEO_INTERCOM_ALARM_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PACKET_INFO_EX { + pub wWidth: WORD, + pub wHeight: WORD, + pub dwTimeStamp: DWORD, + pub dwTimeStampHigh: DWORD, + pub dwYear: DWORD, + pub dwMonth: DWORD, + pub dwDay: DWORD, + pub dwHour: DWORD, + pub dwMinute: DWORD, + pub dwSecond: DWORD, + pub dwMillisecond: DWORD, + pub dwFrameNum: DWORD, + pub dwFrameRate: DWORD, + pub dwFlag: DWORD, + pub dwFilePos: DWORD, + pub dwPacketType: DWORD, + pub dwPacketSize: DWORD, + pub pPacketBuffer: *mut ::std::os::raw::c_uchar, + pub byRes1: [BYTE; 4usize], + pub dwPacketMode: DWORD, + pub byRes2: [BYTE; 16usize], + pub dwReserved: [DWORD; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PACKET_INFO_EX() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 120usize, + concat!("Size of: ", stringify!(tagNET_DVR_PACKET_INFO_EX)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PACKET_INFO_EX)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wWidth) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKET_INFO_EX), + "::", + stringify!(wWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wHeight) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKET_INFO_EX), + "::", + stringify!(wHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTimeStamp) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKET_INFO_EX), + "::", + stringify!(dwTimeStamp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTimeStampHigh) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKET_INFO_EX), + "::", + stringify!(dwTimeStampHigh) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwYear) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKET_INFO_EX), + "::", + stringify!(dwYear) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMonth) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKET_INFO_EX), + "::", + stringify!(dwMonth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDay) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKET_INFO_EX), + "::", + stringify!(dwDay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHour) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKET_INFO_EX), + "::", + stringify!(dwHour) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMinute) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKET_INFO_EX), + "::", + stringify!(dwMinute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSecond) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKET_INFO_EX), + "::", + stringify!(dwSecond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMillisecond) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKET_INFO_EX), + "::", + stringify!(dwMillisecond) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFrameNum) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKET_INFO_EX), + "::", + stringify!(dwFrameNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFrameRate) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKET_INFO_EX), + "::", + stringify!(dwFrameRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFlag) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKET_INFO_EX), + "::", + stringify!(dwFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFilePos) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKET_INFO_EX), + "::", + stringify!(dwFilePos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPacketType) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKET_INFO_EX), + "::", + stringify!(dwPacketType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPacketSize) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKET_INFO_EX), + "::", + stringify!(dwPacketSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPacketBuffer) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKET_INFO_EX), + "::", + stringify!(pPacketBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKET_INFO_EX), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPacketMode) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKET_INFO_EX), + "::", + stringify!(dwPacketMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKET_INFO_EX), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwReserved) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PACKET_INFO_EX), + "::", + stringify!(dwReserved) + ) + ); +} +pub type NET_DVR_PACKET_INFO_EX = tagNET_DVR_PACKET_INFO_EX; +pub type LPNET_DVR_PACKET_INFO_EX = *mut tagNET_DVR_PACKET_INFO_EX; +pub type DEV_WORK_STATE_CB = ::std::option::Option< + unsafe extern "C" fn( + pUserdata: *mut ::std::os::raw::c_void, + iUserID: ::std::os::raw::c_int, + lpWorkState: LPNET_DVR_WORKSTATE_V40, + ) -> ::std::os::raw::c_int, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNetDVRCheckDevState { + pub dwTimeout: DWORD, + pub fnStateCB: DEV_WORK_STATE_CB, + pub pUserData: *mut ::std::os::raw::c_void, + pub byRes: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNetDVRCheckDevState() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(tagNetDVRCheckDevState)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNetDVRCheckDevState)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTimeout) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNetDVRCheckDevState), + "::", + stringify!(dwTimeout) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fnStateCB) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNetDVRCheckDevState), + "::", + stringify!(fnStateCB) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pUserData) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNetDVRCheckDevState), + "::", + stringify!(pUserData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNetDVRCheckDevState), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CHECK_DEV_STATE = tagNetDVRCheckDevState; +pub type LPNET_DVR_CHECK_DEV_STATE = *mut tagNetDVRCheckDevState; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_COURSE_LIST_COND { + pub dwSize: DWORD, + pub struStartTime: NET_DVR_TIME_V30, + pub struEndTime: NET_DVR_TIME_V30, + pub byCourseName: [BYTE; 128usize], + pub byInstructorName: [BYTE; 64usize], + pub byCourseType: BYTE, + pub byRes: [BYTE; 603usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_COURSE_LIST_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 824usize, + concat!("Size of: ", stringify!(tagNET_DVR_COURSE_LIST_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_COURSE_LIST_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COURSE_LIST_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COURSE_LIST_COND), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COURSE_LIST_COND), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCourseName) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COURSE_LIST_COND), + "::", + stringify!(byCourseName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInstructorName) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COURSE_LIST_COND), + "::", + stringify!(byInstructorName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCourseType) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COURSE_LIST_COND), + "::", + stringify!(byCourseType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 221usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COURSE_LIST_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_COURSE_LIST_COND = tagNET_DVR_COURSE_LIST_COND; +pub type LPNET_DVR_COURSE_LIST_COND = *mut tagNET_DVR_COURSE_LIST_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_COURSE_CFG { + pub dwSize: DWORD, + pub struStartTime: NET_DVR_TIME_V30, + pub struEndTime: NET_DVR_TIME_V30, + pub byCourseName: [BYTE; 128usize], + pub byInstructorName: [BYTE; 64usize], + pub byCourseDescription: [BYTE; 256usize], + pub byRecUUID: [BYTE; 64usize], + pub byCourseType: BYTE, + pub byRes: [BYTE; 303usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_COURSE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 844usize, + concat!("Size of: ", stringify!(tagNET_DVR_COURSE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_COURSE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COURSE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COURSE_CFG), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COURSE_CFG), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCourseName) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COURSE_CFG), + "::", + stringify!(byCourseName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInstructorName) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COURSE_CFG), + "::", + stringify!(byInstructorName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCourseDescription) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COURSE_CFG), + "::", + stringify!(byCourseDescription) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecUUID) as usize - ptr as usize }, + 476usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COURSE_CFG), + "::", + stringify!(byRecUUID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCourseType) as usize - ptr as usize }, + 540usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COURSE_CFG), + "::", + stringify!(byCourseType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 541usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_COURSE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_COURSE_CFG = tagNET_DVR_COURSE_CFG; +pub type LPNET_DVR_COURSE_CFG = *mut tagNET_DVR_COURSE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECORD_STATUS { + pub dwSize: DWORD, + pub byRecUUID: [BYTE; 64usize], + pub byRecordStatus: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwRecordingTime: DWORD, + pub byRes: [BYTE; 596usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECORD_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 672usize, + concat!("Size of: ", stringify!(tagNET_DVR_RECORD_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RECORD_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecUUID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_STATUS), + "::", + stringify!(byRecUUID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordStatus) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_STATUS), + "::", + stringify!(byRecordStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 69usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_STATUS), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordingTime) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_STATUS), + "::", + stringify!(dwRecordingTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RECORD_STATUS = tagNET_DVR_RECORD_STATUS; +pub type LPNET_DVR_RECORD_STATUS = *mut tagNET_DVR_RECORD_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MANUAL_CURRICULUM_CFG { + pub dwSize: DWORD, + pub byRecUUID: [BYTE; 64usize], + pub byCourseName: [BYTE; 128usize], + pub byInstructorName: [BYTE; 64usize], + pub byCourseDescription: [BYTE; 256usize], + pub byCmdType: BYTE, + pub byRes: [BYTE; 303usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MANUAL_CURRICULUM_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 820usize, + concat!("Size of: ", stringify!(tagNET_DVR_MANUAL_CURRICULUM_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_MANUAL_CURRICULUM_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANUAL_CURRICULUM_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecUUID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANUAL_CURRICULUM_CFG), + "::", + stringify!(byRecUUID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCourseName) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANUAL_CURRICULUM_CFG), + "::", + stringify!(byCourseName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInstructorName) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANUAL_CURRICULUM_CFG), + "::", + stringify!(byInstructorName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCourseDescription) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANUAL_CURRICULUM_CFG), + "::", + stringify!(byCourseDescription) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCmdType) as usize - ptr as usize }, + 516usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANUAL_CURRICULUM_CFG), + "::", + stringify!(byCmdType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 517usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANUAL_CURRICULUM_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MANUAL_CURRICULUM_CFG = tagNET_DVR_MANUAL_CURRICULUM_CFG; +pub type LPNET_DVR_MANUAL_CURRICULUM_CFG = *mut tagNET_DVR_MANUAL_CURRICULUM_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IMAGE_DIFF_DETECTION_CFG { + pub dwSize: DWORD, + pub struRegion: NET_VCA_POLYGON, + pub byEnabled: BYTE, + pub byThreshold: BYTE, + pub bySensitivity: BYTE, + pub byVideoInputType: BYTE, + pub byRes: [BYTE; 300usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IMAGE_DIFF_DETECTION_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 392usize, + concat!("Size of: ", stringify!(tagNET_DVR_IMAGE_DIFF_DETECTION_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_IMAGE_DIFF_DETECTION_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGE_DIFF_DETECTION_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGE_DIFF_DETECTION_CFG), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGE_DIFF_DETECTION_CFG), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byThreshold) as usize - ptr as usize }, + 89usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGE_DIFF_DETECTION_CFG), + "::", + stringify!(byThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 90usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGE_DIFF_DETECTION_CFG), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoInputType) as usize - ptr as usize }, + 91usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGE_DIFF_DETECTION_CFG), + "::", + stringify!(byVideoInputType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IMAGE_DIFF_DETECTION_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_IMAGE_DIFF_DETECTION_CFG = tagNET_DVR_IMAGE_DIFF_DETECTION_CFG; +pub type LPNET_DVR_IMAGE_DIFF_DETECTION_CFG = *mut tagNET_DVR_IMAGE_DIFF_DETECTION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECORDING_PUBLISH_FILE_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byFileID: [BYTE; 128usize], + pub byRes: [BYTE; 300usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECORDING_PUBLISH_FILE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 436usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_RECORDING_PUBLISH_FILE_COND) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_RECORDING_PUBLISH_FILE_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_PUBLISH_FILE_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_PUBLISH_FILE_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_PUBLISH_FILE_COND), + "::", + stringify!(byFileID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_PUBLISH_FILE_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RECORDING_PUBLISH_FILE_COND = tagNET_DVR_RECORDING_PUBLISH_FILE_COND; +pub type LPNET_DVR_RECORDING_PUBLISH_FILE_COND = *mut tagNET_DVR_RECORDING_PUBLISH_FILE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECORDING_PUBLISH_FILE_INFO { + pub dwSize: DWORD, + pub struStartTime: NET_DVR_TIME_V30, + pub struEndTime: NET_DVR_TIME_V30, + pub byCourseName: [BYTE; 128usize], + pub byInstructorName: [BYTE; 64usize], + pub byCourseDescription: [BYTE; 256usize], + pub byRes: [BYTE; 300usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECORDING_PUBLISH_FILE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 776usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_RECORDING_PUBLISH_FILE_INFO) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_RECORDING_PUBLISH_FILE_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_PUBLISH_FILE_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_PUBLISH_FILE_INFO), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_PUBLISH_FILE_INFO), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCourseName) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_PUBLISH_FILE_INFO), + "::", + stringify!(byCourseName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInstructorName) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_PUBLISH_FILE_INFO), + "::", + stringify!(byInstructorName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCourseDescription) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_PUBLISH_FILE_INFO), + "::", + stringify!(byCourseDescription) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 476usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORDING_PUBLISH_FILE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RECORDING_PUBLISH_FILE_INFO = tagNET_DVR_RECORDING_PUBLISH_FILE_INFO; +pub type LPNET_DVR_RECORDING_PUBLISH_FILE_INFO = *mut tagNET_DVR_RECORDING_PUBLISH_FILE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCREEN_POINT { + pub wX: WORD, + pub wY: WORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEN_POINT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEN_POINT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREEN_POINT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wX) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_POINT), + "::", + stringify!(wX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wY) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_POINT), + "::", + stringify!(wY) + ) + ); +} +pub type NET_DVR_SCREEN_POINT = tagNET_DVR_SCREEN_POINT; +pub type LPNET_DVR_SCREEN_POINT = *mut tagNET_DVR_SCREEN_POINT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MOUSE_PARAM { + pub byMouseEvent: BYTE, + pub byRes1: [BYTE; 3usize], + pub struMousePoint: NET_DVR_SCREEN_POINT, + pub byRes2: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MOUSE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_MOUSE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MOUSE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMouseEvent) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOUSE_PARAM), + "::", + stringify!(byMouseEvent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOUSE_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMousePoint) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOUSE_PARAM), + "::", + stringify!(struMousePoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MOUSE_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_MOUSE_PARAM = tagNET_DVR_MOUSE_PARAM; +pub type LPNET_DVR_MOUSE_PARAM = *mut tagNET_DVR_MOUSE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MARK_PARAM { + pub byMarkEvent: BYTE, + pub byMarkTool: BYTE, + pub byLineWidth: BYTE, + pub byMouseEvent: BYTE, + pub struColor: NET_DVR_RGB_COLOR, + pub struPoint: NET_DVR_SCREEN_POINT, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MARK_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_MARK_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MARK_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMarkEvent) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MARK_PARAM), + "::", + stringify!(byMarkEvent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMarkTool) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MARK_PARAM), + "::", + stringify!(byMarkTool) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLineWidth) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MARK_PARAM), + "::", + stringify!(byLineWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMouseEvent) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MARK_PARAM), + "::", + stringify!(byMouseEvent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struColor) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MARK_PARAM), + "::", + stringify!(struColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPoint) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MARK_PARAM), + "::", + stringify!(struPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MARK_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MARK_PARAM = tagNET_DVR_MARK_PARAM; +pub type LPNET_DVR_MARK_PARAM = *mut tagNET_DVR_MARK_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_KEYBOARD_PARM { + pub dwKeyValue: DWORD, + pub byRes: [BYTE; 12usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_KEYBOARD_PARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_KEYBOARD_PARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_KEYBOARD_PARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwKeyValue) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_KEYBOARD_PARM), + "::", + stringify!(dwKeyValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_KEYBOARD_PARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_KEYBOARD_PARAM = tagNET_DVR_KEYBOARD_PARM; +pub type LPNET_DVR_KEYBOARD_PARAM = *mut tagNET_DVR_KEYBOARD_PARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PPT_PARAM { + pub byPPTAction: BYTE, + pub byRes1: [BYTE; 3usize], + pub struPoint: NET_DVR_SCREEN_POINT, + pub dwPPTNo: DWORD, + pub byRes2: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PPT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_PPT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PPT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPPTAction) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PPT_PARAM), + "::", + stringify!(byPPTAction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PPT_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPoint) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PPT_PARAM), + "::", + stringify!(struPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPPTNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PPT_PARAM), + "::", + stringify!(dwPPTNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PPT_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PPT_PARAM = tagNET_DVR_PPT_PARAM; +pub type LPNET_DVR_PPT_PARAM = *mut tagNET_DVR_PPT_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REMOTE_CTRL_PARAM { + pub byRemoteCtrlCmd: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwCtrlParam: DWORD, + pub byRes2: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REMOTE_CTRL_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_REMOTE_CTRL_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_REMOTE_CTRL_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRemoteCtrlCmd) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTE_CTRL_PARAM), + "::", + stringify!(byRemoteCtrlCmd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTE_CTRL_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCtrlParam) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTE_CTRL_PARAM), + "::", + stringify!(dwCtrlParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REMOTE_CTRL_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_REMOTE_CTRL_PARAM = tagNET_DVR_REMOTE_CTRL_PARAM; +pub type LPNET_DVR_REMOTE_CTRL_PARAM = *mut tagNET_DVR_REMOTE_CTRL_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SPOTLIGHT_PARAM { + pub byCmd: BYTE, + pub byRes1: [BYTE; 3usize], + pub struPoint: NET_DVR_SCREEN_POINT, + pub dwRadius: DWORD, + pub byRes2: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SPOTLIGHT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_SPOTLIGHT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SPOTLIGHT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCmd) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPOTLIGHT_PARAM), + "::", + stringify!(byCmd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPOTLIGHT_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPoint) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPOTLIGHT_PARAM), + "::", + stringify!(struPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRadius) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPOTLIGHT_PARAM), + "::", + stringify!(dwRadius) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SPOTLIGHT_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SPOTLIGHT_PARAM = tagNET_DVR_SPOTLIGHT_PARAM; +pub type LPNET_DVR_SPOTLIGHT_PARAM = *mut tagNET_DVR_SPOTLIGHT_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TOUCHPAD_PARAM { + pub byMouseEvent: BYTE, + pub byRes1: [BYTE; 3usize], + pub iXDisplacement: ::std::os::raw::c_int, + pub iYDisplacement: ::std::os::raw::c_int, + pub byRes2: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TOUCHPAD_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_TOUCHPAD_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TOUCHPAD_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMouseEvent) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TOUCHPAD_PARAM), + "::", + stringify!(byMouseEvent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TOUCHPAD_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iXDisplacement) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TOUCHPAD_PARAM), + "::", + stringify!(iXDisplacement) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iYDisplacement) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TOUCHPAD_PARAM), + "::", + stringify!(iYDisplacement) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TOUCHPAD_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_TOUCHPAD_PARAM = tagNET_DVR_TOUCHPAD_PARAM; +pub type LPNET_DVR_TOUCHPAD_PARAM = *mut tagNET_DVR_TOUCHPAD_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MEDIA_LIST_PARAM { + pub byOperateCmd: BYTE, + pub byRes: [BYTE; 15usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MEDIA_LIST_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_MEDIA_LIST_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MEDIA_LIST_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOperateCmd) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MEDIA_LIST_PARAM), + "::", + stringify!(byOperateCmd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MEDIA_LIST_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MEDIA_LIST_PARAM = tagNET_DVR_MEDIA_LIST_PARAM; +pub type LPNET_DVR_MEDIA_LIST_PARAM = *mut tagNET_DVR_MEDIA_LIST_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_SCREEN_CTRL_PARAM { + pub struMouseParam: NET_DVR_MOUSE_PARAM, + pub struMarkParam: NET_DVR_MARK_PARAM, + pub struKeyboardInfo: NET_DVR_KEYBOARD_PARAM, + pub struPPTParam: NET_DVR_PPT_PARAM, + pub struRemoteCtrlParam: NET_DVR_REMOTE_CTRL_PARAM, + pub struSpotLight: NET_DVR_SPOTLIGHT_PARAM, + pub struTouchPadParam: NET_DVR_TOUCHPAD_PARAM, + pub struMediaListParam: NET_DVR_MEDIA_LIST_PARAM, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEN_CTRL_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEN_CTRL_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREEN_CTRL_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMouseParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CTRL_PARAM), + "::", + stringify!(struMouseParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMarkParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CTRL_PARAM), + "::", + stringify!(struMarkParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struKeyboardInfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CTRL_PARAM), + "::", + stringify!(struKeyboardInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPPTParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CTRL_PARAM), + "::", + stringify!(struPPTParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRemoteCtrlParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CTRL_PARAM), + "::", + stringify!(struRemoteCtrlParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSpotLight) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CTRL_PARAM), + "::", + stringify!(struSpotLight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTouchPadParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CTRL_PARAM), + "::", + stringify!(struTouchPadParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMediaListParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CTRL_PARAM), + "::", + stringify!(struMediaListParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CTRL_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCREEN_CTRL_PARAM = tagNET_DVR_SCREEN_CTRL_PARAM; +pub type LPNET_DVR_SCREEN_CTRL_PARAM = *mut tagNET_DVR_SCREEN_CTRL_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SCREEN_CTRL_CMD { + pub dwSize: DWORD, + pub byCmdType: BYTE, + pub byRes1: [BYTE; 3usize], + pub struScreenCtrlParam: NET_DVR_SCREEN_CTRL_PARAM, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEN_CTRL_CMD() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEN_CTRL_CMD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREEN_CTRL_CMD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CTRL_CMD), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCmdType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CTRL_CMD), + "::", + stringify!(byCmdType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CTRL_CMD), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struScreenCtrlParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CTRL_CMD), + "::", + stringify!(struScreenCtrlParam) + ) + ); +} +pub type NET_DVR_SCREEN_CTRL_CMD = tagNET_DVR_SCREEN_CTRL_CMD; +pub type LPNET_DVR_SCREEN_CTRL_CMD = *mut tagNET_DVR_SCREEN_CTRL_CMD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FILE_RESPONSE_PARAM { + pub byFileState: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwErrorFileIndex: DWORD, + pub byRes2: [BYTE; 24usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FILE_RESPONSE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_DVR_FILE_RESPONSE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FILE_RESPONSE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileState) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILE_RESPONSE_PARAM), + "::", + stringify!(byFileState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILE_RESPONSE_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwErrorFileIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILE_RESPONSE_PARAM), + "::", + stringify!(dwErrorFileIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FILE_RESPONSE_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_FILE_RESPONSE_PARAM = tagNET_DVR_FILE_RESPONSE_PARAM; +pub type LPNET_DVR_FILE_RESPONSE_PARAM = *mut tagNET_DVR_FILE_RESPONSE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PPT_RESPONSE_PARAM { + pub byCurrentState: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwCurrentPage: DWORD, + pub dwFileIndex: DWORD, + pub dwTotalPageNum: DWORD, + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PPT_RESPONSE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_DVR_PPT_RESPONSE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PPT_RESPONSE_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCurrentState) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PPT_RESPONSE_PARAM), + "::", + stringify!(byCurrentState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PPT_RESPONSE_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCurrentPage) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PPT_RESPONSE_PARAM), + "::", + stringify!(dwCurrentPage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileIndex) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PPT_RESPONSE_PARAM), + "::", + stringify!(dwFileIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotalPageNum) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PPT_RESPONSE_PARAM), + "::", + stringify!(dwTotalPageNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PPT_RESPONSE_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PPT_RESPONSE_PARAM = tagNET_DVR_PPT_RESPONSE_PARAM; +pub type LPNET_DVR_PPT_RESPONSE_PARAM = *mut tagNET_DVR_PPT_RESPONSE_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub union tagNET_DVR_SCREEN_RESPONSE_PARAM { + pub byRes: [BYTE; 32usize], + pub struPPTParam: NET_DVR_PPT_RESPONSE_PARAM, + pub struFileParam: NET_DVR_FILE_RESPONSE_PARAM, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEN_RESPONSE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEN_RESPONSE_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SCREEN_RESPONSE_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_RESPONSE_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPPTParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_RESPONSE_PARAM), + "::", + stringify!(struPPTParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFileParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_RESPONSE_PARAM), + "::", + stringify!(struFileParam) + ) + ); +} +pub type NET_DVR_SCREEN_RESPONSE_PARAM = tagNET_DVR_SCREEN_RESPONSE_PARAM; +pub type LPNET_DVR_SCREEN_RESPONSE_PARAM = *mut tagNET_DVR_SCREEN_RESPONSE_PARAM; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tagNET_DVR_SCREEN_RESPONSE_CMD { + pub dwSize: DWORD, + pub byResponseCmd: BYTE, + pub byRes1: [BYTE; 3usize], + pub struResonseParam: NET_DVR_SCREEN_RESPONSE_PARAM, + pub byRes2: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEN_RESPONSE_CMD() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEN_RESPONSE_CMD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREEN_RESPONSE_CMD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_RESPONSE_CMD), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byResponseCmd) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_RESPONSE_CMD), + "::", + stringify!(byResponseCmd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_RESPONSE_CMD), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struResonseParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_RESPONSE_CMD), + "::", + stringify!(struResonseParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_RESPONSE_CMD), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SCREEN_RESPONSE_CMD = tagNET_DVR_SCREEN_RESPONSE_CMD; +pub type LPNET_DVR_SCREEN_RESPONSE_CMD = *mut tagNET_DVR_SCREEN_RESPONSE_CMD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCREEN_FILE_COND { + pub dwSize: DWORD, + pub byFileType: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEN_FILE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEN_FILE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREEN_FILE_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_FILE_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_FILE_COND), + "::", + stringify!(byFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_FILE_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCREEN_FILE_COND = tagNET_DVR_SCREEN_FILE_COND; +pub type LPNET_DVR_SCREEN_FILE_COND = *mut tagNET_DVR_SCREEN_FILE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCREEN_FILE_INFO { + pub dwSize: DWORD, + pub dwFileIndex: DWORD, + pub byFileType: BYTE, + pub byPictureFormat: BYTE, + pub byVideoFormat: BYTE, + pub byDocumentFormat: BYTE, + pub byFileName: [BYTE; 256usize], + pub dwFileSize: DWORD, + pub dwPPTPage: DWORD, + pub byOtherFileFormat: [BYTE; 8usize], + pub byRes1: [BYTE; 56usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEN_FILE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 340usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEN_FILE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREEN_FILE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_FILE_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_FILE_INFO), + "::", + stringify!(dwFileIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_FILE_INFO), + "::", + stringify!(byFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPictureFormat) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_FILE_INFO), + "::", + stringify!(byPictureFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoFormat) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_FILE_INFO), + "::", + stringify!(byVideoFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDocumentFormat) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_FILE_INFO), + "::", + stringify!(byDocumentFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileName) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_FILE_INFO), + "::", + stringify!(byFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileSize) as usize - ptr as usize }, + 268usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_FILE_INFO), + "::", + stringify!(dwFileSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPPTPage) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_FILE_INFO), + "::", + stringify!(dwPPTPage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOtherFileFormat) as usize - ptr as usize }, + 276usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_FILE_INFO), + "::", + stringify!(byOtherFileFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 284usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_FILE_INFO), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_SCREEN_FILE_INFO = tagNET_DVR_SCREEN_FILE_INFO; +pub type LPNET_DVR_SCREEN_FILE_INFO = *mut tagNET_DVR_SCREEN_FILE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCREEN_CONFIG { + pub dwSize: DWORD, + pub byVolume: BYTE, + pub byContrast: BYTE, + pub byBrightness: BYTE, + pub byScreenShowEnabled: BYTE, + pub byScreenLocked: BYTE, + pub byBlackScreenEnabled: BYTE, + pub byRes: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEN_CONFIG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 40usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEN_CONFIG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCREEN_CONFIG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONFIG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVolume) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONFIG), + "::", + stringify!(byVolume) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byContrast) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONFIG), + "::", + stringify!(byContrast) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrightness) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONFIG), + "::", + stringify!(byBrightness) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScreenShowEnabled) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONFIG), + "::", + stringify!(byScreenShowEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScreenLocked) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONFIG), + "::", + stringify!(byScreenLocked) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBlackScreenEnabled) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONFIG), + "::", + stringify!(byBlackScreenEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEN_CONFIG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCREEN_CONFIG = tagNET_DVR_SCREEN_CONFIG; +pub type LPNET_DVR_SCREEN_CONFIG = *mut tagNET_DVR_SCREEN_CONFIG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCREEM_FILE_UPLOAD_PARAM { + pub dwSize: DWORD, + pub byFileType: BYTE, + pub byPictureFormat: BYTE, + pub byVideoFormat: BYTE, + pub byDocumentFormat: BYTE, + pub byFileName: [BYTE; 256usize], + pub byOtherFileFormat: [BYTE; 8usize], + pub byRes1: [BYTE; 56usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEM_FILE_UPLOAD_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 328usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCREEM_FILE_UPLOAD_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SCREEM_FILE_UPLOAD_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEM_FILE_UPLOAD_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEM_FILE_UPLOAD_PARAM), + "::", + stringify!(byFileType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPictureFormat) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEM_FILE_UPLOAD_PARAM), + "::", + stringify!(byPictureFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVideoFormat) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEM_FILE_UPLOAD_PARAM), + "::", + stringify!(byVideoFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDocumentFormat) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEM_FILE_UPLOAD_PARAM), + "::", + stringify!(byDocumentFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEM_FILE_UPLOAD_PARAM), + "::", + stringify!(byFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOtherFileFormat) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEM_FILE_UPLOAD_PARAM), + "::", + stringify!(byOtherFileFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEM_FILE_UPLOAD_PARAM), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_SCREEM_FILE_UPLOAD_PARAM = tagNET_DVR_SCREEM_FILE_UPLOAD_PARAM; +pub type LPNET_DVR_SCREEM_FILE_UPLOAD_PARAM = *mut tagNET_DVR_SCREEM_FILE_UPLOAD_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCREEM_FILE_DOWNLOAD_PARAM { + pub dwSize: DWORD, + pub dwFileIndex: DWORD, + pub dwPPTPageNo: DWORD, + pub byRes2: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCREEM_FILE_DOWNLOAD_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SCREEM_FILE_DOWNLOAD_PARAM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SCREEM_FILE_DOWNLOAD_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEM_FILE_DOWNLOAD_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileIndex) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEM_FILE_DOWNLOAD_PARAM), + "::", + stringify!(dwFileIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPPTPageNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEM_FILE_DOWNLOAD_PARAM), + "::", + stringify!(dwPPTPageNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCREEM_FILE_DOWNLOAD_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_SCREEM_FILE_DOWNLOAD_PARAM = tagNET_DVR_SCREEM_FILE_DOWNLOAD_PARAM; +pub type LPNET_DVR_SCREEM_FILE_DOWNLOAD_PARAM = *mut tagNET_DVR_SCREEM_FILE_DOWNLOAD_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TV_SCREEN_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub wTVScreenNo: WORD, + pub byRes: [BYTE; 62usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TV_SCREEN_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_TV_SCREEN_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TV_SCREEN_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TV_SCREEN_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TV_SCREEN_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wTVScreenNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TV_SCREEN_COND), + "::", + stringify!(wTVScreenNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TV_SCREEN_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TV_SCREEN_COND = tagNET_DVR_TV_SCREEN_COND; +pub type LPNET_DVR_TV_SCREEN_COND = *mut tagNET_DVR_TV_SCREEN_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TV_SCREEN_CFG { + pub dwSize: DWORD, + pub dwPicStayTime: DWORD, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TV_SCREEN_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_DVR_TV_SCREEN_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TV_SCREEN_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TV_SCREEN_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicStayTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TV_SCREEN_CFG), + "::", + stringify!(dwPicStayTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TV_SCREEN_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TV_SCREEN_CFG = tagNET_DVR_TV_SCREEN_CFG; +pub type LPNET_DVR_TV_SCREEN_CFG = *mut tagNET_DVR_TV_SCREEN_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BV_CALIB_COND { + pub dwSize: DWORD, + pub dwChannels: DWORD, + pub byRes: [BYTE; 300usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BV_CALIB_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 308usize, + concat!("Size of: ", stringify!(tagNET_DVR_BV_CALIB_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BV_CALIB_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannels) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_COND), + "::", + stringify!(dwChannels) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BV_CALIB_COND = tagNET_DVR_BV_CALIB_COND; +pub type LPNET_DVR_BV_CALIB_COND = *mut tagNET_DVR_BV_CALIB_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BV_CALIB_PIC { + pub dwSize: DWORD, + pub dwPicID: DWORD, + pub dwPicLen1: DWORD, + pub dwPicLen2: DWORD, + pub pPicBuffer1: *mut ::std::os::raw::c_char, + pub pPicBuffer2: *mut ::std::os::raw::c_char, + pub byRes: [BYTE; 600usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BV_CALIB_PIC() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 632usize, + concat!("Size of: ", stringify!(tagNET_DVR_BV_CALIB_PIC)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BV_CALIB_PIC)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_PIC), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_PIC), + "::", + stringify!(dwPicID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicLen1) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_PIC), + "::", + stringify!(dwPicLen1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicLen2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_PIC), + "::", + stringify!(dwPicLen2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPicBuffer1) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_PIC), + "::", + stringify!(pPicBuffer1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPicBuffer2) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_PIC), + "::", + stringify!(pPicBuffer2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_PIC), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BV_CALIB_PIC = tagNET_DVR_BV_CALIB_PIC; +pub type LPNET_DVR_BV_CALIB_PIC = *mut tagNET_DVR_BV_CALIB_PIC; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BV_CALIB_PARAM { + pub dwPicID: DWORD, + pub struPoint: NET_VCA_POINT, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BV_CALIB_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_BV_CALIB_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BV_CALIB_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_PARAM), + "::", + stringify!(dwPicID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPoint) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_PARAM), + "::", + stringify!(struPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BV_CALIB_PARAM = tagNET_DVR_BV_CALIB_PARAM; +pub type LPNET_DVR_BV_CALIB_PARAM = *mut tagNET_DVR_BV_CALIB_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BV_CALIB_INFO { + pub dwSize: DWORD, + pub dwBVCalibNumber: DWORD, + pub struBVCalibParam: [NET_DVR_BV_CALIB_PARAM; 12usize], + pub dwHumanHeight: DWORD, + pub dwChannel: DWORD, + pub byRes: [BYTE; 300usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BV_CALIB_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 844usize, + concat!("Size of: ", stringify!(tagNET_DVR_BV_CALIB_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BV_CALIB_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBVCalibNumber) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_INFO), + "::", + stringify!(dwBVCalibNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBVCalibParam) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_INFO), + "::", + stringify!(struBVCalibParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHumanHeight) as usize - ptr as usize }, + 536usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_INFO), + "::", + stringify!(dwHumanHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 540usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_INFO), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 544usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BV_CALIB_INFO = tagNET_DVR_BV_CALIB_INFO; +pub type LPNET_DVR_BV_CALIB_INFO = *mut tagNET_DVR_BV_CALIB_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BV_CALIB_RESULT { + pub dwSize: DWORD, + pub dwCameraHeight: DWORD, + pub fPitchAngle: f32, + pub fInclineAngle: f32, + pub byRes: [BYTE; 300usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BV_CALIB_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 316usize, + concat!("Size of: ", stringify!(tagNET_DVR_BV_CALIB_RESULT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BV_CALIB_RESULT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_RESULT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCameraHeight) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_RESULT), + "::", + stringify!(dwCameraHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fPitchAngle) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_RESULT), + "::", + stringify!(fPitchAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fInclineAngle) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_RESULT), + "::", + stringify!(fInclineAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_CALIB_RESULT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BV_CALIB_RESULT = tagNET_DVR_BV_CALIB_RESULT; +pub type LPNET_DVR_BV_CALIB_RESULT = *mut tagNET_DVR_BV_CALIB_RESULT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BV_HCORRECTION_COND { + pub dwSize: DWORD, + pub dwChannels: DWORD, + pub dwPicID: DWORD, + pub byRes: [BYTE; 300usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BV_HCORRECTION_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 312usize, + concat!("Size of: ", stringify!(tagNET_DVR_BV_HCORRECTION_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BV_HCORRECTION_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_HCORRECTION_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannels) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_HCORRECTION_COND), + "::", + stringify!(dwChannels) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_HCORRECTION_COND), + "::", + stringify!(dwPicID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_HCORRECTION_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BV_HCORRECTION_COND = tagNET_DVR_BV_HCORRECTION_COND; +pub type LPNET_DVR_BV_HCORRECTION_COND = *mut tagNET_DVR_BV_HCORRECTION_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BV_HCORRECTION_CFG { + pub dwSize: DWORD, + pub dwHumanHeight: DWORD, + pub byRes: [BYTE; 300usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BV_HCORRECTION_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 308usize, + concat!("Size of: ", stringify!(tagNET_DVR_BV_HCORRECTION_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BV_HCORRECTION_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_HCORRECTION_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHumanHeight) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_HCORRECTION_CFG), + "::", + stringify!(dwHumanHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BV_HCORRECTION_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BV_HCORRECTION_CFG = tagNET_DVR_BV_HCORRECTION_CFG; +pub type LPNET_DVR_BV_HCORRECTION_CFG = *mut tagNET_DVR_BV_HCORRECTION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TMEVOICE_CFG { + pub dwSize: DWORD, + pub byVoiceSpeed: BYTE, + pub byVoicePitch: BYTE, + pub byVoiceVolum: BYTE, + pub byVoicePlateEnable: BYTE, + pub dwVoiceRole: DWORD, + pub sInfo: [::std::os::raw::c_char; 64usize], + pub sFileName: [::std::os::raw::c_char; 64usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TMEVOICE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 204usize, + concat!("Size of: ", stringify!(tagNET_DVR_TMEVOICE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TMEVOICE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TMEVOICE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVoiceSpeed) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TMEVOICE_CFG), + "::", + stringify!(byVoiceSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVoicePitch) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TMEVOICE_CFG), + "::", + stringify!(byVoicePitch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVoiceVolum) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TMEVOICE_CFG), + "::", + stringify!(byVoiceVolum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byVoicePlateEnable) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TMEVOICE_CFG), + "::", + stringify!(byVoicePlateEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVoiceRole) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TMEVOICE_CFG), + "::", + stringify!(dwVoiceRole) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TMEVOICE_CFG), + "::", + stringify!(sInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFileName) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TMEVOICE_CFG), + "::", + stringify!(sFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TMEVOICE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TMEVOICE_CFG = tagNET_DVR_TMEVOICE_CFG; +pub type LPNET_DVR_TMEVOICE_CFG = *mut tagNET_DVR_TMEVOICE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INPUT_BOARD_CFG { + pub dwSize: DWORD, + pub dwSlotNo: DWORD, + pub byFullFrameEnable: BYTE, + pub byRes: [BYTE; 3usize], + pub byRes1: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INPUT_BOARD_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 76usize, + concat!("Size of: ", stringify!(tagNET_DVR_INPUT_BOARD_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INPUT_BOARD_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_BOARD_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSlotNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_BOARD_CFG), + "::", + stringify!(dwSlotNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFullFrameEnable) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_BOARD_CFG), + "::", + stringify!(byFullFrameEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_BOARD_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_BOARD_CFG), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_INPUT_BOARD_CFG = tagNET_DVR_INPUT_BOARD_CFG; +pub type LPNET_DVR_INPUT_BOARD_CFG = *mut tagNET_DVR_INPUT_BOARD_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INPUT_BOARD_CFG_LIST { + pub dwSize: DWORD, + pub struBoardList: [NET_DVR_INPUT_BOARD_CFG; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INPUT_BOARD_CFG_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 38916usize, + concat!("Size of: ", stringify!(tagNET_DVR_INPUT_BOARD_CFG_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INPUT_BOARD_CFG_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_BOARD_CFG_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBoardList) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_BOARD_CFG_LIST), + "::", + stringify!(struBoardList) + ) + ); +} +pub type NET_DVR_INPUT_BOARD_CFG_LIST = tagNET_DVR_INPUT_BOARD_CFG_LIST; +pub type LPNET_DVR_INPUT_BOARD_CFG_LIST = *mut tagNET_DVR_INPUT_BOARD_CFG_LIST; +#[doc = "��ȫ������Ƶ���������Ϣ��ȫ begin"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_ENCRYPT_DEVICE_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byAlgorithm: BYTE, + pub byModelLen: BYTE, + pub byCERTSaveLocation: BYTE, + pub byRes: [BYTE; 29usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_ENCRYPT_DEVICE_COND() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_ENCRYPT_DEVICE_COND> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_ENCRYPT_DEVICE_COND>(), + 40usize, + concat!("Size of: ", stringify!(_NET_DVR_ENCRYPT_DEVICE_COND)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_ENCRYPT_DEVICE_COND>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_ENCRYPT_DEVICE_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ENCRYPT_DEVICE_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ENCRYPT_DEVICE_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlgorithm) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ENCRYPT_DEVICE_COND), + "::", + stringify!(byAlgorithm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byModelLen) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ENCRYPT_DEVICE_COND), + "::", + stringify!(byModelLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCERTSaveLocation) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ENCRYPT_DEVICE_COND), + "::", + stringify!(byCERTSaveLocation) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ENCRYPT_DEVICE_COND), + "::", + stringify!(byRes) + ) + ); +} +#[doc = "��ȫ������Ƶ���������Ϣ��ȫ begin"] +pub type NET_DVR_ENCRYPT_DEVICE_COND = _NET_DVR_ENCRYPT_DEVICE_COND; +#[doc = "��ȫ������Ƶ���������Ϣ��ȫ begin"] +pub type LPNET_DVR_ENCRYPT_DEVICE_COND = *mut _NET_DVR_ENCRYPT_DEVICE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_ENCRYPT_DEVICE_INFO { + pub dwSize: DWORD, + pub byAlgorithm: BYTE, + pub byModelLen: BYTE, + pub byRes1: [BYTE; 30usize], + pub dwPublicKeyLen: DWORD, + pub szPublicKey: [::std::os::raw::c_char; 512usize], + pub szChipSerialNumber: [::std::os::raw::c_char; 32usize], + pub szDeviceID: [::std::os::raw::c_char; 20usize], + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_ENCRYPT_DEVICE_INFO() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_ENCRYPT_DEVICE_INFO> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_ENCRYPT_DEVICE_INFO>(), + 732usize, + concat!("Size of: ", stringify!(_NET_DVR_ENCRYPT_DEVICE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_ENCRYPT_DEVICE_INFO>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_ENCRYPT_DEVICE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ENCRYPT_DEVICE_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlgorithm) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ENCRYPT_DEVICE_INFO), + "::", + stringify!(byAlgorithm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byModelLen) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ENCRYPT_DEVICE_INFO), + "::", + stringify!(byModelLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ENCRYPT_DEVICE_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPublicKeyLen) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ENCRYPT_DEVICE_INFO), + "::", + stringify!(dwPublicKeyLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szPublicKey) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ENCRYPT_DEVICE_INFO), + "::", + stringify!(szPublicKey) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szChipSerialNumber) as usize - ptr as usize }, + 552usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ENCRYPT_DEVICE_INFO), + "::", + stringify!(szChipSerialNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szDeviceID) as usize - ptr as usize }, + 584usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ENCRYPT_DEVICE_INFO), + "::", + stringify!(szDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 604usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ENCRYPT_DEVICE_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_ENCRYPT_DEVICE_INFO = _NET_DVR_ENCRYPT_DEVICE_INFO; +pub type LPNET_DVR_ENCRYPT_DEVICE_INFO = *mut _NET_DVR_ENCRYPT_DEVICE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_ENCRYPT_CERT_PARAM { + pub dwSize: DWORD, + pub wCertType: WORD, + pub byRes1: [BYTE; 2usize], + pub dwCertLen: DWORD, + pub byRes2: [BYTE; 32usize], + pub pCertBuf: *mut ::std::os::raw::c_char, +} +#[test] +fn bindgen_test_layout__NET_DVR_ENCRYPT_CERT_PARAM() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_ENCRYPT_CERT_PARAM> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_ENCRYPT_CERT_PARAM>(), + 56usize, + concat!("Size of: ", stringify!(_NET_DVR_ENCRYPT_CERT_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_ENCRYPT_CERT_PARAM>(), + 8usize, + concat!("Alignment of ", stringify!(_NET_DVR_ENCRYPT_CERT_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ENCRYPT_CERT_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCertType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ENCRYPT_CERT_PARAM), + "::", + stringify!(wCertType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ENCRYPT_CERT_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCertLen) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ENCRYPT_CERT_PARAM), + "::", + stringify!(dwCertLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ENCRYPT_CERT_PARAM), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pCertBuf) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_ENCRYPT_CERT_PARAM), + "::", + stringify!(pCertBuf) + ) + ); +} +pub type NET_DVR_ENCRYPT_CERT_PARAM = _NET_DVR_ENCRYPT_CERT_PARAM; +pub type LPNET_DVR_ENCRYPT_CERT_PARAM = *mut _NET_DVR_ENCRYPT_CERT_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RING_UPLOAD_CFG { + pub dwSize: DWORD, + pub dwRingID: DWORD, + pub byRingName: [BYTE; 128usize], + pub dwRingSize: DWORD, + pub byRingType: BYTE, + pub byRes: [BYTE; 363usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RING_UPLOAD_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 504usize, + concat!("Size of: ", stringify!(tagNET_DVR_RING_UPLOAD_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RING_UPLOAD_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RING_UPLOAD_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRingID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RING_UPLOAD_CFG), + "::", + stringify!(dwRingID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRingName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RING_UPLOAD_CFG), + "::", + stringify!(byRingName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRingSize) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RING_UPLOAD_CFG), + "::", + stringify!(dwRingSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRingType) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RING_UPLOAD_CFG), + "::", + stringify!(byRingType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 141usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RING_UPLOAD_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RING_UPLOAD_CFG = tagNET_DVR_RING_UPLOAD_CFG; +pub type LPNET_DVR_RING_UPLOAD_CFG = *mut tagNET_DVR_RING_UPLOAD_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RING_SEARCH_COND { + pub dwSize: DWORD, + pub dwRingID: DWORD, + pub byRes: [BYTE; 300usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RING_SEARCH_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 308usize, + concat!("Size of: ", stringify!(tagNET_DVR_RING_SEARCH_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RING_SEARCH_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RING_SEARCH_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRingID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RING_SEARCH_COND), + "::", + stringify!(dwRingID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RING_SEARCH_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RING_SEARCH_COND = tagNET_DVR_RING_SEARCH_COND; +pub type LPNET_DVR_RING_SEARCH_COND = *mut tagNET_DVR_RING_SEARCH_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RING_SEARCH_CFG { + pub dwSize: DWORD, + pub dwRingID: DWORD, + pub byRingName: [BYTE; 128usize], + pub dwRingSize: DWORD, + pub byRingType: BYTE, + pub byRes: [BYTE; 303usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RING_SEARCH_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 444usize, + concat!("Size of: ", stringify!(tagNET_DVR_RING_SEARCH_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RING_SEARCH_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RING_SEARCH_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRingID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RING_SEARCH_CFG), + "::", + stringify!(dwRingID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRingName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RING_SEARCH_CFG), + "::", + stringify!(byRingName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRingSize) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RING_SEARCH_CFG), + "::", + stringify!(dwRingSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRingType) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RING_SEARCH_CFG), + "::", + stringify!(byRingType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 141usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RING_SEARCH_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RING_SEARCH_CFG = tagNET_DVR_RING_SEARCH_CFG; +pub type LPNET_DVR_RING_SEARCH_CFG = *mut tagNET_DVR_RING_SEARCH_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMCTRL_CFG { + pub dwSize: DWORD, + pub byListenPicUploadEnabled: BYTE, + pub byRes: [BYTE; 259usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMCTRL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMCTRL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMCTRL_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMCTRL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byListenPicUploadEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMCTRL_CFG), + "::", + stringify!(byListenPicUploadEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMCTRL_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMCTRL_CFG = tagNET_DVR_ALARMCTRL_CFG; +pub type LPNET_DVR_ALARMCTRL_CFG = *mut tagNET_DVR_ALARMCTRL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VEHICLEFLOW_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byLane: BYTE, + pub byRes1: [BYTE; 3usize], + pub struStartTime: NET_DVR_TIME_V30, + pub struEndTime: NET_DVR_TIME_V30, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VEHICLEFLOW_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 292usize, + concat!("Size of: ", stringify!(tagNET_DVR_VEHICLEFLOW_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VEHICLEFLOW_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLEFLOW_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLEFLOW_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLane) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLEFLOW_COND), + "::", + stringify!(byLane) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLEFLOW_COND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLEFLOW_COND), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLEFLOW_COND), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLEFLOW_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VEHICLEFLOW_COND = tagNET_DVR_VEHICLEFLOW_COND; +pub type LPNET_DVR_VEHICLEFLOW_COND = *mut tagNET_DVR_VEHICLEFLOW_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VEHICLEFLOW_INFO { + pub dwVehicleFlowValue: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VEHICLEFLOW_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_VEHICLEFLOW_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VEHICLEFLOW_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVehicleFlowValue) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLEFLOW_INFO), + "::", + stringify!(dwVehicleFlowValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLEFLOW_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VEHICLEFLOW_INFO = tagNET_DVR_VEHICLEFLOW_INFO; +pub type LPNET_DVR_VEHICLEFLOW_INFO = *mut tagNET_DVR_VEHICLEFLOW_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VEHICLEFLOW_CFG { + pub dwSize: DWORD, + pub struVehFlow: [NET_DVR_VEHICLEFLOW_INFO; 24usize], + pub byRes: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VEHICLEFLOW_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2148usize, + concat!("Size of: ", stringify!(tagNET_DVR_VEHICLEFLOW_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VEHICLEFLOW_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLEFLOW_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVehFlow) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLEFLOW_CFG), + "::", + stringify!(struVehFlow) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1636usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VEHICLEFLOW_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VEHICLEFLOW_CFG = tagNET_DVR_VEHICLEFLOW_CFG; +pub type LPNET_DVR_VEHICLEFLOW_CFG = *mut tagNET_DVR_VEHICLEFLOW_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_IPADDR_FILTER_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_IPADDR_FILTER_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_IPADDR_FILTER_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_IPADDR_FILTER_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPADDR_FILTER_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPADDR_FILTER_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_IPADDR_FILTER_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_IPADDR_FILTER_COND = tagNET_DVR_IPADDR_FILTER_COND; +pub type LPNET_DVR_IPADDR_FILTER_COND = *mut tagNET_DVR_IPADDR_FILTER_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TEMPHUMSENSOR { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byCtrlMode: BYTE, + pub byTemperatureValue: BYTE, + pub byHumidityValue: BYTE, + pub byFanSwitch: BYTE, + pub byThermometryUnit: BYTE, + pub byRes: [BYTE; 62usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TEMPHUMSENSOR() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_TEMPHUMSENSOR)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TEMPHUMSENSOR)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMPHUMSENSOR), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMPHUMSENSOR), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCtrlMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMPHUMSENSOR), + "::", + stringify!(byCtrlMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTemperatureValue) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMPHUMSENSOR), + "::", + stringify!(byTemperatureValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHumidityValue) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMPHUMSENSOR), + "::", + stringify!(byHumidityValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFanSwitch) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMPHUMSENSOR), + "::", + stringify!(byFanSwitch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byThermometryUnit) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMPHUMSENSOR), + "::", + stringify!(byThermometryUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMPHUMSENSOR), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TEMPHUMSENSOR = tagNET_DVR_TEMPHUMSENSOR; +pub type LPNET_DVR_TEMPHUMSENSOR = *mut tagNET_DVR_TEMPHUMSENSOR; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_POSTRADARSPEED_CFG { + pub dwSize: DWORD, + pub byLaneType: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwInterval: DWORD, + pub dwSignSpeed: DWORD, + pub dwSpeedLimit: DWORD, + pub dwBigCarSignSpeed: DWORD, + pub dwBigCarSpeedLimit: DWORD, + pub dwLowSpeedLimit: DWORD, + pub dwBigCarLowSpeedLimit: DWORD, + pub byCheckPostEnabled: BYTE, + pub byOverSpeedEnabled: BYTE, + pub byRes: [BYTE; 246usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_POSTRADARSPEED_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 284usize, + concat!("Size of: ", stringify!(tagNET_DVR_POSTRADARSPEED_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_POSTRADARSPEED_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTRADARSPEED_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLaneType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTRADARSPEED_CFG), + "::", + stringify!(byLaneType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTRADARSPEED_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInterval) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTRADARSPEED_CFG), + "::", + stringify!(dwInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSignSpeed) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTRADARSPEED_CFG), + "::", + stringify!(dwSignSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSpeedLimit) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTRADARSPEED_CFG), + "::", + stringify!(dwSpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBigCarSignSpeed) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTRADARSPEED_CFG), + "::", + stringify!(dwBigCarSignSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBigCarSpeedLimit) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTRADARSPEED_CFG), + "::", + stringify!(dwBigCarSpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLowSpeedLimit) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTRADARSPEED_CFG), + "::", + stringify!(dwLowSpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBigCarLowSpeedLimit) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTRADARSPEED_CFG), + "::", + stringify!(dwBigCarLowSpeedLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCheckPostEnabled) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTRADARSPEED_CFG), + "::", + stringify!(byCheckPostEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverSpeedEnabled) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTRADARSPEED_CFG), + "::", + stringify!(byOverSpeedEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTRADARSPEED_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_POSTRADARSPEED_CFG = tagNET_DVR_POSTRADARSPEED_CFG; +pub type LPNET_DVR_POSTRADARSPEED_CFG = *mut tagNET_DVR_POSTRADARSPEED_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_POSTRADARPARAM_CFG { + pub dwSize: DWORD, + pub bySoftWareVersion: [BYTE; 32usize], + pub byID: BYTE, + pub byWorkMode: BYTE, + pub bySpeedType: BYTE, + pub byDirectionFilter: BYTE, + pub dwAngleCorrect: DWORD, + pub dwSensitivity: DWORD, + pub dwSpeedLowLimit: DWORD, + pub dwTrigDistance: DWORD, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_POSTRADARPARAM_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 312usize, + concat!("Size of: ", stringify!(tagNET_DVR_POSTRADARPARAM_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_POSTRADARPARAM_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTRADARPARAM_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySoftWareVersion) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTRADARPARAM_CFG), + "::", + stringify!(bySoftWareVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byID) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTRADARPARAM_CFG), + "::", + stringify!(byID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWorkMode) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTRADARPARAM_CFG), + "::", + stringify!(byWorkMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpeedType) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTRADARPARAM_CFG), + "::", + stringify!(bySpeedType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDirectionFilter) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTRADARPARAM_CFG), + "::", + stringify!(byDirectionFilter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAngleCorrect) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTRADARPARAM_CFG), + "::", + stringify!(dwAngleCorrect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSensitivity) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTRADARPARAM_CFG), + "::", + stringify!(dwSensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSpeedLowLimit) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTRADARPARAM_CFG), + "::", + stringify!(dwSpeedLowLimit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTrigDistance) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTRADARPARAM_CFG), + "::", + stringify!(dwTrigDistance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POSTRADARPARAM_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_POSTRADARPARAM_CFG = tagNET_DVR_POSTRADARPARAM_CFG; +pub type LPNET_DVR_POSTRADARPARAM_CFG = *mut tagNET_DVR_POSTRADARPARAM_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CLOUD_URL_COND { + pub dwSize: DWORD, + pub byType: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CLOUD_URL_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_CLOUD_URL_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CLOUD_URL_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_URL_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_URL_COND), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_URL_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CLOUD_URL_COND = tagNET_DVR_CLOUD_URL_COND; +pub type LPNET_DVR_CLOUD_URL_COND = *mut tagNET_DVR_CLOUD_URL_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CLOUD_URL { + pub dwSize: DWORD, + pub szURL: [::std::os::raw::c_char; 256usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CLOUD_URL() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 516usize, + concat!("Size of: ", stringify!(tagNET_DVR_CLOUD_URL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CLOUD_URL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_URL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szURL) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_URL), + "::", + stringify!(szURL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_URL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CLOUD_URL = tagNET_DVR_CLOUD_URL; +pub type LPNET_DVR_CLOUD_URL = *mut tagNET_DVR_CLOUD_URL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CLOUD_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byType: BYTE, + pub byStatus: BYTE, + pub byRes1: BYTE, + pub szAuthCode: [::std::os::raw::c_char; 64usize], + pub szAlias: [::std::os::raw::c_char; 32usize], + pub i64TotalCapability: INT64, + pub i64UsedSpace: INT64, + pub byRes2: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CLOUD_CFG() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 376usize, + concat!("Size of: ", stringify!(tagNET_DVR_CLOUD_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CLOUD_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_CFG), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_CFG), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szAuthCode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_CFG), + "::", + stringify!(szAuthCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szAlias) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_CFG), + "::", + stringify!(szAlias) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i64TotalCapability) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_CFG), + "::", + stringify!(i64TotalCapability) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i64UsedSpace) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_CFG), + "::", + stringify!(i64UsedSpace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_CFG), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_CLOUD_CFG = tagNET_DVR_CLOUD_CFG; +pub type LPNET_DVR_CLOUD_CFG = *mut tagNET_DVR_CLOUD_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CLOUD_UPLOADSTRATEGY_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRes: [BYTE; 254usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CLOUD_UPLOADSTRATEGY_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_CLOUD_UPLOADSTRATEGY_COND) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_CLOUD_UPLOADSTRATEGY_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_UPLOADSTRATEGY_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_UPLOADSTRATEGY_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_UPLOADSTRATEGY_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CLOUD_UPLOADSTRATEGY_COND = tagNET_DVR_CLOUD_UPLOADSTRATEGY_COND; +pub type LPNET_DVR_CLOUD_UPLOADSTRATEGY_COND = *mut tagNET_DVR_CLOUD_UPLOADSTRATEGY_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CLOUD_UPLOADSTRATEGY { + pub dwSize: DWORD, + pub byStrategyType: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwRecordType: DWORD, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CLOUD_UPLOADSTRATEGY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 268usize, + concat!("Size of: ", stringify!(tagNET_DVR_CLOUD_UPLOADSTRATEGY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CLOUD_UPLOADSTRATEGY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_UPLOADSTRATEGY), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStrategyType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_UPLOADSTRATEGY), + "::", + stringify!(byStrategyType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_UPLOADSTRATEGY), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordType) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_UPLOADSTRATEGY), + "::", + stringify!(dwRecordType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CLOUD_UPLOADSTRATEGY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CLOUD_UPLOADSTRATEGY = tagNET_DVR_CLOUD_UPLOADSTRATEGY; +pub type LPNET_DVR_CLOUD_UPLOADSTRATEGY = *mut tagNET_DVR_CLOUD_UPLOADSTRATEGY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECORD_CHECK_COND { + pub dwSize: DWORD, + pub struStreamInfo: NET_DVR_STREAM_INFO, + pub byCheckType: BYTE, + pub byRes1: [BYTE; 3usize], + pub struBeginTime: NET_DVR_TIME_EX, + pub struEndTime: NET_DVR_TIME_EX, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECORD_CHECK_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 224usize, + concat!("Size of: ", stringify!(tagNET_DVR_RECORD_CHECK_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RECORD_CHECK_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_CHECK_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_CHECK_COND), + "::", + stringify!(struStreamInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCheckType) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_CHECK_COND), + "::", + stringify!(byCheckType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 77usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_CHECK_COND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBeginTime) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_CHECK_COND), + "::", + stringify!(struBeginTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_CHECK_COND), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_CHECK_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RECORD_CHECK_COND = tagNET_DVR_RECORD_CHECK_COND; +pub type LPNET_DVR_RECORD_CHECK_COND = *mut tagNET_DVR_RECORD_CHECK_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECORD_CHECK_RET { + pub dwSize: DWORD, + pub byRecordNotComplete: BYTE, + pub byRes1: [BYTE; 3usize], + pub struBeginTime: NET_DVR_TIME_EX, + pub struEndTime: NET_DVR_TIME_EX, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECORD_CHECK_RET() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 152usize, + concat!("Size of: ", stringify!(tagNET_DVR_RECORD_CHECK_RET)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RECORD_CHECK_RET)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_CHECK_RET), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecordNotComplete) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_CHECK_RET), + "::", + stringify!(byRecordNotComplete) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_CHECK_RET), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBeginTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_CHECK_RET), + "::", + stringify!(struBeginTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_CHECK_RET), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_CHECK_RET), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RECORD_CHECK_RET = tagNET_DVR_RECORD_CHECK_RET; +pub type LPNET_DVR_RECORD_CHECK_RET = *mut tagNET_DVR_RECORD_CHECK_RET; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ADD_RECORD_PASSBACK_MANUAL_COND { + pub dwSize: DWORD, + pub struStreamInfo: NET_DVR_STREAM_INFO, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ADD_RECORD_PASSBACK_MANUAL_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 204usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ADD_RECORD_PASSBACK_MANUAL_COND) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ADD_RECORD_PASSBACK_MANUAL_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADD_RECORD_PASSBACK_MANUAL_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADD_RECORD_PASSBACK_MANUAL_COND), + "::", + stringify!(struStreamInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADD_RECORD_PASSBACK_MANUAL_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ADD_RECORD_PASSBACK_MANUAL_COND = tagNET_DVR_ADD_RECORD_PASSBACK_MANUAL_COND; +pub type LPNET_DVR_ADD_RECORD_PASSBACK_MANUAL_COND = + *mut tagNET_DVR_ADD_RECORD_PASSBACK_MANUAL_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ADD_RECORD_PASSBACK_MANUAL_CFG { + pub dwSize: DWORD, + pub struBeginTime: NET_DVR_TIME_EX, + pub struEndTime: NET_DVR_TIME_EX, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ADD_RECORD_PASSBACK_MANUAL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 148usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ADD_RECORD_PASSBACK_MANUAL_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ADD_RECORD_PASSBACK_MANUAL_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADD_RECORD_PASSBACK_MANUAL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBeginTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADD_RECORD_PASSBACK_MANUAL_CFG), + "::", + stringify!(struBeginTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADD_RECORD_PASSBACK_MANUAL_CFG), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADD_RECORD_PASSBACK_MANUAL_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ADD_RECORD_PASSBACK_MANUAL_CFG = tagNET_DVR_ADD_RECORD_PASSBACK_MANUAL_CFG; +pub type LPNET_DVR_ADD_RECORD_PASSBACK_MANUAL_CFG = *mut tagNET_DVR_ADD_RECORD_PASSBACK_MANUAL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECORD_PASSBACK_TASK_CFG { + pub dwSize: DWORD, + pub dwTaskID: DWORD, + pub byRes: [BYTE; 160usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECORD_PASSBACK_TASK_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 168usize, + concat!("Size of: ", stringify!(tagNET_DVR_RECORD_PASSBACK_TASK_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_RECORD_PASSBACK_TASK_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_TASK_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTaskID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_TASK_CFG), + "::", + stringify!(dwTaskID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_TASK_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RECORD_PASSBACK_TASK_CFG = tagNET_DVR_RECORD_PASSBACK_TASK_CFG; +pub type LPNET_DVR_RECORD_PASSBACK_TASK_CFG = *mut tagNET_DVR_RECORD_PASSBACK_TASK_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECORD_PASSBACK_MANUAL_COND { + pub dwSize: DWORD, + pub byType: BYTE, + pub byTimeSegmentQuety: BYTE, + pub byRes1: [BYTE; 2usize], + pub struStreamInfo: NET_DVR_STREAM_INFO, + pub struBeginTime: NET_DVR_TIME_EX, + pub struEndTime: NET_DVR_TIME_EX, + pub dwTaskID: DWORD, + pub byRes: [BYTE; 108usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECORD_PASSBACK_MANUAL_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 208usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_COND) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_COND), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeSegmentQuety) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_COND), + "::", + stringify!(byTimeSegmentQuety) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_COND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_COND), + "::", + stringify!(struStreamInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBeginTime) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_COND), + "::", + stringify!(struBeginTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_COND), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTaskID) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_COND), + "::", + stringify!(dwTaskID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RECORD_PASSBACK_MANUAL_COND = tagNET_DVR_RECORD_PASSBACK_MANUAL_COND; +pub type LPNET_DVR_RECORD_PASSBACK_MANUAL_COND = *mut tagNET_DVR_RECORD_PASSBACK_MANUAL_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECORD_PASSBACK_MANUAL_TASK_RET { + pub dwSize: DWORD, + pub struStreamInfo: NET_DVR_STREAM_INFO, + pub dwTaskID: DWORD, + pub struStartTime: NET_DVR_TIME_EX, + pub struStopTime: NET_DVR_TIME_EX, + pub byTaskStatus: BYTE, + pub byRes1: [BYTE; 3usize], + pub struExecuteStartTime: NET_DVR_TIME_EX, + pub struExecuteStopTime: NET_DVR_TIME_EX, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECORD_PASSBACK_MANUAL_TASK_RET() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 244usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_TASK_RET) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_TASK_RET) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_TASK_RET), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_TASK_RET), + "::", + stringify!(struStreamInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTaskID) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_TASK_RET), + "::", + stringify!(dwTaskID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_TASK_RET), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_TASK_RET), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTaskStatus) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_TASK_RET), + "::", + stringify!(byTaskStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 97usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_TASK_RET), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struExecuteStartTime) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_TASK_RET), + "::", + stringify!(struExecuteStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struExecuteStopTime) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_TASK_RET), + "::", + stringify!(struExecuteStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_TASK_RET), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RECORD_PASSBACK_MANUAL_TASK_RET = tagNET_DVR_RECORD_PASSBACK_MANUAL_TASK_RET; +pub type LPNET_DVR_RECORD_PASSBACK_MANUAL_TASK_RET = + *mut tagNET_DVR_RECORD_PASSBACK_MANUAL_TASK_RET; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECORD_PASSBACK_MANUAL_CTRL { + pub dwSize: DWORD, + pub byControlType: BYTE, + pub byRes: [BYTE; 131usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECORD_PASSBACK_MANUAL_CTRL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_CTRL) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_CTRL) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_CTRL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byControlType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_CTRL), + "::", + stringify!(byControlType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_MANUAL_CTRL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RECORD_PASSBACK_MANUAL_CTRL = tagNET_DVR_RECORD_PASSBACK_MANUAL_CTRL; +pub type LPNET_DVR_RECORD_PASSBACK_MANUAL_CTRL = *mut tagNET_DVR_RECORD_PASSBACK_MANUAL_CTRL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEL_RECORD_PASSBACK_MANUAL_COND { + pub dwSize: DWORD, + pub byDelType: BYTE, + pub byRes: [BYTE; 131usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEL_RECORD_PASSBACK_MANUAL_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_DEL_RECORD_PASSBACK_MANUAL_COND) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_DEL_RECORD_PASSBACK_MANUAL_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_RECORD_PASSBACK_MANUAL_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDelType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_RECORD_PASSBACK_MANUAL_COND), + "::", + stringify!(byDelType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_RECORD_PASSBACK_MANUAL_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DEL_RECORD_PASSBACK_MANUAL_COND = tagNET_DVR_DEL_RECORD_PASSBACK_MANUAL_COND; +pub type LPNET_DVR_DEL_RECORD_PASSBACK_MANUAL_COND = + *mut tagNET_DVR_DEL_RECORD_PASSBACK_MANUAL_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEL_RECORD_PASSBACK_MANUAL_CFG { + pub dwSize: DWORD, + pub dwTaskID: DWORD, + pub struStreamInfo: NET_DVR_STREAM_INFO, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEL_RECORD_PASSBACK_MANUAL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 208usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_DEL_RECORD_PASSBACK_MANUAL_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_DEL_RECORD_PASSBACK_MANUAL_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_RECORD_PASSBACK_MANUAL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTaskID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_RECORD_PASSBACK_MANUAL_CFG), + "::", + stringify!(dwTaskID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_RECORD_PASSBACK_MANUAL_CFG), + "::", + stringify!(struStreamInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEL_RECORD_PASSBACK_MANUAL_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DEL_RECORD_PASSBACK_MANUAL_CFG = tagNET_DVR_DEL_RECORD_PASSBACK_MANUAL_CFG; +pub type LPNET_DVR_DEL_RECORD_PASSBACK_MANUAL_CFG = *mut tagNET_DVR_DEL_RECORD_PASSBACK_MANUAL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PASSBACK_DAY { + pub byAllDay: BYTE, + pub byRes: [BYTE; 3usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PASSBACK_DAY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4usize, + concat!("Size of: ", stringify!(tagNET_DVR_PASSBACK_DAY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PASSBACK_DAY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAllDay) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSBACK_DAY), + "::", + stringify!(byAllDay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSBACK_DAY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PASSBACK_DAY = tagNET_DVR_PASSBACK_DAY; +pub type LPNET_DVR_PASSBACK_DAY = *mut tagNET_DVR_PASSBACK_DAY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PASSBACK_SCHED { + pub struPassBackTime: NET_DVR_SCHEDTIME, + pub byRes: [BYTE; 4usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PASSBACK_SCHED() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_PASSBACK_SCHED)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PASSBACK_SCHED)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPassBackTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSBACK_SCHED), + "::", + stringify!(struPassBackTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PASSBACK_SCHED), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PASSBACK_SCHED = tagNET_DVR_PASSBACK_SCHED; +pub type LPNET_DVR_PASSBACK_SCHED = *mut tagNET_DVR_PASSBACK_SCHED; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECORD_PASSBACK_SCH_CFG_ { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byPassBackWeek: BYTE, + pub byRes1: [BYTE; 2usize], + pub struPassBackDay: [NET_DVR_PASSBACK_DAY; 7usize], + pub struPassBackSched: [[NET_DVR_PASSBACK_SCHED; 8usize]; 7usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECORD_PASSBACK_SCH_CFG_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 612usize, + concat!("Size of: ", stringify!(tagNET_DVR_RECORD_PASSBACK_SCH_CFG_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_RECORD_PASSBACK_SCH_CFG_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_SCH_CFG_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_SCH_CFG_), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPassBackWeek) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_SCH_CFG_), + "::", + stringify!(byPassBackWeek) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_SCH_CFG_), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPassBackDay) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_SCH_CFG_), + "::", + stringify!(struPassBackDay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPassBackSched) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_SCH_CFG_), + "::", + stringify!(struPassBackSched) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 484usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_SCH_CFG_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RECORD_PASSBACK_SCH_CFG = tagNET_DVR_RECORD_PASSBACK_SCH_CFG_; +pub type LPNET_DVR_RECORD_PASSBACK_SCH_CFG = *mut tagNET_DVR_RECORD_PASSBACK_SCH_CFG_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECORD_PASSBACK_HISTORY_PLAN_CFG_ { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub struPassBackDay: [NET_DVR_PASSBACK_DAY; 7usize], + pub struPassBackSched: [[NET_DVR_PASSBACK_SCHED; 8usize]; 7usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECORD_PASSBACK_HISTORY_PLAN_CFG_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 740usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_HISTORY_PLAN_CFG_) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_RECORD_PASSBACK_HISTORY_PLAN_CFG_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_HISTORY_PLAN_CFG_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_HISTORY_PLAN_CFG_), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_HISTORY_PLAN_CFG_), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPassBackDay) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_HISTORY_PLAN_CFG_), + "::", + stringify!(struPassBackDay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPassBackSched) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_HISTORY_PLAN_CFG_), + "::", + stringify!(struPassBackSched) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 484usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_PASSBACK_HISTORY_PLAN_CFG_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RECORD_PASSBACK_HISTORY_PLAN_CFG = tagNET_DVR_RECORD_PASSBACK_HISTORY_PLAN_CFG_; +pub type LPNET_DVR_RECORD_PASSBACK_HISTORY_PLAN_CFG = + *mut tagNET_DVR_RECORD_PASSBACK_HISTORY_PLAN_CFG_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DEV_STORAGE_CFG { + pub dwSize: DWORD, + pub dwCapacityTotal: DWORD, + pub dwFreeSpaceTotal: DWORD, + pub dwLockedRecordSpace: DWORD, + pub dwUnLockedSpace: DWORD, + pub byRes: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DEV_STORAGE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 532usize, + concat!("Size of: ", stringify!(tagNET_DVR_DEV_STORAGE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DEV_STORAGE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_STORAGE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCapacityTotal) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_STORAGE_CFG), + "::", + stringify!(dwCapacityTotal) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFreeSpaceTotal) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_STORAGE_CFG), + "::", + stringify!(dwFreeSpaceTotal) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLockedRecordSpace) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_STORAGE_CFG), + "::", + stringify!(dwLockedRecordSpace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwUnLockedSpace) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_STORAGE_CFG), + "::", + stringify!(dwUnLockedSpace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DEV_STORAGE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DEV_STORAGE_CFG = tagNET_DVR_DEV_STORAGE_CFG; +pub type LPNET_DVR_DEV_STORAGE_CFG = *mut tagNET_DVR_DEV_STORAGE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ONE_KEY_CFG_V50 { + pub dwSize: DWORD, + pub byRaidType: BYTE, + pub bySpareRaidProportion: BYTE, + pub byPicQuota: BYTE, + pub byRes: [BYTE; 257usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ONE_KEY_CFG_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_DVR_ONE_KEY_CFG_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ONE_KEY_CFG_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_KEY_CFG_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRaidType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_KEY_CFG_V50), + "::", + stringify!(byRaidType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpareRaidProportion) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_KEY_CFG_V50), + "::", + stringify!(bySpareRaidProportion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicQuota) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_KEY_CFG_V50), + "::", + stringify!(byPicQuota) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_KEY_CFG_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ONE_KEY_CFG_V50 = tagNET_DVR_ONE_KEY_CFG_V50; +pub type LPNET_DVR_ONE_KEY_CFG_V50 = *mut tagNET_DVR_ONE_KEY_CFG_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ONE_KEY_RESULT_V51 { + pub dwState: DWORD, + pub byProgress: BYTE, + pub byRes: [BYTE; 259usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ONE_KEY_RESULT_V51() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_DVR_ONE_KEY_RESULT_V51)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ONE_KEY_RESULT_V51)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwState) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_KEY_RESULT_V51), + "::", + stringify!(dwState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProgress) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_KEY_RESULT_V51), + "::", + stringify!(byProgress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_KEY_RESULT_V51), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ONE_KEY_RESULT_V51 = tagNET_DVR_ONE_KEY_RESULT_V51; +pub type LPNET_DVR_ONE_KEY_RESULT_V51 = *mut tagNET_DVR_ONE_KEY_RESULT_V51; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ONE_KEY_CFG_SAN_V50 { + pub dwSize: DWORD, + pub byRaidType: BYTE, + pub bySpareRaidProportion: BYTE, + pub byRes: [BYTE; 254usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ONE_KEY_CFG_SAN_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(tagNET_DVR_ONE_KEY_CFG_SAN_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ONE_KEY_CFG_SAN_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_KEY_CFG_SAN_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRaidType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_KEY_CFG_SAN_V50), + "::", + stringify!(byRaidType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpareRaidProportion) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_KEY_CFG_SAN_V50), + "::", + stringify!(bySpareRaidProportion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONE_KEY_CFG_SAN_V50), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ONE_KEY_CFG_SAN_V50 = tagNET_DVR_ONE_KEY_CFG_SAN_V50; +pub type LPNET_DVR_ONE_KEY_CFG_SAN_V50 = *mut tagNET_DVR_ONE_KEY_CFG_SAN_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REC_PASSBACK_BASIC_CFG { + pub dwSize: DWORD, + pub dwStartTime: DWORD, + pub dwStopTime: DWORD, + pub wMaxTotalConcurrenceNum: WORD, + pub wMaxDvrConcurrenceNum: WORD, + pub dwSyncSpeed: DWORD, + pub dwRecordType: DWORD, + pub byRes: [BYTE; 248usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REC_PASSBACK_BASIC_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 272usize, + concat!("Size of: ", stringify!(tagNET_DVR_REC_PASSBACK_BASIC_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_REC_PASSBACK_BASIC_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REC_PASSBACK_BASIC_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REC_PASSBACK_BASIC_CFG), + "::", + stringify!(dwStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwStopTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REC_PASSBACK_BASIC_CFG), + "::", + stringify!(dwStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMaxTotalConcurrenceNum) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REC_PASSBACK_BASIC_CFG), + "::", + stringify!(wMaxTotalConcurrenceNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wMaxDvrConcurrenceNum) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REC_PASSBACK_BASIC_CFG), + "::", + stringify!(wMaxDvrConcurrenceNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSyncSpeed) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REC_PASSBACK_BASIC_CFG), + "::", + stringify!(dwSyncSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordType) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REC_PASSBACK_BASIC_CFG), + "::", + stringify!(dwRecordType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REC_PASSBACK_BASIC_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_REC_PASSBACK_BASIC_CFG = tagNET_DVR_REC_PASSBACK_BASIC_CFG; +pub type LPNET_DVR_REC_PASSBACK_BASIC_CFG = *mut tagNET_DVR_REC_PASSBACK_BASIC_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ONLINE_USER_INFO_ { + pub dwSize: DWORD, + pub wOnlineUserCount: WORD, + pub byRes: [BYTE; 514usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ONLINE_USER_INFO_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 520usize, + concat!("Size of: ", stringify!(tagNET_DVR_ONLINE_USER_INFO_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ONLINE_USER_INFO_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINE_USER_INFO_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wOnlineUserCount) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINE_USER_INFO_), + "::", + stringify!(wOnlineUserCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ONLINE_USER_INFO_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ONLINE_USER_INFO = tagNET_DVR_ONLINE_USER_INFO_; +pub type LPNET_DVR_ONLINE_USER_INFO = *mut tagNET_DVR_ONLINE_USER_INFO_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECORD_SEGMENT_COND_ { + pub dwSize: DWORD, + pub struStreanInfo: NET_DVR_STREAM_INFO, + pub struStartTime: NET_DVR_TIME_EX, + pub struStopTime: NET_DVR_TIME_EX, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECORD_SEGMENT_COND_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 348usize, + concat!("Size of: ", stringify!(tagNET_DVR_RECORD_SEGMENT_COND_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RECORD_SEGMENT_COND_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_SEGMENT_COND_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreanInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_SEGMENT_COND_), + "::", + stringify!(struStreanInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_SEGMENT_COND_), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_SEGMENT_COND_), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_SEGMENT_COND_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RECORD_SEGMENT_COND = tagNET_DVR_RECORD_SEGMENT_COND_; +pub type LPNET_DVR_RECORD_SEGMENT_COND = *mut tagNET_DVR_RECORD_SEGMENT_COND_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RECORD_SEGMENT_RET_ { + pub dwSize: DWORD, + pub dwRecordTotalSize: DWORD, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RECORD_SEGMENT_RET_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_DVR_RECORD_SEGMENT_RET_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RECORD_SEGMENT_RET_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_SEGMENT_RET_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRecordTotalSize) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_SEGMENT_RET_), + "::", + stringify!(dwRecordTotalSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RECORD_SEGMENT_RET_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RECORD_SEGMENT_RET = tagNET_DVR_RECORD_SEGMENT_RET_; +pub type LPNET_DVR_RECORD_SEGMENT_RET = *mut tagNET_DVR_RECORD_SEGMENT_RET_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ACCESSORY_CARD_INFO { + pub dwSize: DWORD, + pub szAccessoryCardInfo: [BYTE; 256usize], + pub byRes: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ACCESSORY_CARD_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 772usize, + concat!("Size of: ", stringify!(tagNET_DVR_ACCESSORY_CARD_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ACCESSORY_CARD_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCESSORY_CARD_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szAccessoryCardInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCESSORY_CARD_INFO), + "::", + stringify!(szAccessoryCardInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ACCESSORY_CARD_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ACCESSORY_CARD_INFO = tagNET_DVR_ACCESSORY_CARD_INFO; +pub type LPNET_DVR_ACCESSORY_CARD_INFO = *mut tagNET_DVR_ACCESSORY_CARD_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SEARCH_INFO_COND { + pub dwSize: DWORD, + pub byCommand: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwEmployeeNo: DWORD, + pub byName: [BYTE; 32usize], + pub struStartTime: NET_DVR_TIME_V30, + pub struEndTime: NET_DVR_TIME_V30, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SEARCH_INFO_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 196usize, + concat!("Size of: ", stringify!(tagNET_DVR_SEARCH_INFO_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SEARCH_INFO_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_INFO_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCommand) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_INFO_COND), + "::", + stringify!(byCommand) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_INFO_COND), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEmployeeNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_INFO_COND), + "::", + stringify!(dwEmployeeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_INFO_COND), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_INFO_COND), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_INFO_COND), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SEARCH_INFO_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SEARCH_INFO_COND = tagNET_DVR_SEARCH_INFO_COND; +pub type LPNET_DVR_SEARCH_INFO_COND = *mut tagNET_DVR_SEARCH_INFO_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCHEDULE_CHOICE { + pub byScheduleType: BYTE, + pub byScheduleNo: BYTE, + pub byRes: [BYTE; 14usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCHEDULE_CHOICE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCHEDULE_CHOICE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCHEDULE_CHOICE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScheduleType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_CHOICE), + "::", + stringify!(byScheduleType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScheduleNo) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_CHOICE), + "::", + stringify!(byScheduleNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_CHOICE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCHEDULE_CHOICE = tagNET_DVR_SCHEDULE_CHOICE; +pub type LPNET_DVR_SCHEDULE_CHOICE = *mut tagNET_DVR_SCHEDULE_CHOICE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DISPINPUT_CFG { + pub dwSize: DWORD, + pub dwDispInputNo: DWORD, + pub dwEDIDFileNo: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DISPINPUT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_DISPINPUT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DISPINPUT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPINPUT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDispInputNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPINPUT_CFG), + "::", + stringify!(dwDispInputNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEDIDFileNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPINPUT_CFG), + "::", + stringify!(dwEDIDFileNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPINPUT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DISPINPUT_CFG = tagNET_DVR_DISPINPUT_CFG; +pub type LPNET_DVR_DISPINPUT_CFG = *mut tagNET_DVR_DISPINPUT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCHEDULE_PLAN { + pub dwSize: DWORD, + pub bySchedulePlanNo: BYTE, + pub bySchedulePlanType: BYTE, + pub byEnable: BYTE, + pub byRes1: BYTE, + pub struScheduleChoice: [NET_DVR_SCHEDULE_CHOICE; 7usize], + pub struStartTime: NET_DVR_TIME_V30, + pub struEndTime: NET_DVR_TIME_V30, + pub byHolidayNo: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCHEDULE_PLAN() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 208usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCHEDULE_PLAN)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCHEDULE_PLAN)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_PLAN), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySchedulePlanNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_PLAN), + "::", + stringify!(bySchedulePlanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySchedulePlanType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_PLAN), + "::", + stringify!(bySchedulePlanType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_PLAN), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_PLAN), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struScheduleChoice) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_PLAN), + "::", + stringify!(struScheduleChoice) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_PLAN), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_PLAN), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHolidayNo) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_PLAN), + "::", + stringify!(byHolidayNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 145usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_PLAN), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCHEDULE_PLAN = tagNET_DVR_SCHEDULE_PLAN; +pub type LPNET_DVR_SCHEDULE_PLAN = *mut tagNET_DVR_SCHEDULE_PLAN; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DISPINPUT_CFG_LIST { + pub dwSize: DWORD, + pub dwDispInputNum: DWORD, + pub lpstruBuffer: LPNET_DVR_DISPINPUT_CFG, + pub dwBufferSize: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DISPINPUT_CFG_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_DISPINPUT_CFG_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DISPINPUT_CFG_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPINPUT_CFG_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDispInputNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPINPUT_CFG_LIST), + "::", + stringify!(dwDispInputNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpstruBuffer) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPINPUT_CFG_LIST), + "::", + stringify!(lpstruBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBufferSize) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPINPUT_CFG_LIST), + "::", + stringify!(dwBufferSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DISPINPUT_CFG_LIST), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DISPINPUT_CFG_LIST = tagNET_DVR_DISPINPUT_CFG_LIST; +pub type LPNET_DVR_DISPINPUT_CFG_LIST = *mut tagNET_DVR_DISPINPUT_CFG_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCHEDULE_INFO_CFG { + pub dwSize: DWORD, + pub dwEmployeeNo: DWORD, + pub byName: [BYTE; 32usize], + pub byDepartmentName: [BYTE; 32usize], + pub struSchedulePlan: NET_DVR_SCHEDULE_PLAN, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCHEDULE_INFO_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 408usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCHEDULE_INFO_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCHEDULE_INFO_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_INFO_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEmployeeNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_INFO_CFG), + "::", + stringify!(dwEmployeeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_INFO_CFG), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDepartmentName) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_INFO_CFG), + "::", + stringify!(byDepartmentName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSchedulePlan) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_INFO_CFG), + "::", + stringify!(struSchedulePlan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_INFO_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCHEDULE_INFO_CFG = tagNET_DVR_SCHEDULE_INFO_CFG; +pub type LPNET_DVR_SCHEDULE_INFO_CFG = *mut tagNET_DVR_SCHEDULE_INFO_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ATTENDANCE_SUMMARY_CFG { + pub dwSize: DWORD, + pub dwEmployeeNo: DWORD, + pub byName: [BYTE; 32usize], + pub byDepartmentName: [BYTE; 32usize], + pub dwWorkStandard: DWORD, + pub dwWorkActual: DWORD, + pub dwLateTimes: DWORD, + pub dwLateMinutes: DWORD, + pub dwLeaveEarlyTimes: DWORD, + pub dwLeaveEarlyMinutes: DWORD, + pub dwOvertimeStandard: DWORD, + pub dwOvertimeActual: DWORD, + pub dwAttendanceStandard: DWORD, + pub dwAttendanceActual: DWORD, + pub dwAbsentDays: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ATTENDANCE_SUMMARY_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 244usize, + concat!("Size of: ", stringify!(tagNET_DVR_ATTENDANCE_SUMMARY_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ATTENDANCE_SUMMARY_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDANCE_SUMMARY_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEmployeeNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDANCE_SUMMARY_CFG), + "::", + stringify!(dwEmployeeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDANCE_SUMMARY_CFG), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDepartmentName) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDANCE_SUMMARY_CFG), + "::", + stringify!(byDepartmentName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWorkStandard) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDANCE_SUMMARY_CFG), + "::", + stringify!(dwWorkStandard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwWorkActual) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDANCE_SUMMARY_CFG), + "::", + stringify!(dwWorkActual) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLateTimes) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDANCE_SUMMARY_CFG), + "::", + stringify!(dwLateTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLateMinutes) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDANCE_SUMMARY_CFG), + "::", + stringify!(dwLateMinutes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLeaveEarlyTimes) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDANCE_SUMMARY_CFG), + "::", + stringify!(dwLeaveEarlyTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLeaveEarlyMinutes) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDANCE_SUMMARY_CFG), + "::", + stringify!(dwLeaveEarlyMinutes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOvertimeStandard) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDANCE_SUMMARY_CFG), + "::", + stringify!(dwOvertimeStandard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOvertimeActual) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDANCE_SUMMARY_CFG), + "::", + stringify!(dwOvertimeActual) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAttendanceStandard) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDANCE_SUMMARY_CFG), + "::", + stringify!(dwAttendanceStandard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAttendanceActual) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDANCE_SUMMARY_CFG), + "::", + stringify!(dwAttendanceActual) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsentDays) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDANCE_SUMMARY_CFG), + "::", + stringify!(dwAbsentDays) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDANCE_SUMMARY_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ATTENDANCE_SUMMARY_CFG = tagNET_DVR_ATTENDANCE_SUMMARY_CFG; +pub type LPNET_DVR_ATTENDANCE_SUMMARY_CFG = *mut tagNET_DVR_ATTENDANCE_SUMMARY_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ATTENDANCE_RECORD_CFG { + pub dwSize: DWORD, + pub dwEmployeeNo: DWORD, + pub byName: [BYTE; 32usize], + pub byDepartmentName: [BYTE; 32usize], + pub struAttendanceTime: NET_DVR_TIME_V30, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ATTENDANCE_RECORD_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 212usize, + concat!("Size of: ", stringify!(tagNET_DVR_ATTENDANCE_RECORD_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ATTENDANCE_RECORD_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDANCE_RECORD_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEmployeeNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDANCE_RECORD_CFG), + "::", + stringify!(dwEmployeeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDANCE_RECORD_CFG), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDepartmentName) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDANCE_RECORD_CFG), + "::", + stringify!(byDepartmentName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAttendanceTime) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDANCE_RECORD_CFG), + "::", + stringify!(struAttendanceTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDANCE_RECORD_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ATTENDANCE_RECORD_CFG = tagNET_DVR_ATTENDANCE_RECORD_CFG; +pub type LPNET_DVR_ATTENDANCE_RECORD_CFG = *mut tagNET_DVR_ATTENDANCE_RECORD_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ATTENDANCE_TIME { + pub struOnDutyTime: NET_DVR_TIME_V30, + pub struOffDutyTime: NET_DVR_TIME_V30, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ATTENDANCE_TIME() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 24usize, + concat!("Size of: ", stringify!(tagNET_DVR_ATTENDANCE_TIME)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ATTENDANCE_TIME)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOnDutyTime) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDANCE_TIME), + "::", + stringify!(struOnDutyTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOffDutyTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ATTENDANCE_TIME), + "::", + stringify!(struOffDutyTime) + ) + ); +} +pub type NET_DVR_ATTENDANCE_TIME = tagNET_DVR_ATTENDANCE_TIME; +pub type LPNET_DVR_ATTENDANCE_TIME = *mut tagNET_DVR_ATTENDANCE_TIME; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ABNORMAL_CFG { + pub dwSize: DWORD, + pub dwEmployeeNo: DWORD, + pub byName: [BYTE; 32usize], + pub byDepartmentName: [BYTE; 32usize], + pub struAttendanceTime: [NET_DVR_ATTENDANCE_TIME; 4usize], + pub dwLateMinutes: DWORD, + pub dwLeaveEarlyMinutes: DWORD, + pub dwAbsenceMinutes: DWORD, + pub dwTotalMinutes: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ABNORMAL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 312usize, + concat!("Size of: ", stringify!(tagNET_DVR_ABNORMAL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ABNORMAL_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ABNORMAL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEmployeeNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ABNORMAL_CFG), + "::", + stringify!(dwEmployeeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ABNORMAL_CFG), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDepartmentName) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ABNORMAL_CFG), + "::", + stringify!(byDepartmentName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAttendanceTime) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ABNORMAL_CFG), + "::", + stringify!(struAttendanceTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLateMinutes) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ABNORMAL_CFG), + "::", + stringify!(dwLateMinutes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLeaveEarlyMinutes) as usize - ptr as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ABNORMAL_CFG), + "::", + stringify!(dwLeaveEarlyMinutes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsenceMinutes) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ABNORMAL_CFG), + "::", + stringify!(dwAbsenceMinutes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotalMinutes) as usize - ptr as usize }, + 180usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ABNORMAL_CFG), + "::", + stringify!(dwTotalMinutes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ABNORMAL_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ABNORMAL_CFG = tagNET_DVR_ABNORMAL_CFG; +pub type LPNET_DVR_ABNORMAL_CFG = *mut tagNET_DVR_ABNORMAL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CARD_CFG_V50 { + pub dwSize: DWORD, + pub dwModifyParamType: DWORD, + pub byCardNo: [BYTE; 32usize], + pub byCardValid: BYTE, + pub byCardType: BYTE, + pub byLeaderCard: BYTE, + pub byUserType: BYTE, + pub byDoorRight: [BYTE; 256usize], + pub struValid: NET_DVR_VALID_PERIOD_CFG, + pub byBelongGroup: [BYTE; 128usize], + pub byCardPassword: [BYTE; 8usize], + pub wCardRightPlan: [[WORD; 4usize]; 256usize], + pub dwMaxSwipeTime: DWORD, + pub dwSwipeTime: DWORD, + pub wRoomNumber: WORD, + pub wFloorNumber: SHORT, + pub dwEmployeeNo: DWORD, + pub byName: [BYTE; 32usize], + pub wDepartmentNo: WORD, + pub wSchedulePlanNo: WORD, + pub bySchedulePlanType: BYTE, + pub byRightType: BYTE, + pub byRes2: [BYTE; 2usize], + pub dwLockID: DWORD, + pub byLockCode: [BYTE; 8usize], + pub byRoomCode: [BYTE; 8usize], + pub dwCardRight: DWORD, + pub dwPlanTemplate: DWORD, + pub dwCardUserId: DWORD, + pub byCardModelType: BYTE, + pub byRes3: [BYTE; 51usize], + pub bySIMNum: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CARD_CFG_V50() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2708usize, + concat!("Size of: ", stringify!(tagNET_DVR_CARD_CFG_V50)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CARD_CFG_V50)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwModifyParamType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(dwModifyParamType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardValid) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(byCardValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardType) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(byCardType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLeaderCard) as usize - ptr as usize }, + 42usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(byLeaderCard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUserType) as usize - ptr as usize }, + 43usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(byUserType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDoorRight) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(byDoorRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struValid) as usize - ptr as usize }, + 300usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(struValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBelongGroup) as usize - ptr as usize }, + 352usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(byBelongGroup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardPassword) as usize - ptr as usize }, + 480usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(byCardPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCardRightPlan) as usize - ptr as usize }, + 488usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(wCardRightPlan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxSwipeTime) as usize - ptr as usize }, + 2536usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(dwMaxSwipeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSwipeTime) as usize - ptr as usize }, + 2540usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(dwSwipeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRoomNumber) as usize - ptr as usize }, + 2544usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(wRoomNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFloorNumber) as usize - ptr as usize }, + 2546usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(wFloorNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEmployeeNo) as usize - ptr as usize }, + 2548usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(dwEmployeeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 2552usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDepartmentNo) as usize - ptr as usize }, + 2584usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(wDepartmentNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSchedulePlanNo) as usize - ptr as usize }, + 2586usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(wSchedulePlanNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySchedulePlanType) as usize - ptr as usize }, + 2588usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(bySchedulePlanType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRightType) as usize - ptr as usize }, + 2589usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(byRightType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 2590usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLockID) as usize - ptr as usize }, + 2592usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(dwLockID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLockCode) as usize - ptr as usize }, + 2596usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(byLockCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRoomCode) as usize - ptr as usize }, + 2604usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(byRoomCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardRight) as usize - ptr as usize }, + 2612usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(dwCardRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPlanTemplate) as usize - ptr as usize }, + 2616usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(dwPlanTemplate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardUserId) as usize - ptr as usize }, + 2620usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(dwCardUserId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardModelType) as usize - ptr as usize }, + 2624usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(byCardModelType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 2625usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(byRes3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySIMNum) as usize - ptr as usize }, + 2676usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CARD_CFG_V50), + "::", + stringify!(bySIMNum) + ) + ); +} +pub type NET_DVR_CARD_CFG_V50 = tagNET_DVR_CARD_CFG_V50; +pub type LPNET_DVR_CARD_CFG_V50 = *mut tagNET_DVR_CARD_CFG_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CAPTURE_FINGERPRINT_COND { + pub dwSize: DWORD, + pub byFingerPrintPicType: BYTE, + pub byFingerNo: BYTE, + pub byRes: [BYTE; 126usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CAPTURE_FINGERPRINT_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_CAPTURE_FINGERPRINT_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_CAPTURE_FINGERPRINT_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FINGERPRINT_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerPrintPicType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FINGERPRINT_COND), + "::", + stringify!(byFingerPrintPicType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerNo) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FINGERPRINT_COND), + "::", + stringify!(byFingerNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FINGERPRINT_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CAPTURE_FINGERPRINT_COND = tagNET_DVR_CAPTURE_FINGERPRINT_COND; +pub type LPNET_DVR_CAPTURE_FINGERPRINT_COND = *mut tagNET_DVR_CAPTURE_FINGERPRINT_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CAPTURE_FINGERPRINT_CFG { + pub dwSize: DWORD, + pub dwFingerPrintDataSize: DWORD, + pub byFingerData: [BYTE; 768usize], + pub dwFingerPrintPicSize: DWORD, + pub pFingerPrintPicBuffer: *mut ::std::os::raw::c_char, + pub byFingerNo: BYTE, + pub byFingerPrintQuality: BYTE, + pub byRes: [BYTE; 62usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CAPTURE_FINGERPRINT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 856usize, + concat!("Size of: ", stringify!(tagNET_DVR_CAPTURE_FINGERPRINT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_CAPTURE_FINGERPRINT_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FINGERPRINT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFingerPrintDataSize) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FINGERPRINT_CFG), + "::", + stringify!(dwFingerPrintDataSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerData) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FINGERPRINT_CFG), + "::", + stringify!(byFingerData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFingerPrintPicSize) as usize - ptr as usize }, + 776usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FINGERPRINT_CFG), + "::", + stringify!(dwFingerPrintPicSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pFingerPrintPicBuffer) as usize - ptr as usize }, + 784usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FINGERPRINT_CFG), + "::", + stringify!(pFingerPrintPicBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerNo) as usize - ptr as usize }, + 792usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FINGERPRINT_CFG), + "::", + stringify!(byFingerNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerPrintQuality) as usize - ptr as usize }, + 793usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FINGERPRINT_CFG), + "::", + stringify!(byFingerPrintQuality) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 794usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FINGERPRINT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CAPTURE_FINGERPRINT_CFG = tagNET_DVR_CAPTURE_FINGERPRINT_CFG; +pub type LPNET_DVR_CAPTURE_FINGERPRINT_CFG = *mut tagNET_DVR_CAPTURE_FINGERPRINT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CAPTURE_FACE_COND { + pub dwSize: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CAPTURE_FACE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_CAPTURE_FACE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CAPTURE_FACE_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FACE_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FACE_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CAPTURE_FACE_COND = tagNET_DVR_CAPTURE_FACE_COND; +pub type LPNET_DVR_CAPTURE_FACE_COND = *mut tagNET_DVR_CAPTURE_FACE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FACE_FEATURE { + pub struFace: NET_VCA_RECT, + pub struLeftEye: NET_VCA_POINT, + pub struRightEye: NET_VCA_POINT, + pub struLeftMouth: NET_VCA_POINT, + pub struRightMouth: NET_VCA_POINT, + pub struNoseTip: NET_VCA_POINT, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FACE_FEATURE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_FACE_FEATURE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FACE_FEATURE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFace) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_FEATURE), + "::", + stringify!(struFace) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLeftEye) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_FEATURE), + "::", + stringify!(struLeftEye) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRightEye) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_FEATURE), + "::", + stringify!(struRightEye) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLeftMouth) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_FEATURE), + "::", + stringify!(struLeftMouth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRightMouth) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_FEATURE), + "::", + stringify!(struRightMouth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNoseTip) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_FEATURE), + "::", + stringify!(struNoseTip) + ) + ); +} +pub type NET_DVR_FACE_FEATURE = tagNET_DVR_FACE_FEATURE; +pub type LPNET_DVR_FACE_FEATURE = *mut tagNET_DVR_FACE_FEATURE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CAPTURE_FACE_CFG { + pub dwSize: DWORD, + pub dwFaceTemplate1Size: DWORD, + pub pFaceTemplate1Buffer: *mut ::std::os::raw::c_char, + pub dwFaceTemplate2Size: DWORD, + pub pFaceTemplate2Buffer: *mut ::std::os::raw::c_char, + pub dwFacePicSize: DWORD, + pub pFacePicBuffer: *mut ::std::os::raw::c_char, + pub byFaceQuality1: BYTE, + pub byFaceQuality2: BYTE, + pub byCaptureProgress: BYTE, + pub byFacePicQuality: BYTE, + pub dwInfraredFacePicSize: DWORD, + pub pInfraredFacePicBuffer: *mut ::std::os::raw::c_char, + pub byInfraredFacePicQuality: BYTE, + pub byRes1: [BYTE; 3usize], + pub struFeature: NET_DVR_FACE_FEATURE, + pub byRes: [BYTE; 56usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CAPTURE_FACE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 184usize, + concat!("Size of: ", stringify!(tagNET_DVR_CAPTURE_FACE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CAPTURE_FACE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FACE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFaceTemplate1Size) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FACE_CFG), + "::", + stringify!(dwFaceTemplate1Size) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pFaceTemplate1Buffer) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FACE_CFG), + "::", + stringify!(pFaceTemplate1Buffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFaceTemplate2Size) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FACE_CFG), + "::", + stringify!(dwFaceTemplate2Size) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pFaceTemplate2Buffer) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FACE_CFG), + "::", + stringify!(pFaceTemplate2Buffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFacePicSize) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FACE_CFG), + "::", + stringify!(dwFacePicSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pFacePicBuffer) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FACE_CFG), + "::", + stringify!(pFacePicBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaceQuality1) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FACE_CFG), + "::", + stringify!(byFaceQuality1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaceQuality2) as usize - ptr as usize }, + 49usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FACE_CFG), + "::", + stringify!(byFaceQuality2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCaptureProgress) as usize - ptr as usize }, + 50usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FACE_CFG), + "::", + stringify!(byCaptureProgress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFacePicQuality) as usize - ptr as usize }, + 51usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FACE_CFG), + "::", + stringify!(byFacePicQuality) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInfraredFacePicSize) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FACE_CFG), + "::", + stringify!(dwInfraredFacePicSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pInfraredFacePicBuffer) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FACE_CFG), + "::", + stringify!(pInfraredFacePicBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byInfraredFacePicQuality) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FACE_CFG), + "::", + stringify!(byInfraredFacePicQuality) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 65usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FACE_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFeature) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FACE_CFG), + "::", + stringify!(struFeature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 124usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_FACE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CAPTURE_FACE_CFG = tagNET_DVR_CAPTURE_FACE_CFG; +pub type LPNET_DVR_CAPTURE_FACE_CFG = *mut tagNET_DVR_CAPTURE_FACE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_SEND { + pub dwSize: DWORD, + pub struStreamInfo: NET_DVR_STREAM_INFO, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_SEND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 204usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_SEND) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_SEND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_SEND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_SEND), + "::", + stringify!(struStreamInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_SEND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_SEND = + tagNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_SEND; +pub type LPNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_SEND = + *mut tagNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_SEND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_RET { + pub dwSize: DWORD, + pub struStreamInfo: NET_DVR_STREAM_INFO, + pub byExecutable: BYTE, + pub byUnexecutableReason: BYTE, + pub byRes: [BYTE; 254usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_RET() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 332usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_RET) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_RET) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_RET), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStreamInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_RET), + "::", + stringify!(struStreamInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExecutable) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_RET), + "::", + stringify!(byExecutable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUnexecutableReason) as usize - ptr as usize }, + 77usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_RET), + "::", + stringify!(byUnexecutableReason) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 78usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_RET), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_RET = tagNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_RET; +pub type LPNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_RET = + *mut tagNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_RET; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_STREAM_MEDIA_CFG { + pub dwSize: DWORD, + pub sUrl: [BYTE; 512usize], + pub struDMSIP: NET_DVR_IPADDR, + pub wDMSPort: WORD, + pub byRes1: [BYTE; 2usize], + pub dwDomainID: DWORD, + pub byRes: [BYTE; 360usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_STREAM_MEDIA_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1028usize, + concat!("Size of: ", stringify!(tagNET_DVR_STREAM_MEDIA_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_STREAM_MEDIA_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MEDIA_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUrl) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MEDIA_CFG), + "::", + stringify!(sUrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDMSIP) as usize - ptr as usize }, + 516usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MEDIA_CFG), + "::", + stringify!(struDMSIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDMSPort) as usize - ptr as usize }, + 660usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MEDIA_CFG), + "::", + stringify!(wDMSPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 662usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MEDIA_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDomainID) as usize - ptr as usize }, + 664usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MEDIA_CFG), + "::", + stringify!(dwDomainID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 668usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_STREAM_MEDIA_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_STREAM_MEDIA_CFG = tagNET_DVR_STREAM_MEDIA_CFG; +pub type LPNET_DVR_STREAM_MEDIA_CFG = *mut tagNET_DVR_STREAM_MEDIA_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SHIPSDETECTION_REGION_CFG { + pub byRuleID: BYTE, + pub byEnable: BYTE, + pub bySensitivity: BYTE, + pub byFrameOverlayEnabled: BYTE, + pub byRes: [BYTE; 36usize], + pub struPolygon: NET_ITC_POLYGON, + pub struTriggerLine: NET_VCA_LINE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SHIPSDETECTION_REGION_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 220usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SHIPSDETECTION_REGION_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SHIPSDETECTION_REGION_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_REGION_CFG), + "::", + stringify!(byRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_REGION_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySensitivity) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_REGION_CFG), + "::", + stringify!(bySensitivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFrameOverlayEnabled) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_REGION_CFG), + "::", + stringify!(byFrameOverlayEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_REGION_CFG), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPolygon) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_REGION_CFG), + "::", + stringify!(struPolygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTriggerLine) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_REGION_CFG), + "::", + stringify!(struTriggerLine) + ) + ); +} +pub type NET_DVR_SHIPSDETECTION_REGION_CFG = tagNET_DVR_SHIPSDETECTION_REGION_CFG; +pub type LPNET_DVR_SHIPSDETECTION_REGION_CFG = *mut tagNET_DVR_SHIPSDETECTION_REGION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SHIPSDETECTION_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub fLookDownUpAngle: f32, + pub fHorizontalHeight: f32, + pub struShipsDetectionRegion: [NET_DVR_SHIPSDETECTION_REGION_CFG; 8usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SHIPSDETECTION_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2032usize, + concat!("Size of: ", stringify!(tagNET_DVR_SHIPSDETECTION_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SHIPSDETECTION_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fLookDownUpAngle) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_CFG), + "::", + stringify!(fLookDownUpAngle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fHorizontalHeight) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_CFG), + "::", + stringify!(fHorizontalHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struShipsDetectionRegion) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_CFG), + "::", + stringify!(struShipsDetectionRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1776usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SHIPSDETECTION_CFG = tagNET_DVR_SHIPSDETECTION_CFG; +pub type LPNET_DVR_SHIPSDETECTION_CFG = *mut tagNET_DVR_SHIPSDETECTION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TEMPERATURE_COLOR { + pub byType: BYTE, + pub byRes1: [BYTE; 3usize], + pub iHighTemperature: ::std::os::raw::c_int, + pub iLowTemperature: ::std::os::raw::c_int, + pub byRes: [BYTE; 8usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TEMPERATURE_COLOR() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 20usize, + concat!("Size of: ", stringify!(tagNET_DVR_TEMPERATURE_COLOR)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TEMPERATURE_COLOR)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMPERATURE_COLOR), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMPERATURE_COLOR), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iHighTemperature) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMPERATURE_COLOR), + "::", + stringify!(iHighTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iLowTemperature) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMPERATURE_COLOR), + "::", + stringify!(iLowTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TEMPERATURE_COLOR), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TEMPERATURE_COLOR = tagNET_DVR_TEMPERATURE_COLOR; +pub type LPNET_DVR_TEMPERATURE_COLOR = *mut tagNET_DVR_TEMPERATURE_COLOR; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_THERMOMETRY_BASICPARAM { + pub dwSize: DWORD, + pub byEnabled: BYTE, + pub byStreamOverlay: BYTE, + pub byPictureOverlay: BYTE, + pub byThermometryRange: BYTE, + pub byThermometryUnit: BYTE, + pub byThermometryCurve: BYTE, + pub byFireImageModea: BYTE, + pub byShowTempStripEnable: BYTE, + pub fEmissivity: f32, + pub byDistanceUnit: BYTE, + pub byEnviroHumidity: BYTE, + pub byRes2: [BYTE; 2usize], + pub struTempColor: NET_DVR_TEMPERATURE_COLOR, + pub iEnviroTemperature: ::std::os::raw::c_int, + pub iCorrectionVolume: ::std::os::raw::c_int, + pub bySpecialPointThermType: BYTE, + pub byReflectiveEnabled: BYTE, + pub wDistance: WORD, + pub fReflectiveTemperature: f32, + pub fAlert: f32, + pub fAlarm: f32, + pub fThermalOpticalTransmittance: f32, + pub fExternalOpticsWindowCorrection: f32, + pub byDisplayMaxTemperatureEnabled: BYTE, + pub byDisplayMinTemperatureEnabled: BYTE, + pub byDisplayAverageTemperatureEnabled: BYTE, + pub byThermometryInfoDisplayposition: BYTE, + pub dwAlertFilteringTime: DWORD, + pub dwAlarmFilteringTime: DWORD, + pub byemissivityMode: BYTE, + pub bydisplayTemperatureInOpticalChannelEnabled: BYTE, + pub byDisplayCentreTemperatureEnabled: BYTE, + pub byRes: [BYTE; 49usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_THERMOMETRY_BASICPARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStreamOverlay) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(byStreamOverlay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPictureOverlay) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(byPictureOverlay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byThermometryRange) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(byThermometryRange) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byThermometryUnit) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(byThermometryUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byThermometryCurve) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(byThermometryCurve) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFireImageModea) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(byFireImageModea) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShowTempStripEnable) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(byShowTempStripEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fEmissivity) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(fEmissivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDistanceUnit) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(byDistanceUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnviroHumidity) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(byEnviroHumidity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTempColor) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(struTempColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iEnviroTemperature) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(iEnviroTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iCorrectionVolume) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(iCorrectionVolume) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpecialPointThermType) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(bySpecialPointThermType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReflectiveEnabled) as usize - ptr as usize }, + 49usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(byReflectiveEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDistance) as usize - ptr as usize }, + 50usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(wDistance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fReflectiveTemperature) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(fReflectiveTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fAlert) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(fAlert) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fAlarm) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(fAlarm) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).fThermalOpticalTransmittance) as usize - ptr as usize + }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(fThermalOpticalTransmittance) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).fExternalOpticsWindowCorrection) as usize - ptr as usize + }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(fExternalOpticsWindowCorrection) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byDisplayMaxTemperatureEnabled) as usize - ptr as usize + }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(byDisplayMaxTemperatureEnabled) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byDisplayMinTemperatureEnabled) as usize - ptr as usize + }, + 73usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(byDisplayMinTemperatureEnabled) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byDisplayAverageTemperatureEnabled) as usize - ptr as usize + }, + 74usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(byDisplayAverageTemperatureEnabled) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byThermometryInfoDisplayposition) as usize - ptr as usize + }, + 75usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(byThermometryInfoDisplayposition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlertFilteringTime) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(dwAlertFilteringTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmFilteringTime) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(dwAlarmFilteringTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byemissivityMode) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(byemissivityMode) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).bydisplayTemperatureInOpticalChannelEnabled) as usize + - ptr as usize + }, + 85usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(bydisplayTemperatureInOpticalChannelEnabled) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byDisplayCentreTemperatureEnabled) as usize - ptr as usize + }, + 86usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(byDisplayCentreTemperatureEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 87usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_BASICPARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_THERMOMETRY_BASICPARAM = tagNET_DVR_THERMOMETRY_BASICPARAM; +pub type LPNET_DVR_THERMOMETRY_BASICPARAM = *mut tagNET_DVR_THERMOMETRY_BASICPARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_THERMOMETRY_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub wPresetNo: WORD, + pub byRes: [BYTE; 62usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_THERMOMETRY_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_THERMOMETRY_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_THERMOMETRY_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPresetNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_COND), + "::", + stringify!(wPresetNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_THERMOMETRY_COND = tagNET_DVR_THERMOMETRY_COND; +pub type LPNET_DVR_THERMOMETRY_COND = *mut tagNET_DVR_THERMOMETRY_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_THERMOMETRY_PRESETINFO_PARAM { + pub byEnabled: BYTE, + pub byRuleID: BYTE, + pub wDistance: WORD, + pub fEmissivity: f32, + pub byDistanceUnit: BYTE, + pub byRes: [BYTE; 2usize], + pub byReflectiveEnabled: BYTE, + pub fReflectiveTemperature: f32, + pub szRuleName: [::std::os::raw::c_char; 32usize], + pub byemissivityMode: BYTE, + pub byRes1: [BYTE; 62usize], + pub byRuleCalibType: BYTE, + pub struPoint: NET_VCA_POINT, + pub struRegion: NET_VCA_POLYGON, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_THERMOMETRY_PRESETINFO_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 204usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_THERMOMETRY_PRESETINFO_PARAM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_THERMOMETRY_PRESETINFO_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_PRESETINFO_PARAM), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleID) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_PRESETINFO_PARAM), + "::", + stringify!(byRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDistance) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_PRESETINFO_PARAM), + "::", + stringify!(wDistance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fEmissivity) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_PRESETINFO_PARAM), + "::", + stringify!(fEmissivity) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDistanceUnit) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_PRESETINFO_PARAM), + "::", + stringify!(byDistanceUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_PRESETINFO_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReflectiveEnabled) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_PRESETINFO_PARAM), + "::", + stringify!(byReflectiveEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fReflectiveTemperature) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_PRESETINFO_PARAM), + "::", + stringify!(fReflectiveTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szRuleName) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_PRESETINFO_PARAM), + "::", + stringify!(szRuleName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byemissivityMode) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_PRESETINFO_PARAM), + "::", + stringify!(byemissivityMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 49usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_PRESETINFO_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleCalibType) as usize - ptr as usize }, + 111usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_PRESETINFO_PARAM), + "::", + stringify!(byRuleCalibType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPoint) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_PRESETINFO_PARAM), + "::", + stringify!(struPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_PRESETINFO_PARAM), + "::", + stringify!(struRegion) + ) + ); +} +pub type NET_DVR_THERMOMETRY_PRESETINFO_PARAM = tagNET_DVR_THERMOMETRY_PRESETINFO_PARAM; +pub type LPNET_DVR_THERMOMETRY_PRESETINFO_PARAM = *mut tagNET_DVR_THERMOMETRY_PRESETINFO_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_THERMOMETRY_PRESETINFO { + pub dwSize: DWORD, + pub wPresetNo: WORD, + pub byRes: [BYTE; 2usize], + pub struPresetInfo: [NET_DVR_THERMOMETRY_PRESETINFO_PARAM; 40usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_THERMOMETRY_PRESETINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8168usize, + concat!("Size of: ", stringify!(tagNET_DVR_THERMOMETRY_PRESETINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_THERMOMETRY_PRESETINFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_PRESETINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPresetNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_PRESETINFO), + "::", + stringify!(wPresetNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_PRESETINFO), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPresetInfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_PRESETINFO), + "::", + stringify!(struPresetInfo) + ) + ); +} +pub type NET_DVR_THERMOMETRY_PRESETINFO = tagNET_DVR_THERMOMETRY_PRESETINFO; +pub type LPNET_DVR_THERMOMETRY_PRESETINFO = *mut tagNET_DVR_THERMOMETRY_PRESETINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BASE_STATION_INFO_ALARM { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub sNetBarWaCode: [::std::os::raw::c_char; 16usize], + pub sCollectionEquipmentID: [::std::os::raw::c_char; 24usize], + pub sMCC: [::std::os::raw::c_char; 4usize], + pub sMNC: [::std::os::raw::c_char; 4usize], + pub sLAC: [::std::os::raw::c_char; 36usize], + pub sCI: [::std::os::raw::c_char; 36usize], + pub sBSCI: [::std::os::raw::c_char; 36usize], + pub sBCCH: [::std::os::raw::c_char; 36usize], + pub sLEV: [::std::os::raw::c_char; 36usize], + pub sCollectionEquipmentLongitude: [::std::os::raw::c_char; 12usize], + pub sCollectionEquipmentLatitude: [::std::os::raw::c_char; 12usize], + pub sCaptureTime: [::std::os::raw::c_char; 20usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BASE_STATION_INFO_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 536usize, + concat!("Size of: ", stringify!(tagNET_DVR_BASE_STATION_INFO_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_BASE_STATION_INFO_ALARM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASE_STATION_INFO_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASE_STATION_INFO_ALARM), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sNetBarWaCode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASE_STATION_INFO_ALARM), + "::", + stringify!(sNetBarWaCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCollectionEquipmentID) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASE_STATION_INFO_ALARM), + "::", + stringify!(sCollectionEquipmentID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sMCC) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASE_STATION_INFO_ALARM), + "::", + stringify!(sMCC) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sMNC) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASE_STATION_INFO_ALARM), + "::", + stringify!(sMNC) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLAC) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASE_STATION_INFO_ALARM), + "::", + stringify!(sLAC) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCI) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASE_STATION_INFO_ALARM), + "::", + stringify!(sCI) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sBSCI) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASE_STATION_INFO_ALARM), + "::", + stringify!(sBSCI) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sBCCH) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASE_STATION_INFO_ALARM), + "::", + stringify!(sBCCH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLEV) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASE_STATION_INFO_ALARM), + "::", + stringify!(sLEV) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).sCollectionEquipmentLongitude) as usize - ptr as usize + }, + 236usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASE_STATION_INFO_ALARM), + "::", + stringify!(sCollectionEquipmentLongitude) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).sCollectionEquipmentLatitude) as usize - ptr as usize + }, + 248usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASE_STATION_INFO_ALARM), + "::", + stringify!(sCollectionEquipmentLatitude) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sCaptureTime) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASE_STATION_INFO_ALARM), + "::", + stringify!(sCaptureTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BASE_STATION_INFO_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BASE_STATION_INFO_ALARM = tagNET_DVR_BASE_STATION_INFO_ALARM; +pub type LPNET_DVR_BASE_STATION_INFO_ALARM = *mut tagNET_DVR_BASE_STATION_INFO_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_THERMOMETRY_ALARMRULE_PARAM { + pub byEnable: BYTE, + pub byRuleID: BYTE, + pub byRule: BYTE, + pub byRes: BYTE, + pub szRuleName: [::std::os::raw::c_char; 32usize], + pub fAlert: f32, + pub fAlarm: f32, + pub fThreshold: f32, + pub dwAlertFilteringTime: DWORD, + pub dwAlarmFilteringTime: DWORD, + pub byRes1: [BYTE; 56usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_THERMOMETRY_ALARMRULE_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 112usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARMRULE_PARAM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_THERMOMETRY_ALARMRULE_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARMRULE_PARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleID) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARMRULE_PARAM), + "::", + stringify!(byRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRule) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARMRULE_PARAM), + "::", + stringify!(byRule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARMRULE_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szRuleName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARMRULE_PARAM), + "::", + stringify!(szRuleName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fAlert) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARMRULE_PARAM), + "::", + stringify!(fAlert) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fAlarm) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARMRULE_PARAM), + "::", + stringify!(fAlarm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fThreshold) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARMRULE_PARAM), + "::", + stringify!(fThreshold) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlertFilteringTime) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARMRULE_PARAM), + "::", + stringify!(dwAlertFilteringTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmFilteringTime) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARMRULE_PARAM), + "::", + stringify!(dwAlarmFilteringTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARMRULE_PARAM), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_THERMOMETRY_ALARMRULE_PARAM = tagNET_DVR_THERMOMETRY_ALARMRULE_PARAM; +pub type LPNET_DVR_THERMOMETRY_ALARMRULE_PARAM = *mut tagNET_DVR_THERMOMETRY_ALARMRULE_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_THERMOMETRY_ALARMRULE { + pub dwSize: DWORD, + pub struThermometryAlarmRuleParam: [NET_DVR_THERMOMETRY_ALARMRULE_PARAM; 40usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_THERMOMETRY_ALARMRULE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 4612usize, + concat!("Size of: ", stringify!(tagNET_DVR_THERMOMETRY_ALARMRULE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_THERMOMETRY_ALARMRULE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARMRULE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).struThermometryAlarmRuleParam) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARMRULE), + "::", + stringify!(struThermometryAlarmRuleParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4484usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARMRULE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_THERMOMETRY_ALARMRULE = tagNET_DVR_THERMOMETRY_ALARMRULE; +pub type LPNET_DVR_THERMOMETRY_ALARMRULE = *mut tagNET_DVR_THERMOMETRY_ALARMRULE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_THERMOMETRY_DIFFCOMPARISON_PARAM { + pub byEnable: BYTE, + pub byRuleID: BYTE, + pub byAlarmID1: BYTE, + pub byAlarmID2: BYTE, + pub byRule: BYTE, + pub byRes: [BYTE; 3usize], + pub fTemperatureDiff: f32, + pub dwAlarmFilteringTime: DWORD, + pub byRes1: [BYTE; 28usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_THERMOMETRY_DIFFCOMPARISON_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFFCOMPARISON_PARAM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_THERMOMETRY_DIFFCOMPARISON_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFFCOMPARISON_PARAM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleID) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFFCOMPARISON_PARAM), + "::", + stringify!(byRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmID1) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFFCOMPARISON_PARAM), + "::", + stringify!(byAlarmID1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmID2) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFFCOMPARISON_PARAM), + "::", + stringify!(byAlarmID2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRule) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFFCOMPARISON_PARAM), + "::", + stringify!(byRule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFFCOMPARISON_PARAM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fTemperatureDiff) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFFCOMPARISON_PARAM), + "::", + stringify!(fTemperatureDiff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmFilteringTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFFCOMPARISON_PARAM), + "::", + stringify!(dwAlarmFilteringTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFFCOMPARISON_PARAM), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_THERMOMETRY_DIFFCOMPARISON_PARAM = tagNET_DVR_THERMOMETRY_DIFFCOMPARISON_PARAM; +pub type LPNET_DVR_THERMOMETRY_DIFFCOMPARISON_PARAM = + *mut tagNET_DVR_THERMOMETRY_DIFFCOMPARISON_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_THERMOMETRY_DIFFCOMPARISON { + pub dwSize: DWORD, + pub struDiffComparison: [NET_DVR_THERMOMETRY_DIFFCOMPARISON_PARAM; 40usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_THERMOMETRY_DIFFCOMPARISON() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1828usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFFCOMPARISON) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_THERMOMETRY_DIFFCOMPARISON) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFFCOMPARISON), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDiffComparison) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFFCOMPARISON), + "::", + stringify!(struDiffComparison) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1764usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFFCOMPARISON), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_THERMOMETRY_DIFFCOMPARISON = tagNET_DVR_THERMOMETRY_DIFFCOMPARISON; +pub type LPNET_DVR_THERMOMETRY_DIFFCOMPARISON = *mut tagNET_DVR_THERMOMETRY_DIFFCOMPARISON; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_REALTIME_THERMOMETRY_COND { + pub dwSize: DWORD, + pub dwChan: DWORD, + pub byRuleID: BYTE, + pub byMode: BYTE, + pub wInterval: WORD, + pub fTemperatureDiff: f32, + pub byRes: [BYTE; 56usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_REALTIME_THERMOMETRY_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_REALTIME_THERMOMETRY_COND) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_REALTIME_THERMOMETRY_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REALTIME_THERMOMETRY_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REALTIME_THERMOMETRY_COND), + "::", + stringify!(dwChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REALTIME_THERMOMETRY_COND), + "::", + stringify!(byRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REALTIME_THERMOMETRY_COND), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wInterval) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REALTIME_THERMOMETRY_COND), + "::", + stringify!(wInterval) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fTemperatureDiff) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REALTIME_THERMOMETRY_COND), + "::", + stringify!(fTemperatureDiff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_REALTIME_THERMOMETRY_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_REALTIME_THERMOMETRY_COND = tagNET_DVR_REALTIME_THERMOMETRY_COND; +pub type LPNET_DVR_REALTIME_THERMOMETRY_COND = *mut tagNET_DVR_REALTIME_THERMOMETRY_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_POINT_THERM_CFG { + pub fTemperature: f32, + pub struPoint: NET_VCA_POINT, + pub byRes: [BYTE; 120usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_POINT_THERM_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_POINT_THERM_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_POINT_THERM_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fTemperature) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POINT_THERM_CFG), + "::", + stringify!(fTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPoint) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POINT_THERM_CFG), + "::", + stringify!(struPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_POINT_THERM_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_POINT_THERM_CFG = tagNET_DVR_POINT_THERM_CFG; +pub type LPNET_DVR_POINT_THERM_CFG = *mut tagNET_DVR_POINT_THERM_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LINEPOLYGON_THERM_CFG { + pub fMaxTemperature: f32, + pub fMinTemperature: f32, + pub fAverageTemperature: f32, + pub fTemperatureDiff: f32, + pub struRegion: NET_VCA_POLYGON, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LINEPOLYGON_THERM_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_LINEPOLYGON_THERM_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_LINEPOLYGON_THERM_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fMaxTemperature) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINEPOLYGON_THERM_CFG), + "::", + stringify!(fMaxTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fMinTemperature) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINEPOLYGON_THERM_CFG), + "::", + stringify!(fMinTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fAverageTemperature) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINEPOLYGON_THERM_CFG), + "::", + stringify!(fAverageTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fTemperatureDiff) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINEPOLYGON_THERM_CFG), + "::", + stringify!(fTemperatureDiff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINEPOLYGON_THERM_CFG), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LINEPOLYGON_THERM_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LINEPOLYGON_THERM_CFG = tagNET_DVR_LINEPOLYGON_THERM_CFG; +pub type LPNET_DVR_LINEPOLYGON_THERM_CFG = *mut tagNET_DVR_LINEPOLYGON_THERM_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_THERMOMETRY_UPLOAD { + pub dwSize: DWORD, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub szRuleName: [::std::os::raw::c_char; 32usize], + pub byRuleID: BYTE, + pub byRuleCalibType: BYTE, + pub wPresetNo: WORD, + pub struPointThermCfg: NET_DVR_POINT_THERM_CFG, + pub struLinePolygonThermCfg: NET_DVR_LINEPOLYGON_THERM_CFG, + pub byThermometryUnit: BYTE, + pub byDataType: BYTE, + pub byRes1: BYTE, + pub bySpecialPointThermType: BYTE, + pub fCenterPointTemperature: f32, + pub fHighestPointTemperature: f32, + pub fLowestPointTemperature: f32, + pub struHighestPoint: NET_VCA_POINT, + pub struLowestPoint: NET_VCA_POINT, + pub byIsFreezedata: BYTE, + pub byFaceSnapThermometryEnabled: BYTE, + pub byRes2: [BYTE; 2usize], + pub dwChan: DWORD, + pub struFaceRect: NET_VCA_RECT, + pub dwTimestamp: DWORD, + pub byRes: [BYTE; 68usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_THERMOMETRY_UPLOAD() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 440usize, + concat!("Size of: ", stringify!(tagNET_DVR_THERMOMETRY_UPLOAD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_THERMOMETRY_UPLOAD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_UPLOAD), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_UPLOAD), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_UPLOAD), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szRuleName) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_UPLOAD), + "::", + stringify!(szRuleName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleID) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_UPLOAD), + "::", + stringify!(byRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleCalibType) as usize - ptr as usize }, + 45usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_UPLOAD), + "::", + stringify!(byRuleCalibType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPresetNo) as usize - ptr as usize }, + 46usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_UPLOAD), + "::", + stringify!(wPresetNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPointThermCfg) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_UPLOAD), + "::", + stringify!(struPointThermCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLinePolygonThermCfg) as usize - ptr as usize }, + 180usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_UPLOAD), + "::", + stringify!(struLinePolygonThermCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byThermometryUnit) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_UPLOAD), + "::", + stringify!(byThermometryUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataType) as usize - ptr as usize }, + 313usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_UPLOAD), + "::", + stringify!(byDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 314usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_UPLOAD), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySpecialPointThermType) as usize - ptr as usize }, + 315usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_UPLOAD), + "::", + stringify!(bySpecialPointThermType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fCenterPointTemperature) as usize - ptr as usize }, + 316usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_UPLOAD), + "::", + stringify!(fCenterPointTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fHighestPointTemperature) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_UPLOAD), + "::", + stringify!(fHighestPointTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fLowestPointTemperature) as usize - ptr as usize }, + 324usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_UPLOAD), + "::", + stringify!(fLowestPointTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHighestPoint) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_UPLOAD), + "::", + stringify!(struHighestPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLowestPoint) as usize - ptr as usize }, + 336usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_UPLOAD), + "::", + stringify!(struLowestPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsFreezedata) as usize - ptr as usize }, + 344usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_UPLOAD), + "::", + stringify!(byIsFreezedata) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).byFaceSnapThermometryEnabled) as usize - ptr as usize + }, + 345usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_UPLOAD), + "::", + stringify!(byFaceSnapThermometryEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 346usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_UPLOAD), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChan) as usize - ptr as usize }, + 348usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_UPLOAD), + "::", + stringify!(dwChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFaceRect) as usize - ptr as usize }, + 352usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_UPLOAD), + "::", + stringify!(struFaceRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTimestamp) as usize - ptr as usize }, + 368usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_UPLOAD), + "::", + stringify!(dwTimestamp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 372usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_UPLOAD), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_THERMOMETRY_UPLOAD = tagNET_DVR_THERMOMETRY_UPLOAD; +pub type LPNET_DVR_THERMOMETRY_UPLOAD = *mut tagNET_DVR_THERMOMETRY_UPLOAD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_THERMOMETRY_ALARM { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRuleID: BYTE, + pub byThermometryUnit: BYTE, + pub wPresetNo: WORD, + pub struPtzInfo: NET_PTZ_INFO, + pub byAlarmLevel: BYTE, + pub byAlarmType: BYTE, + pub byAlarmRule: BYTE, + pub byRuleCalibType: BYTE, + pub struPoint: NET_VCA_POINT, + pub struRegion: NET_VCA_POLYGON, + pub fRuleTemperature: f32, + pub fCurrTemperature: f32, + pub dwPicLen: DWORD, + pub dwThermalPicLen: DWORD, + pub dwThermalInfoLen: DWORD, + pub pPicBuff: *mut ::std::os::raw::c_char, + #[doc = "�ɼ���ͼƬ\u{5b8}��"] + pub pThermalPicBuff: *mut ::std::os::raw::c_char, + pub pThermalInfoBuff: *mut ::std::os::raw::c_char, + pub struHighestPoint: NET_VCA_POINT, + pub fToleranceTemperature: f32, + pub dwAlertFilteringTime: DWORD, + pub dwAlarmFilteringTime: DWORD, + pub dwTemperatureSuddenChangeCycle: DWORD, + pub fTemperatureSuddenChangeValue: f32, + pub byPicTransType: BYTE, + pub byRes1: [BYTE; 3usize], + pub dwVisibleChannel: DWORD, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub fAlarmRuleTemperature: f32, + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_THERMOMETRY_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 248usize, + concat!("Size of: ", stringify!(tagNET_DVR_THERMOMETRY_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_THERMOMETRY_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(byRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byThermometryUnit) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(byThermometryUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPresetNo) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(wPresetNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPtzInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(struPtzInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmLevel) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(byAlarmLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmRule) as usize - ptr as usize }, + 34usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(byAlarmRule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleCalibType) as usize - ptr as usize }, + 35usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(byRuleCalibType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPoint) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(struPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fRuleTemperature) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(fRuleTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fCurrTemperature) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(fCurrTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicLen) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(dwPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwThermalPicLen) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(dwThermalPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwThermalInfoLen) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(dwThermalInfoLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPicBuff) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(pPicBuff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pThermalPicBuff) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(pThermalPicBuff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pThermalInfoBuff) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(pThermalInfoBuff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struHighestPoint) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(struHighestPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fToleranceTemperature) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(fToleranceTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlertFilteringTime) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(dwAlertFilteringTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmFilteringTime) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(dwAlarmFilteringTime) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).dwTemperatureSuddenChangeCycle) as usize - ptr as usize + }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(dwTemperatureSuddenChangeCycle) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).fTemperatureSuddenChangeValue) as usize - ptr as usize + }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(fTemperatureSuddenChangeValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicTransType) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(byPicTransType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 205usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVisibleChannel) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(dwVisibleChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 212usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fAlarmRuleTemperature) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(fAlarmRuleTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_THERMOMETRY_ALARM = tagNET_DVR_THERMOMETRY_ALARM; +pub type LPNET_DVR_THERMOMETRY_ALARM = *mut tagNET_DVR_THERMOMETRY_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_THERMOMETRY_DIFF_ALARM { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byAlarmID1: BYTE, + pub byAlarmID2: BYTE, + pub wPresetNo: WORD, + pub byAlarmLevel: BYTE, + pub byAlarmType: BYTE, + pub byAlarmRule: BYTE, + pub byRuleCalibType: BYTE, + pub struPoint: [NET_VCA_POINT; 2usize], + pub struRegion: [NET_VCA_POLYGON; 2usize], + pub fRuleTemperatureDiff: f32, + pub fCurTemperatureDiff: f32, + pub struPtzInfo: NET_PTZ_INFO, + pub dwPicLen: DWORD, + pub dwThermalPicLen: DWORD, + pub dwThermalInfoLen: DWORD, + pub pPicBuff: *mut ::std::os::raw::c_char, + #[doc = "�ɼ���ͼƬ\u{5b8}��"] + pub pThermalPicBuff: *mut ::std::os::raw::c_char, + pub pThermalInfoBuff: *mut ::std::os::raw::c_char, + pub byThermometryUnit: BYTE, + pub byPicTransType: BYTE, + pub byRes1: [BYTE; 2usize], + pub fToleranceTemperature: f32, + pub dwAlarmFilteringTime: DWORD, + pub dwVisibleChannel: DWORD, + pub byRes: [BYTE; 48usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_THERMOMETRY_DIFF_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 328usize, + concat!("Size of: ", stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmID1) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(byAlarmID1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmID2) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(byAlarmID2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPresetNo) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(wPresetNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmLevel) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(byAlarmLevel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmType) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(byAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmRule) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(byAlarmRule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleCalibType) as usize - ptr as usize }, + 15usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(byRuleCalibType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPoint) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(struPoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRegion) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(struRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fRuleTemperatureDiff) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(fRuleTemperatureDiff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fCurTemperatureDiff) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(fCurTemperatureDiff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPtzInfo) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(struPtzInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicLen) as usize - ptr as usize }, + 228usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(dwPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwThermalPicLen) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(dwThermalPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwThermalInfoLen) as usize - ptr as usize }, + 236usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(dwThermalInfoLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPicBuff) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(pPicBuff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pThermalPicBuff) as usize - ptr as usize }, + 248usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(pThermalPicBuff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pThermalInfoBuff) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(pThermalInfoBuff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byThermometryUnit) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(byThermometryUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicTransType) as usize - ptr as usize }, + 265usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(byPicTransType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 266usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fToleranceTemperature) as usize - ptr as usize }, + 268usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(fToleranceTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmFilteringTime) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(dwAlarmFilteringTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVisibleChannel) as usize - ptr as usize }, + 276usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(dwVisibleChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_DIFF_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_THERMOMETRY_DIFF_ALARM = tagNET_DVR_THERMOMETRY_DIFF_ALARM; +pub type LPNET_DVR_THERMOMETRY_DIFF_ALARM = *mut tagNET_DVR_THERMOMETRY_DIFF_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NET_DVR_SHIPSCOUNT_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_NET_DVR_SHIPSCOUNT_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(NET_DVR_SHIPSCOUNT_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(NET_DVR_SHIPSCOUNT_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SHIPSCOUNT_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SHIPSCOUNT_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(NET_DVR_SHIPSCOUNT_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type LPNET_DVR_SHIPSCOUNT_COND = *mut NET_DVR_SHIPSCOUNT_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SHIPSCOUNT_CFG { + pub dwSize: DWORD, + pub dwUpShipsCount: DWORD, + pub dwDownShipsCount: DWORD, + pub dwLeftShipsCount: DWORD, + pub dwRightShipsCount: DWORD, + pub dwTotalCount: DWORD, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub byDataType: BYTE, + pub byRes: [BYTE; 255usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SHIPSCOUNT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 288usize, + concat!("Size of: ", stringify!(tagNET_DVR_SHIPSCOUNT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SHIPSCOUNT_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSCOUNT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwUpShipsCount) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSCOUNT_CFG), + "::", + stringify!(dwUpShipsCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDownShipsCount) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSCOUNT_CFG), + "::", + stringify!(dwDownShipsCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLeftShipsCount) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSCOUNT_CFG), + "::", + stringify!(dwLeftShipsCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRightShipsCount) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSCOUNT_CFG), + "::", + stringify!(dwRightShipsCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTotalCount) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSCOUNT_CFG), + "::", + stringify!(dwTotalCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSCOUNT_CFG), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSCOUNT_CFG), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataType) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSCOUNT_CFG), + "::", + stringify!(byDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSCOUNT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SHIPSCOUNT_CFG = tagNET_DVR_SHIPSCOUNT_CFG; +pub type LPNET_DVR_SHIPSCOUNT_CFG = *mut tagNET_DVR_SHIPSCOUNT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SHIPSINFO { + pub fShipsLength: f32, + pub fShipsHeight: f32, + pub fShipsWidth: f32, + pub fShipsSpeed: f32, + pub byShipsDirection: BYTE, + pub byShipsDetState: BYTE, + pub byTriggerLineID: BYTE, + pub byRes: [BYTE; 61usize], + pub struShipsRect: NET_VCA_POLYGON, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SHIPSINFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 164usize, + concat!("Size of: ", stringify!(tagNET_DVR_SHIPSINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SHIPSINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fShipsLength) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSINFO), + "::", + stringify!(fShipsLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fShipsHeight) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSINFO), + "::", + stringify!(fShipsHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fShipsWidth) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSINFO), + "::", + stringify!(fShipsWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fShipsSpeed) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSINFO), + "::", + stringify!(fShipsSpeed) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShipsDirection) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSINFO), + "::", + stringify!(byShipsDirection) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShipsDetState) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSINFO), + "::", + stringify!(byShipsDetState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTriggerLineID) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSINFO), + "::", + stringify!(byTriggerLineID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 19usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSINFO), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struShipsRect) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSINFO), + "::", + stringify!(struShipsRect) + ) + ); +} +pub type NET_DVR_SHIPSINFO = tagNET_DVR_SHIPSINFO; +pub type LPNET_DVR_SHIPSINFO = *mut tagNET_DVR_SHIPSINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SHIPIMAGE_INFO { + pub dwShipImageLen: DWORD, + pub pXmlBuf: *mut ::std::os::raw::c_char, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SHIPIMAGE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(tagNET_DVR_SHIPIMAGE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SHIPIMAGE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwShipImageLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPIMAGE_INFO), + "::", + stringify!(dwShipImageLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pXmlBuf) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPIMAGE_INFO), + "::", + stringify!(pXmlBuf) + ) + ); +} +pub type NET_DVR_SHIPIMAGE_INFO = tagNET_DVR_SHIPIMAGE_INFO; +pub type LPNET_DVR_SHIPIMAGE_INFO = *mut tagNET_DVR_SHIPIMAGE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SHIPSDETECTION_ALARM { + pub dwSize: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub byShipsNum: BYTE, + pub byShipsNumHead: BYTE, + pub byShipsNumEnd: BYTE, + pub byPicTransType: BYTE, + pub struShipInfo: [NET_DVR_SHIPSINFO; 20usize], + pub dwPicLen: DWORD, + pub dwThermalPicLen: DWORD, + pub pPicBuffer: *mut BYTE, + pub pThermalPicBuffer: *mut BYTE, + pub wDevInfoIvmsChannelEx: WORD, + pub byTimeDiffFlag: BYTE, + pub cTimeDifferenceH: ::std::os::raw::c_char, + pub cTimeDifferenceM: ::std::os::raw::c_char, + pub bySID: BYTE, + pub byRes1: [BYTE; 2usize], + pub szSceneName: [::std::os::raw::c_char; 32usize], + pub byRes: [BYTE; 132usize], + pub dwXmlLen: DWORD, + pub pXmlBuf: *mut ::std::os::raw::c_char, + pub struShipImageInfo: [NET_DVR_SHIPIMAGE_INFO; 6usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SHIPSDETECTION_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 3752usize, + concat!("Size of: ", stringify!(tagNET_DVR_SHIPSDETECTION_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SHIPSDETECTION_ALARM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_ALARM), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_ALARM), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_ALARM), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShipsNum) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_ALARM), + "::", + stringify!(byShipsNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShipsNumHead) as usize - ptr as usize }, + 161usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_ALARM), + "::", + stringify!(byShipsNumHead) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byShipsNumEnd) as usize - ptr as usize }, + 162usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_ALARM), + "::", + stringify!(byShipsNumEnd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicTransType) as usize - ptr as usize }, + 163usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_ALARM), + "::", + stringify!(byPicTransType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struShipInfo) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_ALARM), + "::", + stringify!(struShipInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicLen) as usize - ptr as usize }, + 3444usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_ALARM), + "::", + stringify!(dwPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwThermalPicLen) as usize - ptr as usize }, + 3448usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_ALARM), + "::", + stringify!(dwThermalPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPicBuffer) as usize - ptr as usize }, + 3456usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_ALARM), + "::", + stringify!(pPicBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pThermalPicBuffer) as usize - ptr as usize }, + 3464usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_ALARM), + "::", + stringify!(pThermalPicBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevInfoIvmsChannelEx) as usize - ptr as usize }, + 3472usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_ALARM), + "::", + stringify!(wDevInfoIvmsChannelEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTimeDiffFlag) as usize - ptr as usize }, + 3474usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_ALARM), + "::", + stringify!(byTimeDiffFlag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceH) as usize - ptr as usize }, + 3475usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_ALARM), + "::", + stringify!(cTimeDifferenceH) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cTimeDifferenceM) as usize - ptr as usize }, + 3476usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_ALARM), + "::", + stringify!(cTimeDifferenceM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySID) as usize - ptr as usize }, + 3477usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_ALARM), + "::", + stringify!(bySID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 3478usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_ALARM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szSceneName) as usize - ptr as usize }, + 3480usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_ALARM), + "::", + stringify!(szSceneName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3512usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_ALARM), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwXmlLen) as usize - ptr as usize }, + 3644usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_ALARM), + "::", + stringify!(dwXmlLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pXmlBuf) as usize - ptr as usize }, + 3648usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_ALARM), + "::", + stringify!(pXmlBuf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struShipImageInfo) as usize - ptr as usize }, + 3656usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SHIPSDETECTION_ALARM), + "::", + stringify!(struShipImageInfo) + ) + ); +} +pub type NET_DVR_SHIPSDETECTION_ALARM = tagNET_DVR_SHIPSDETECTION_ALARM; +pub type LPNET_DVR_SHIPSDETECTION_ALARM = *mut tagNET_DVR_SHIPSDETECTION_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_THERMAL_PIP { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byPipMode: BYTE, + pub byOverlapType: BYTE, + pub byTransparency: BYTE, + pub struPipRegion: NET_VCA_POLYGON, + pub byImageFusionRatio: BYTE, + pub byBorderFusionRatio: BYTE, + pub byRes1: [BYTE; 2usize], + pub fDistance: f32, + pub byRes: [BYTE; 632usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_THERMAL_PIP() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 732usize, + concat!("Size of: ", stringify!(tagNET_DVR_THERMAL_PIP)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_THERMAL_PIP)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMAL_PIP), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMAL_PIP), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPipMode) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMAL_PIP), + "::", + stringify!(byPipMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOverlapType) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMAL_PIP), + "::", + stringify!(byOverlapType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransparency) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMAL_PIP), + "::", + stringify!(byTransparency) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struPipRegion) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMAL_PIP), + "::", + stringify!(struPipRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byImageFusionRatio) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMAL_PIP), + "::", + stringify!(byImageFusionRatio) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBorderFusionRatio) as usize - ptr as usize }, + 93usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMAL_PIP), + "::", + stringify!(byBorderFusionRatio) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 94usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMAL_PIP), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fDistance) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMAL_PIP), + "::", + stringify!(fDistance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMAL_PIP), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_THERMAL_PIP = tagNET_DVR_THERMAL_PIP; +pub type LPNET_DVR_THERMAL_PIP = *mut tagNET_DVR_THERMAL_PIP; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RULESLINE_CFG { + pub struRGB: NET_DVR_RGB_COLOR, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RULESLINE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_RULESLINE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RULESLINE_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRGB) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RULESLINE_CFG), + "::", + stringify!(struRGB) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RULESLINE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_RULESLINE_CFG = tagNET_DVR_RULESLINE_CFG; +pub type LPNET_DVR_RULESLINE_CFG = *mut tagNET_DVR_RULESLINE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_THERMAL_INTELRULE_DISPLAY { + pub dwSize: DWORD, + pub byFontSizeType: BYTE, + pub byRes1: [BYTE; 3usize], + pub struNormalRulesLineCfg: NET_DVR_RULESLINE_CFG, + pub struAlertRulesLineCfg: NET_DVR_RULESLINE_CFG, + pub struAlarmRulesLineCfg: NET_DVR_RULESLINE_CFG, + pub byRes: [BYTE; 640usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_THERMAL_INTELRULE_DISPLAY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1044usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_THERMAL_INTELRULE_DISPLAY) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_THERMAL_INTELRULE_DISPLAY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMAL_INTELRULE_DISPLAY), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFontSizeType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMAL_INTELRULE_DISPLAY), + "::", + stringify!(byFontSizeType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMAL_INTELRULE_DISPLAY), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNormalRulesLineCfg) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMAL_INTELRULE_DISPLAY), + "::", + stringify!(struNormalRulesLineCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlertRulesLineCfg) as usize - ptr as usize }, + 140usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMAL_INTELRULE_DISPLAY), + "::", + stringify!(struAlertRulesLineCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmRulesLineCfg) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMAL_INTELRULE_DISPLAY), + "::", + stringify!(struAlarmRulesLineCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 404usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMAL_INTELRULE_DISPLAY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_THERMAL_INTELRULE_DISPLAY = tagNET_DVR_THERMAL_INTELRULE_DISPLAY; +pub type LPNET_DVR_THERMAL_INTELRULE_DISPLAY = *mut tagNET_DVR_THERMAL_INTELRULE_DISPLAY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BAREDATAOVERLAY_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byIntervalTime: BYTE, + pub byRes: [BYTE; 258usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BAREDATAOVERLAY_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 264usize, + concat!("Size of: ", stringify!(tagNET_DVR_BAREDATAOVERLAY_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_BAREDATAOVERLAY_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BAREDATAOVERLAY_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BAREDATAOVERLAY_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIntervalTime) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BAREDATAOVERLAY_CFG), + "::", + stringify!(byIntervalTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BAREDATAOVERLAY_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BAREDATAOVERLAY_CFG = tagNET_DVR_BAREDATAOVERLAY_CFG; +pub type LPNET_DVR_BAREDATAOVERLAY_CFG = *mut tagNET_DVR_BAREDATAOVERLAY_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_THERMOMETRY_TRIGGER_COND { + pub dwSize: DWORD, + pub dwChan: DWORD, + pub dwPreset: DWORD, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_THERMOMETRY_TRIGGER_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 268usize, + concat!("Size of: ", stringify!(tagNET_DVR_THERMOMETRY_TRIGGER_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_THERMOMETRY_TRIGGER_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_TRIGGER_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_TRIGGER_COND), + "::", + stringify!(dwChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPreset) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_TRIGGER_COND), + "::", + stringify!(dwPreset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_TRIGGER_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_THERMOMETRY_TRIGGER_COND = tagNET_DVR_THERMOMETRY_TRIGGER_COND; +pub type LPNET_DVR_THERMOMETRY_TRIGGER_COND = *mut tagNET_DVR_THERMOMETRY_TRIGGER_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_MANUALDEICING_CFG { + pub dwSize: DWORD, + pub byEnabled: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_MANUALDEICING_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_MANUALDEICING_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_MANUALDEICING_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANUALDEICING_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANUALDEICING_CFG), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_MANUALDEICING_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_MANUALDEICING_CFG = tagNET_DVR_MANUALDEICING_CFG; +pub type LPNET_DVR_MANUALDEICING_CFG = *mut tagNET_DVR_MANUALDEICING_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INPUT_SOURCE_TEXT_COND { + pub dwSize: DWORD, + pub dwInputSourceNo: DWORD, + pub dwTextNo: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INPUT_SOURCE_TEXT_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_INPUT_SOURCE_TEXT_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_INPUT_SOURCE_TEXT_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_TEXT_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInputSourceNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_TEXT_COND), + "::", + stringify!(dwInputSourceNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTextNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_TEXT_COND), + "::", + stringify!(dwTextNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_TEXT_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INPUT_SOURCE_TEXT_COND = tagNET_DVR_INPUT_SOURCE_TEXT_COND; +pub type LPNET_DVR_INPUT_SOURCE_TEXT_COND = *mut tagNET_DVR_INPUT_SOURCE_TEXT_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INPUT_SOURCE_TEXT { + pub dwSize: DWORD, + pub dwTextNo: DWORD, + pub byEnable: BYTE, + pub byFontSize: BYTE, + pub byBkGroudMode: BYTE, + pub byRes: [BYTE; 1usize], + pub dwXPosition: DWORD, + pub dwYPosition: DWORD, + pub struForegroudColor: NET_DVR_RGB_COLOR, + pub struBackgroudColor: NET_DVR_RGB_COLOR, + pub byTextContent: [BYTE; 128usize], + pub byRes1: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INPUT_SOURCE_TEXT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 220usize, + concat!("Size of: ", stringify!(tagNET_DVR_INPUT_SOURCE_TEXT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INPUT_SOURCE_TEXT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_TEXT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTextNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_TEXT), + "::", + stringify!(dwTextNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_TEXT), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFontSize) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_TEXT), + "::", + stringify!(byFontSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBkGroudMode) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_TEXT), + "::", + stringify!(byBkGroudMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 11usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_TEXT), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwXPosition) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_TEXT), + "::", + stringify!(dwXPosition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwYPosition) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_TEXT), + "::", + stringify!(dwYPosition) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struForegroudColor) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_TEXT), + "::", + stringify!(struForegroudColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struBackgroudColor) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_TEXT), + "::", + stringify!(struBackgroudColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTextContent) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_TEXT), + "::", + stringify!(byTextContent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_TEXT), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_INPUT_SOURCE_TEXT = tagNET_DVR_INPUT_SOURCE_TEXT; +pub type LPNET_DVR_INPUT_SOURCE_TEXT = *mut tagNET_DVR_INPUT_SOURCE_TEXT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INPUT_SOURCE_TEXT_LIST { + pub dwSize: DWORD, + pub struTextList: [NET_DVR_INPUT_SOURCE_TEXT; 32usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INPUT_SOURCE_TEXT_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 7108usize, + concat!("Size of: ", stringify!(tagNET_DVR_INPUT_SOURCE_TEXT_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_INPUT_SOURCE_TEXT_LIST) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_TEXT_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTextList) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_TEXT_LIST), + "::", + stringify!(struTextList) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 7044usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_TEXT_LIST), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INPUT_SOURCE_TEXT_LIST = tagNET_DVR_INPUT_SOURCE_TEXT_LIST; +pub type LPNET_DVR_INPUT_SOURCE_TEXT_LIST = *mut tagNET_DVR_INPUT_SOURCE_TEXT_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INPUT_SOURCE_RESOLUTION { + pub dwSize: DWORD, + pub dwInputSignalNo: DWORD, + pub byEnabled: BYTE, + pub byRes: BYTE, + pub wImageWidth: WORD, + pub wImageHeight: WORD, + pub wRefreshRate: WORD, + pub byColorDepth: BYTE, + pub byScanType: BYTE, + pub byRes1: [BYTE; 62usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INPUT_SOURCE_RESOLUTION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_INPUT_SOURCE_RESOLUTION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_INPUT_SOURCE_RESOLUTION) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_RESOLUTION), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInputSignalNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_RESOLUTION), + "::", + stringify!(dwInputSignalNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_RESOLUTION), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_RESOLUTION), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wImageWidth) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_RESOLUTION), + "::", + stringify!(wImageWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wImageHeight) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_RESOLUTION), + "::", + stringify!(wImageHeight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRefreshRate) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_RESOLUTION), + "::", + stringify!(wRefreshRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byColorDepth) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_RESOLUTION), + "::", + stringify!(byColorDepth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScanType) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_RESOLUTION), + "::", + stringify!(byScanType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_RESOLUTION), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_INPUT_SOURCE_RESOLUTION = tagNET_DVR_INPUT_SOURCE_RESOLUTION; +pub type LPNET_DVR_INPUT_SOURCE_RESOLUTION = *mut tagNET_DVR_INPUT_SOURCE_RESOLUTION; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INPUT_SOURCE_RESOLUTION_LIST { + pub dwSize: DWORD, + pub dwInputSignalCnt: DWORD, + pub lpstruBuffer: LPNET_DVR_INPUT_SOURCE_RESOLUTION, + pub dwBufferSize: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INPUT_SOURCE_RESOLUTION_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_INPUT_SOURCE_RESOLUTION_LIST) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_INPUT_SOURCE_RESOLUTION_LIST) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_RESOLUTION_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInputSignalCnt) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_RESOLUTION_LIST), + "::", + stringify!(dwInputSignalCnt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpstruBuffer) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_RESOLUTION_LIST), + "::", + stringify!(lpstruBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBufferSize) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_RESOLUTION_LIST), + "::", + stringify!(dwBufferSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INPUT_SOURCE_RESOLUTION_LIST), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INPUT_SOURCE_RESOLUTION_LIST = tagNET_DVR_INPUT_SOURCE_RESOLUTION_LIST; +pub type LPNET_DVR_INPUT_SOURCE_RESOLUTION_LIST = *mut tagNET_DVR_INPUT_SOURCE_RESOLUTION_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_AREA_COND { + pub dwSize: DWORD, + pub dwVideoWallNo: DWORD, + pub dwLEDAreaNo: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_AREA_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 44usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_AREA_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LED_AREA_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_AREA_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVideoWallNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_AREA_COND), + "::", + stringify!(dwVideoWallNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLEDAreaNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_AREA_COND), + "::", + stringify!(dwLEDAreaNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_AREA_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LED_AREA_COND = tagNET_DVR_LED_AREA_COND; +pub type LPNET_DVR_LED_AREA_COND = *mut tagNET_DVR_LED_AREA_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_AREA_INFO { + pub dwSize: DWORD, + pub dwLEDAreaNo: DWORD, + pub struRect: NET_DVR_RECTCFG_EX, + pub dwaOutputNo: [DWORD; 512usize], + pub byAreaType: BYTE, + pub byRes: [BYTE; 31usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_AREA_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2108usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_AREA_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LED_AREA_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_AREA_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLEDAreaNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_AREA_INFO), + "::", + stringify!(dwLEDAreaNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRect) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_AREA_INFO), + "::", + stringify!(struRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwaOutputNo) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_AREA_INFO), + "::", + stringify!(dwaOutputNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAreaType) as usize - ptr as usize }, + 2076usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_AREA_INFO), + "::", + stringify!(byAreaType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2077usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_AREA_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LED_AREA_INFO = tagNET_DVR_LED_AREA_INFO; +pub type LPNET_DVR_LED_AREA_INFO = *mut tagNET_DVR_LED_AREA_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LED_AREA_INFO_LIST { + pub dwSize: DWORD, + pub dwLEDAreaNum: DWORD, + pub lpstruBuffer: LPNET_DVR_LED_AREA_INFO, + pub dwBufferSize: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LED_AREA_INFO_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_LED_AREA_INFO_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LED_AREA_INFO_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_AREA_INFO_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLEDAreaNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_AREA_INFO_LIST), + "::", + stringify!(dwLEDAreaNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpstruBuffer) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_AREA_INFO_LIST), + "::", + stringify!(lpstruBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBufferSize) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_AREA_INFO_LIST), + "::", + stringify!(dwBufferSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LED_AREA_INFO_LIST), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LED_AREA_INFO_LIST = tagNET_DVR_LED_AREA_INFO_LIST; +pub type LPNET_DVR_LED_AREA_INFO_LIST = *mut tagNET_DVR_LED_AREA_INFO_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CALL_WAITTING_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: BYTE, + pub wWaitTime: WORD, + pub wCalledWaitTime: WORD, + pub byRes: [BYTE; 510usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CALL_WAITTING_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 520usize, + concat!("Size of: ", stringify!(tagNET_DVR_CALL_WAITTING_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CALL_WAITTING_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_WAITTING_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_WAITTING_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_WAITTING_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wWaitTime) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_WAITTING_CFG), + "::", + stringify!(wWaitTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCalledWaitTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_WAITTING_CFG), + "::", + stringify!(wCalledWaitTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CALL_WAITTING_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CALL_WAITTING_CFG = tagNET_DVR_CALL_WAITTING_CFG; +pub type LPNET_DVR_CALL_WAITTING_CFG = *mut tagNET_DVR_CALL_WAITTING_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARM_LAMP_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: BYTE, + pub wFlashDuration: WORD, + pub wFlashIntervalTime: WORD, + pub byRes: [BYTE; 510usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARM_LAMP_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 520usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARM_LAMP_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARM_LAMP_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_LAMP_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_LAMP_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_LAMP_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFlashDuration) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_LAMP_CFG), + "::", + stringify!(wFlashDuration) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wFlashIntervalTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_LAMP_CFG), + "::", + stringify!(wFlashIntervalTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_LAMP_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARM_LAMP_CFG = tagNET_DVR_ALARM_LAMP_CFG; +pub type LPNET_DVR_ALARM_LAMP_CFG = *mut tagNET_DVR_ALARM_LAMP_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VOICE_PROMPTION_CFG { + pub dwSize: DWORD, + pub byEnable: BYTE, + pub byRes1: [BYTE; 3usize], + pub byCenterBusyFile: [BYTE; 32usize], + pub byRefusedFile: [BYTE; 32usize], + pub byHangUpFile: [BYTE; 32usize], + pub byCallWaittingFile: [BYTE; 32usize], + pub byConsultWaittingFile: [BYTE; 32usize], + pub byWelcomeFile: [BYTE; 32usize], + pub byFarewellFile: [BYTE; 32usize], + pub byCalledVoicePromptName: [BYTE; 32usize], + pub byRes: [BYTE; 384usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VOICE_PROMPTION_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 648usize, + concat!("Size of: ", stringify!(tagNET_DVR_VOICE_PROMPTION_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VOICE_PROMPTION_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOICE_PROMPTION_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOICE_PROMPTION_CFG), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOICE_PROMPTION_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCenterBusyFile) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOICE_PROMPTION_CFG), + "::", + stringify!(byCenterBusyFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRefusedFile) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOICE_PROMPTION_CFG), + "::", + stringify!(byRefusedFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byHangUpFile) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOICE_PROMPTION_CFG), + "::", + stringify!(byHangUpFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCallWaittingFile) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOICE_PROMPTION_CFG), + "::", + stringify!(byCallWaittingFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byConsultWaittingFile) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOICE_PROMPTION_CFG), + "::", + stringify!(byConsultWaittingFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byWelcomeFile) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOICE_PROMPTION_CFG), + "::", + stringify!(byWelcomeFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFarewellFile) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOICE_PROMPTION_CFG), + "::", + stringify!(byFarewellFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCalledVoicePromptName) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOICE_PROMPTION_CFG), + "::", + stringify!(byCalledVoicePromptName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VOICE_PROMPTION_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VOICE_PROMPTION_CFG = tagNET_DVR_VOICE_PROMPTION_CFG; +pub type LPNET_DVR_VOICE_PROMPTION_CFG = *mut tagNET_DVR_VOICE_PROMPTION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EMERGENCE_ALARM_RSP_CTRL_CFG { + pub dwSize: DWORD, + pub byCommand: BYTE, + pub byType: BYTE, + pub byRes: [BYTE; 510usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EMERGENCE_ALARM_RSP_CTRL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 516usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_EMERGENCE_ALARM_RSP_CTRL_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_EMERGENCE_ALARM_RSP_CTRL_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EMERGENCE_ALARM_RSP_CTRL_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCommand) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EMERGENCE_ALARM_RSP_CTRL_CFG), + "::", + stringify!(byCommand) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EMERGENCE_ALARM_RSP_CTRL_CFG), + "::", + stringify!(byType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EMERGENCE_ALARM_RSP_CTRL_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EMERGENCE_ALARM_RSP_CTRL_CFG = tagNET_DVR_EMERGENCE_ALARM_RSP_CTRL_CFG; +pub type LPNET_DVR_EMERGENCE_ALARM_RSP_CTRL_CFG = *mut tagNET_DVR_EMERGENCE_ALARM_RSP_CTRL_CFG; +#[doc = "*�����������_V50/////////////"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _tagNET_DVR_ALARMHOST_NETPARAM_V50 { + pub dwSize: DWORD, + pub struIP: NET_DVR_IPADDR, + pub wPort: WORD, + pub byAddressType: BYTE, + pub byEnable: BYTE, + pub byDomainName: [BYTE; 64usize], + pub byReportProtocol: BYTE, + pub byDevID: [BYTE; 32usize], + pub byProtocolVersion: BYTE, + pub byRes1: [BYTE; 3usize], + pub byEHomeKey: [BYTE; 32usize], + pub byRes2: [BYTE; 28usize], +} +#[test] +fn bindgen_test_layout__tagNET_DVR_ALARMHOST_NETPARAM_V50() { + const UNINIT: ::std::mem::MaybeUninit<_tagNET_DVR_ALARMHOST_NETPARAM_V50> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_tagNET_DVR_ALARMHOST_NETPARAM_V50>(), + 316usize, + concat!("Size of: ", stringify!(_tagNET_DVR_ALARMHOST_NETPARAM_V50)) + ); + assert_eq!( + ::std::mem::align_of::<_tagNET_DVR_ALARMHOST_NETPARAM_V50>(), + 4usize, + concat!( + "Alignment of ", + stringify!(_tagNET_DVR_ALARMHOST_NETPARAM_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_ALARMHOST_NETPARAM_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIP) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_ALARMHOST_NETPARAM_V50), + "::", + stringify!(struIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_ALARMHOST_NETPARAM_V50), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAddressType) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_ALARMHOST_NETPARAM_V50), + "::", + stringify!(byAddressType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 151usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_ALARMHOST_NETPARAM_V50), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDomainName) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_ALARMHOST_NETPARAM_V50), + "::", + stringify!(byDomainName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byReportProtocol) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_ALARMHOST_NETPARAM_V50), + "::", + stringify!(byReportProtocol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDevID) as usize - ptr as usize }, + 217usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_ALARMHOST_NETPARAM_V50), + "::", + stringify!(byDevID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProtocolVersion) as usize - ptr as usize }, + 249usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_ALARMHOST_NETPARAM_V50), + "::", + stringify!(byProtocolVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 250usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_ALARMHOST_NETPARAM_V50), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEHomeKey) as usize - ptr as usize }, + 253usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_ALARMHOST_NETPARAM_V50), + "::", + stringify!(byEHomeKey) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 285usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_ALARMHOST_NETPARAM_V50), + "::", + stringify!(byRes2) + ) + ); +} +#[doc = "*�����������_V50/////////////"] +pub type NET_DVR_ALARMHOST_NETPARAM_V50 = _tagNET_DVR_ALARMHOST_NETPARAM_V50; +#[doc = "*�����������_V50/////////////"] +pub type LPNET_DVR_ALARMHOST_NETPARAM_V50 = *mut _tagNET_DVR_ALARMHOST_NETPARAM_V50; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _tagNET_DVR_ALARMHOST_NETCFG_V50 { + pub dwSize: DWORD, + pub struNetCenter: [NET_DVR_ALARMHOST_NETPARAM_V50; 4usize], + pub byRes1: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout__tagNET_DVR_ALARMHOST_NETCFG_V50() { + const UNINIT: ::std::mem::MaybeUninit<_tagNET_DVR_ALARMHOST_NETCFG_V50> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_tagNET_DVR_ALARMHOST_NETCFG_V50>(), + 1396usize, + concat!("Size of: ", stringify!(_tagNET_DVR_ALARMHOST_NETCFG_V50)) + ); + assert_eq!( + ::std::mem::align_of::<_tagNET_DVR_ALARMHOST_NETCFG_V50>(), + 4usize, + concat!( + "Alignment of ", + stringify!(_tagNET_DVR_ALARMHOST_NETCFG_V50) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_ALARMHOST_NETCFG_V50), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struNetCenter) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_ALARMHOST_NETCFG_V50), + "::", + stringify!(struNetCenter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 1268usize, + concat!( + "Offset of field: ", + stringify!(_tagNET_DVR_ALARMHOST_NETCFG_V50), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_ALARMHOST_NETCFG_V50 = _tagNET_DVR_ALARMHOST_NETCFG_V50; +pub type LPNET_DVR_ALARMHOST_NETCFG_V50 = *mut _tagNET_DVR_ALARMHOST_NETCFG_V50; +pub const tagSTREAM_TYPE_STREAM_PS: tagSTREAM_TYPE = 1; +pub const tagSTREAM_TYPE_STREAM_3GPP: tagSTREAM_TYPE = 2; +pub type tagSTREAM_TYPE = ::std::os::raw::c_uint; +pub use self::tagSTREAM_TYPE as STREAM_TYPE; +pub const tagNET_SDK_INIT_CFG_TYPE_NET_SDK_INIT_CFG_TYPE_CHECK_MODULE_COM: + tagNET_SDK_INIT_CFG_TYPE = 0; +pub const tagNET_SDK_INIT_CFG_TYPE_NET_SDK_INIT_CFG_ABILITY: tagNET_SDK_INIT_CFG_TYPE = 1; +pub const tagNET_SDK_INIT_CFG_TYPE_NET_SDK_INIT_CFG_SDK_PATH: tagNET_SDK_INIT_CFG_TYPE = 2; +pub const tagNET_SDK_INIT_CFG_TYPE_NET_SDK_INIT_CFG_LIBEAY_PATH: tagNET_SDK_INIT_CFG_TYPE = 3; +pub const tagNET_SDK_INIT_CFG_TYPE_NET_SDK_INIT_CFG_SSLEAY_PATH: tagNET_SDK_INIT_CFG_TYPE = 4; +pub type tagNET_SDK_INIT_CFG_TYPE = ::std::os::raw::c_uint; +pub use self::tagNET_SDK_INIT_CFG_TYPE as NET_SDK_INIT_CFG_TYPE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INIT_CHECK_MODULE_COM { + pub byEnable: BYTE, + pub byRes: [BYTE; 255usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INIT_CHECK_MODULE_COM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_INIT_CHECK_MODULE_COM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_INIT_CHECK_MODULE_COM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnable) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INIT_CHECK_MODULE_COM), + "::", + stringify!(byEnable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INIT_CHECK_MODULE_COM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INIT_CHECK_MODULE_COM = tagNET_DVR_INIT_CHECK_MODULE_COM; +pub type LPNET_DVR_INIT_CHECK_MODULE_COM = *mut tagNET_DVR_INIT_CHECK_MODULE_COM; +pub const _INIT_CFG_MAX_NUM_INIT_CFG_NUM_2048: _INIT_CFG_MAX_NUM = 2048; +pub const _INIT_CFG_MAX_NUM_INIT_CFG_NUM_5120: _INIT_CFG_MAX_NUM = 5120; +pub const _INIT_CFG_MAX_NUM_INIT_CFG_NUM_10240: _INIT_CFG_MAX_NUM = 10240; +pub const _INIT_CFG_MAX_NUM_INIT_CFG_NUM_15360: _INIT_CFG_MAX_NUM = 15360; +pub const _INIT_CFG_MAX_NUM_INIT_CFG_NUM_20480: _INIT_CFG_MAX_NUM = 20480; +pub type _INIT_CFG_MAX_NUM = ::std::os::raw::c_uint; +pub use self::_INIT_CFG_MAX_NUM as INIT_CFG_MAX_NUM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_INIT_CFG_ABILITY { + pub enumMaxLoginUsersNum: INIT_CFG_MAX_NUM, + pub enumMaxAlarmNum: INIT_CFG_MAX_NUM, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_INIT_CFG_ABILITY() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_INIT_CFG_ABILITY)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_INIT_CFG_ABILITY)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).enumMaxLoginUsersNum) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INIT_CFG_ABILITY), + "::", + stringify!(enumMaxLoginUsersNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).enumMaxAlarmNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INIT_CFG_ABILITY), + "::", + stringify!(enumMaxAlarmNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_INIT_CFG_ABILITY), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_INIT_CFG_ABILITY = tagNET_DVR_INIT_CFG_ABILITY; +pub type LPNET_DVR_INIT_CFG_ABILITY = *mut tagNET_DVR_INIT_CFG_ABILITY; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOCAL_SDK_PATH { + pub sPath: [::std::os::raw::c_char; 256usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOCAL_SDK_PATH() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 384usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOCAL_SDK_PATH)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOCAL_SDK_PATH)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPath) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_SDK_PATH), + "::", + stringify!(sPath) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOCAL_SDK_PATH), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOCAL_SDK_PATH = tagNET_DVR_LOCAL_SDK_PATH; +pub type LPNET_DVR_LOCAL_SDK_PATH = *mut tagNET_DVR_LOCAL_SDK_PATH; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SDKMEMPOOL_CFG { + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SDKMEMPOOL_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 256usize, + concat!("Size of: ", stringify!(tagNET_DVR_SDKMEMPOOL_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SDKMEMPOOL_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SDKMEMPOOL_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SDKMEMPOOL_CFG = tagNET_DVR_SDKMEMPOOL_CFG; +pub type LPNET_DVR_SDKMEMPOOL_CFG = *mut tagNET_DVR_SDKMEMPOOL_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_RES_INFO { + pub dwImageWidth: DWORD, + pub dwImageHeight: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_RES_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_RES_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_RES_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwImageWidth) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RES_INFO), + "::", + stringify!(dwImageWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwImageHeight) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_RES_INFO), + "::", + stringify!(dwImageHeight) + ) + ); +} +pub type NET_DVR_RES_INFO = tagNET_DVR_RES_INFO; +pub type LPNET_DVR_RES_INFO = *mut tagNET_DVR_RES_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VS_INPUT_CHAN_INIT { + pub dwSize: DWORD, + pub dwVSInputChan: DWORD, + pub dwResNums: DWORD, + pub struResList: [NET_DVR_RES_INFO; 8usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VS_INPUT_CHAN_INIT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 108usize, + concat!("Size of: ", stringify!(tagNET_DVR_VS_INPUT_CHAN_INIT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VS_INPUT_CHAN_INIT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VS_INPUT_CHAN_INIT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVSInputChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VS_INPUT_CHAN_INIT), + "::", + stringify!(dwVSInputChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwResNums) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VS_INPUT_CHAN_INIT), + "::", + stringify!(dwResNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struResList) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VS_INPUT_CHAN_INIT), + "::", + stringify!(struResList) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VS_INPUT_CHAN_INIT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VS_INPUT_CHAN_INIT = tagNET_DVR_VS_INPUT_CHAN_INIT; +pub type LPNET_DVR_VS_INPUT_CHAN_INIT = *mut tagNET_DVR_VS_INPUT_CHAN_INIT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VS_INPUT_CHAN_INIT_LIST { + pub dwSize: DWORD, + pub struChanList: [NET_DVR_VS_INPUT_CHAN_INIT; 16usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VS_INPUT_CHAN_INIT_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1764usize, + concat!("Size of: ", stringify!(tagNET_DVR_VS_INPUT_CHAN_INIT_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_VS_INPUT_CHAN_INIT_LIST) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VS_INPUT_CHAN_INIT_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struChanList) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VS_INPUT_CHAN_INIT_LIST), + "::", + stringify!(struChanList) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1732usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VS_INPUT_CHAN_INIT_LIST), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VS_INPUT_CHAN_INIT_LIST = tagNET_DVR_VS_INPUT_CHAN_INIT_LIST; +pub type LPNET_DVR_VS_INPUT_CHAN_INIT_LIST = *mut tagNET_DVR_VS_INPUT_CHAN_INIT_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VS_INPUT_CHAN_CFG { + pub dwSize: DWORD, + pub dwVSInputChan: DWORD, + pub struResolutin: NET_DVR_RES_INFO, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VS_INPUT_CHAN_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_VS_INPUT_CHAN_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VS_INPUT_CHAN_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VS_INPUT_CHAN_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVSInputChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VS_INPUT_CHAN_CFG), + "::", + stringify!(dwVSInputChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struResolutin) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VS_INPUT_CHAN_CFG), + "::", + stringify!(struResolutin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VS_INPUT_CHAN_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VS_INPUT_CHAN_CFG = tagNET_DVR_VS_INPUT_CHAN_CFG; +pub type LPNET_DVR_VS_INPUT_CHAN_CFG = *mut tagNET_DVR_VS_INPUT_CHAN_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_VS_NETSRC_CFG { + pub dwSize: DWORD, + pub dwVSInputChan: DWORD, + pub byDispUrl: [BYTE; 512usize], + pub byEnabled: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_VS_NETSRC_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 648usize, + concat!("Size of: ", stringify!(tagNET_DVR_VS_NETSRC_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_VS_NETSRC_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VS_NETSRC_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVSInputChan) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VS_NETSRC_CFG), + "::", + stringify!(dwVSInputChan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDispUrl) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VS_NETSRC_CFG), + "::", + stringify!(byDispUrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 520usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VS_NETSRC_CFG), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 521usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_VS_NETSRC_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_VS_NETSRC_CFG = tagNET_DVR_VS_NETSRC_CFG; +pub type LPNET_DVR_VS_NETSRC_CFG = *mut tagNET_DVR_VS_NETSRC_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EDID_FILE_INFO { + pub dwSize: DWORD, + pub dwEDIDFileNo: DWORD, + pub byFileName: [BYTE; 32usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EDID_FILE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 72usize, + concat!("Size of: ", stringify!(tagNET_DVR_EDID_FILE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EDID_FILE_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EDID_FILE_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEDIDFileNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EDID_FILE_INFO), + "::", + stringify!(dwEDIDFileNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EDID_FILE_INFO), + "::", + stringify!(byFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EDID_FILE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EDID_FILE_INFO = tagNET_DVR_EDID_FILE_INFO; +pub type LPNET_DVR_EDID_FILE_INFO = *mut tagNET_DVR_EDID_FILE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EDID_FILE_INFO_LIST { + pub dwSize: DWORD, + pub dwEDIDFileNum: DWORD, + pub lpstruBuffer: LPNET_DVR_EDID_FILE_INFO, + pub dwBufferSize: DWORD, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EDID_FILE_INFO_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_EDID_FILE_INFO_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EDID_FILE_INFO_LIST)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EDID_FILE_INFO_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEDIDFileNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EDID_FILE_INFO_LIST), + "::", + stringify!(dwEDIDFileNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpstruBuffer) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EDID_FILE_INFO_LIST), + "::", + stringify!(lpstruBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBufferSize) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EDID_FILE_INFO_LIST), + "::", + stringify!(dwBufferSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EDID_FILE_INFO_LIST), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EDID_FILE_INFO_LIST = tagNET_DVR_EDID_FILE_INFO_LIST; +pub type LPNET_DVR_EDID_FILE_INFO_LIST = *mut tagNET_DVR_EDID_FILE_INFO_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OSD_INFO { + pub byEnabled: BYTE, + pub byEnabledFlash: BYTE, + pub byFontSize: BYTE, + pub byTransparent: BYTE, + pub struColor: NET_DVR_RGB_COLOR, + pub wCoordinateX: WORD, + pub wCoordinateY: WORD, + pub byContent: [BYTE; 256usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OSD_INFO() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 300usize, + concat!("Size of: ", stringify!(tagNET_DVR_OSD_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!("Alignment of ", stringify!(tagNET_DVR_OSD_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabled) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSD_INFO), + "::", + stringify!(byEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byEnabledFlash) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSD_INFO), + "::", + stringify!(byEnabledFlash) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFontSize) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSD_INFO), + "::", + stringify!(byFontSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTransparent) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSD_INFO), + "::", + stringify!(byTransparent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struColor) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSD_INFO), + "::", + stringify!(struColor) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCoordinateX) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSD_INFO), + "::", + stringify!(wCoordinateX) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCoordinateY) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSD_INFO), + "::", + stringify!(wCoordinateY) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byContent) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSD_INFO), + "::", + stringify!(byContent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 268usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OSD_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_OSD_INFO = tagNET_DVR_OSD_INFO; +pub type LPNET_DVR_OSD_INFO = *mut tagNET_DVR_OSD_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SUBWND_DECODE_OSD { + pub dwSize: DWORD, + pub dwSubWndNo: DWORD, + pub dwOSDNums: DWORD, + pub struOSDList: [NET_DVR_OSD_INFO; 8usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUBWND_DECODE_OSD() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2444usize, + concat!("Size of: ", stringify!(tagNET_DVR_SUBWND_DECODE_OSD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SUBWND_DECODE_OSD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBWND_DECODE_OSD), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSubWndNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBWND_DECODE_OSD), + "::", + stringify!(dwSubWndNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOSDNums) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBWND_DECODE_OSD), + "::", + stringify!(dwOSDNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOSDList) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBWND_DECODE_OSD), + "::", + stringify!(struOSDList) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2412usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBWND_DECODE_OSD), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SUBWND_DECODE_OSD = tagNET_DVR_SUBWND_DECODE_OSD; +pub type LPNET_DVR_SUBWND_DECODE_OSD = *mut tagNET_DVR_SUBWND_DECODE_OSD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SUBWND_DECODE_OSD_LIST { + pub dwSize: DWORD, + pub struSubWndList: [NET_DVR_SUBWND_DECODE_OSD; 64usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SUBWND_DECODE_OSD_LIST() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 156452usize, + concat!("Size of: ", stringify!(tagNET_DVR_SUBWND_DECODE_OSD_LIST)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SUBWND_DECODE_OSD_LIST) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBWND_DECODE_OSD_LIST), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSubWndList) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBWND_DECODE_OSD_LIST), + "::", + stringify!(struSubWndList) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 156420usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SUBWND_DECODE_OSD_LIST), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SUBWND_DECODE_OSD_LIST = tagNET_DVR_SUBWND_DECODE_OSD_LIST; +pub type LPNET_DVR_SUBWND_DECODE_OSD_LIST = *mut tagNET_DVR_SUBWND_DECODE_OSD_LIST; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DECODE_CHANNEL_OSD { + pub dwSize: DWORD, + pub struOSDInfo: [NET_DVR_OSD_INFO; 8usize], + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DECODE_CHANNEL_OSD() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2436usize, + concat!("Size of: ", stringify!(tagNET_DVR_DECODE_CHANNEL_OSD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_DECODE_CHANNEL_OSD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODE_CHANNEL_OSD), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struOSDInfo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODE_CHANNEL_OSD), + "::", + stringify!(struOSDInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2404usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DECODE_CHANNEL_OSD), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DECODE_CHANNEL_OSD = tagNET_DVR_DECODE_CHANNEL_OSD; +pub type LPNET_DVR_DECODE_CHANNEL_OSD = *mut tagNET_DVR_DECODE_CHANNEL_OSD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_THERMINTELL_PARAM { + pub dwSize: DWORD, + pub byIntellType: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_THERMINTELL_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 132usize, + concat!("Size of: ", stringify!(tagNET_DVR_THERMINTELL_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_THERMINTELL_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMINTELL_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIntellType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMINTELL_PARAM), + "::", + stringify!(byIntellType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMINTELL_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_THERMINTELL_PARAM = tagNET_DVR_THERMINTELL_PARAM; +pub type LPNET_DVR_THERMINTELL_PARAM = *mut tagNET_DVR_THERMINTELL_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FACE_THERMOMETRY_ALARM { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub byRuleID: BYTE, + pub byRes1: [BYTE; 3usize], + pub byRuleName: [BYTE; 32usize], + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub byFaceDetectionState: BYTE, + pub byThermometryUnit: BYTE, + pub byAlarmRule: BYTE, + pub byRes2: [BYTE; 1usize], + pub fAlarmTemperature: f32, + pub fRuleTemperature: f32, + pub dwVisibleLightImageLen: DWORD, + pub pVisibleLightImage: *mut BYTE, + pub dwFaceImageLen: DWORD, + pub pFaceImage: *mut BYTE, + pub struFaceRegion: NET_VCA_RECT, + pub fMinTemperature: f32, + pub fAverageTemperature: f32, + pub struMinTemperaturePoint: NET_VCA_POINT, + pub struMaxTemperaturePoint: NET_VCA_POINT, + pub byRes: [BYTE; 720usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FACE_THERMOMETRY_ALARM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 856usize, + concat!("Size of: ", stringify!(tagNET_DVR_FACE_THERMOMETRY_ALARM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FACE_THERMOMETRY_ALARM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_THERMOMETRY_ALARM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_THERMOMETRY_ALARM), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_THERMOMETRY_ALARM), + "::", + stringify!(byRuleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_THERMOMETRY_ALARM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRuleName) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_THERMOMETRY_ALARM), + "::", + stringify!(byRuleName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_THERMOMETRY_ALARM), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_THERMOMETRY_ALARM), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFaceDetectionState) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_THERMOMETRY_ALARM), + "::", + stringify!(byFaceDetectionState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byThermometryUnit) as usize - ptr as usize }, + 53usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_THERMOMETRY_ALARM), + "::", + stringify!(byThermometryUnit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAlarmRule) as usize - ptr as usize }, + 54usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_THERMOMETRY_ALARM), + "::", + stringify!(byAlarmRule) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 55usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_THERMOMETRY_ALARM), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fAlarmTemperature) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_THERMOMETRY_ALARM), + "::", + stringify!(fAlarmTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fRuleTemperature) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_THERMOMETRY_ALARM), + "::", + stringify!(fRuleTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVisibleLightImageLen) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_THERMOMETRY_ALARM), + "::", + stringify!(dwVisibleLightImageLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pVisibleLightImage) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_THERMOMETRY_ALARM), + "::", + stringify!(pVisibleLightImage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFaceImageLen) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_THERMOMETRY_ALARM), + "::", + stringify!(dwFaceImageLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pFaceImage) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_THERMOMETRY_ALARM), + "::", + stringify!(pFaceImage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struFaceRegion) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_THERMOMETRY_ALARM), + "::", + stringify!(struFaceRegion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fMinTemperature) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_THERMOMETRY_ALARM), + "::", + stringify!(fMinTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fAverageTemperature) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_THERMOMETRY_ALARM), + "::", + stringify!(fAverageTemperature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMinTemperaturePoint) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_THERMOMETRY_ALARM), + "::", + stringify!(struMinTemperaturePoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struMaxTemperaturePoint) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_THERMOMETRY_ALARM), + "::", + stringify!(struMaxTemperaturePoint) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_THERMOMETRY_ALARM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FACE_THERMOMETRY_ALARM = tagNET_DVR_FACE_THERMOMETRY_ALARM; +pub type LPNET_DVR_FACE_THERMOMETRY_ALARM = *mut tagNET_DVR_FACE_THERMOMETRY_ALARM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GUID_FILE_EXPORT { + pub dwSize: DWORD, + pub sLoginPassWord: [::std::os::raw::c_char; 128usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GUID_FILE_EXPORT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(tagNET_DVR_GUID_FILE_EXPORT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_GUID_FILE_EXPORT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GUID_FILE_EXPORT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLoginPassWord) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GUID_FILE_EXPORT), + "::", + stringify!(sLoginPassWord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GUID_FILE_EXPORT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GUID_FILE_EXPORT = tagNET_DVR_GUID_FILE_EXPORT; +pub type LPNET_DVR_GUID_FILE_EXPORT = *mut tagNET_DVR_GUID_FILE_EXPORT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_LOGIN_PASSWORDCFG { + pub dwSize: DWORD, + pub sLoginPassWord: [::std::os::raw::c_char; 128usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_LOGIN_PASSWORDCFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 388usize, + concat!("Size of: ", stringify!(tagNET_DVR_LOGIN_PASSWORDCFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_LOGIN_PASSWORDCFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOGIN_PASSWORDCFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLoginPassWord) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOGIN_PASSWORDCFG), + "::", + stringify!(sLoginPassWord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_LOGIN_PASSWORDCFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_LOGIN_PASSWORDCFG = tagNET_DVR_LOGIN_PASSWORDCFG; +pub type LPNET_DVR_LOGIN_PASSWORDCFG = *mut tagNET_DVR_LOGIN_PASSWORDCFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SINGLE_SECURITY_QUESTION_CFG { + pub dwSize: DWORD, + pub dwId: DWORD, + pub sAnswer: [::std::os::raw::c_char; 256usize], + pub byMark: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SINGLE_SECURITY_QUESTION_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 392usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SINGLE_SECURITY_QUESTION_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SINGLE_SECURITY_QUESTION_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_SECURITY_QUESTION_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwId) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_SECURITY_QUESTION_CFG), + "::", + stringify!(dwId) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sAnswer) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_SECURITY_QUESTION_CFG), + "::", + stringify!(sAnswer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMark) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_SECURITY_QUESTION_CFG), + "::", + stringify!(byMark) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 265usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_SECURITY_QUESTION_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SINGLE_SECURITY_QUESTION_CFG = tagNET_DVR_SINGLE_SECURITY_QUESTION_CFG; +pub type LPNET_DVR_SINGLE_SECURITY_QUESTION_CFG = *mut tagNET_DVR_SINGLE_SECURITY_QUESTION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SECURITY_QUESTION_CFG { + pub dwSize: DWORD, + pub struSecurityQuestion: [NET_DVR_SINGLE_SECURITY_QUESTION_CFG; 32usize], + pub sLoginPassWord: [::std::os::raw::c_char; 128usize], + pub byRes: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SECURITY_QUESTION_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 13188usize, + concat!("Size of: ", stringify!(tagNET_DVR_SECURITY_QUESTION_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SECURITY_QUESTION_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SECURITY_QUESTION_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSecurityQuestion) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SECURITY_QUESTION_CFG), + "::", + stringify!(struSecurityQuestion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sLoginPassWord) as usize - ptr as usize }, + 12548usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SECURITY_QUESTION_CFG), + "::", + stringify!(sLoginPassWord) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12676usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SECURITY_QUESTION_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SECURITY_QUESTION_CFG = tagNET_DVR_SECURITY_QUESTION_CFG; +pub type LPNET_DVR_SECURITY_QUESTION_CFG = *mut tagNET_DVR_SECURITY_QUESTION_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARMIN_TRIGGER_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub dwAlarmInNo: DWORD, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARMIN_TRIGGER_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 268usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARMIN_TRIGGER_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARMIN_TRIGGER_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_TRIGGER_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_TRIGGER_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmInNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_TRIGGER_COND), + "::", + stringify!(dwAlarmInNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARMIN_TRIGGER_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARMIN_TRIGGER_COND = tagNET_DVR_ALARMIN_TRIGGER_COND; +pub type LPNET_DVR_ALARMIN_TRIGGER_COND = *mut tagNET_DVR_ALARMIN_TRIGGER_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FACELIB_GUARD_COND { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub szFDID: [::std::os::raw::c_char; 68usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FACELIB_GUARD_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 204usize, + concat!("Size of: ", stringify!(tagNET_DVR_FACELIB_GUARD_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FACELIB_GUARD_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACELIB_GUARD_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACELIB_GUARD_COND), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szFDID) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACELIB_GUARD_COND), + "::", + stringify!(szFDID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACELIB_GUARD_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FACELIB_GUARD_COND = tagNET_DVR_FACELIB_GUARD_COND; +pub type LPNET_DVR_FACELIB_GUARD_COND = *mut tagNET_DVR_FACELIB_GUARD_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GUID_FILE_STATUS_INFO { + pub dwSize: DWORD, + pub byLockStatus: BYTE, + pub byPasswd: BYTE, + pub byRetryNum: BYTE, + pub byRes1: BYTE, + pub dwLockTime: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GUID_FILE_STATUS_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 140usize, + concat!("Size of: ", stringify!(tagNET_DVR_GUID_FILE_STATUS_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_GUID_FILE_STATUS_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GUID_FILE_STATUS_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLockStatus) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GUID_FILE_STATUS_INFO), + "::", + stringify!(byLockStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPasswd) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GUID_FILE_STATUS_INFO), + "::", + stringify!(byPasswd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRetryNum) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GUID_FILE_STATUS_INFO), + "::", + stringify!(byRetryNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GUID_FILE_STATUS_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLockTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GUID_FILE_STATUS_INFO), + "::", + stringify!(dwLockTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GUID_FILE_STATUS_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GUID_FILE_STATUS_INFO = tagNET_DVR_GUID_FILE_STATUS_INFO; +pub type LPNET_DVR_GUID_FILE_STATUS_INFO = *mut tagNET_DVR_GUID_FILE_STATUS_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_THERMOMETRY_MODE { + pub dwSize: DWORD, + pub byMode: BYTE, + pub byThermometryROIEnabled: BYTE, + pub byRes: [BYTE; 62usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_THERMOMETRY_MODE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 68usize, + concat!("Size of: ", stringify!(tagNET_DVR_THERMOMETRY_MODE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_THERMOMETRY_MODE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_MODE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byMode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_MODE), + "::", + stringify!(byMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byThermometryROIEnabled) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_MODE), + "::", + stringify!(byThermometryROIEnabled) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMOMETRY_MODE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_THERMOMETRY_MODE = tagNET_DVR_THERMOMETRY_MODE; +pub type LPNET_DVR_THERMOMETRY_MODE = *mut tagNET_DVR_THERMOMETRY_MODE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_THERMAL_ALGINFO { + pub dwSize: DWORD, + pub sThermometryAlgName: [::std::os::raw::c_char; 128usize], + pub sShipsAlgName: [::std::os::raw::c_char; 128usize], + pub sFireAlgName: [::std::os::raw::c_char; 128usize], + pub byRes: [BYTE; 768usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_THERMAL_ALGINFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1156usize, + concat!("Size of: ", stringify!(tagNET_DVR_THERMAL_ALGINFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_THERMAL_ALGINFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMAL_ALGINFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sThermometryAlgName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMAL_ALGINFO), + "::", + stringify!(sThermometryAlgName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sShipsAlgName) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMAL_ALGINFO), + "::", + stringify!(sShipsAlgName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFireAlgName) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMAL_ALGINFO), + "::", + stringify!(sFireAlgName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 388usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_THERMAL_ALGINFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_THERMAL_ALGINFO = tagNET_DVR_THERMAL_ALGINFO; +pub type LPNET_DVR_THERMAL_ALGINFO = *mut tagNET_DVR_THERMAL_ALGINFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CURRENT_LOCK { + pub dwSize: DWORD, + pub byCurrentLock: BYTE, + pub byRes: [BYTE; 255usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CURRENT_LOCK() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(tagNET_DVR_CURRENT_LOCK)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CURRENT_LOCK)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CURRENT_LOCK), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCurrentLock) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CURRENT_LOCK), + "::", + stringify!(byCurrentLock) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CURRENT_LOCK), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CURRENT_LOCK = tagNET_DVR_CURRENT_LOCK; +pub type LPNET_DVR_CURRENT_LOCK = *mut tagNET_DVR_CURRENT_LOCK; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_VCA_FACESNAP_RAWDATA_ALARM_ { + pub dwSize: DWORD, + pub dwRelativeTime: DWORD, + pub dwAbsTime: DWORD, + pub struDevInfo: NET_VCA_DEV_INFO, + pub dwJsonDataLen: DWORD, + pub pJsonBuff: *mut BYTE, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_VCA_FACESNAP_RAWDATA_ALARM_() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 432usize, + concat!("Size of: ", stringify!(tagNET_VCA_FACESNAP_RAWDATA_ALARM_)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_VCA_FACESNAP_RAWDATA_ALARM_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RAWDATA_ALARM_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRelativeTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RAWDATA_ALARM_), + "::", + stringify!(dwRelativeTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAbsTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RAWDATA_ALARM_), + "::", + stringify!(dwAbsTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RAWDATA_ALARM_), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwJsonDataLen) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RAWDATA_ALARM_), + "::", + stringify!(dwJsonDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pJsonBuff) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RAWDATA_ALARM_), + "::", + stringify!(pJsonBuff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_VCA_FACESNAP_RAWDATA_ALARM_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_VCA_FACESNAP_RAWDATA_ALARM = tagNET_VCA_FACESNAP_RAWDATA_ALARM_; +pub type LPNET_VCA_FACESNAP_RAWDATA_ALARM = *mut tagNET_VCA_FACESNAP_RAWDATA_ALARM_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ADVANCE_SCREEN_CHECK_PARAM { + pub byDelFullScreenGamut: BYTE, + pub byDelLightPanelGamut: BYTE, + pub byDelLightPanelWhiteBalance: BYTE, + pub byRes: [BYTE; 13usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ADVANCE_SCREEN_CHECK_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_ADVANCE_SCREEN_CHECK_PARAM) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_ADVANCE_SCREEN_CHECK_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDelFullScreenGamut) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADVANCE_SCREEN_CHECK_PARAM), + "::", + stringify!(byDelFullScreenGamut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDelLightPanelGamut) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADVANCE_SCREEN_CHECK_PARAM), + "::", + stringify!(byDelLightPanelGamut) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDelLightPanelWhiteBalance) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADVANCE_SCREEN_CHECK_PARAM), + "::", + stringify!(byDelLightPanelWhiteBalance) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ADVANCE_SCREEN_CHECK_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ADVANCE_SCREEN_CHECK_PARAM = tagNET_DVR_ADVANCE_SCREEN_CHECK_PARAM; +pub type LPNET_DVR_ADVANCE_SCREEN_CHECK_PARAM = *mut tagNET_DVR_ADVANCE_SCREEN_CHECK_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_SDK_LED_SCREEN_CHECK_PARAM { + pub dwSize: DWORD, + pub byOperateType: BYTE, + pub byIsRGBSynChk: BYTE, + pub byScreenCheckType: BYTE, + pub byRes1: BYTE, + pub wRgbPermil: WORD, + pub wRedPermil: WORD, + pub wGreenPermil: WORD, + pub wBluePermil: WORD, + pub dwRectCount: DWORD, + pub struRectList: [NET_DVR_RECTCFG_EX; 128usize], + pub struAdvanceScreenCheckParam: NET_DVR_ADVANCE_SCREEN_CHECK_PARAM, + pub byRes2: [BYTE; 48usize], +} +#[test] +fn bindgen_test_layout_tagNET_SDK_LED_SCREEN_CHECK_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2644usize, + concat!("Size of: ", stringify!(tagNET_SDK_LED_SCREEN_CHECK_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_SDK_LED_SCREEN_CHECK_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_LED_SCREEN_CHECK_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOperateType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_LED_SCREEN_CHECK_PARAM), + "::", + stringify!(byOperateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIsRGBSynChk) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_LED_SCREEN_CHECK_PARAM), + "::", + stringify!(byIsRGBSynChk) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byScreenCheckType) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_LED_SCREEN_CHECK_PARAM), + "::", + stringify!(byScreenCheckType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_LED_SCREEN_CHECK_PARAM), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRgbPermil) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_LED_SCREEN_CHECK_PARAM), + "::", + stringify!(wRgbPermil) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wRedPermil) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_LED_SCREEN_CHECK_PARAM), + "::", + stringify!(wRedPermil) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wGreenPermil) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_LED_SCREEN_CHECK_PARAM), + "::", + stringify!(wGreenPermil) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wBluePermil) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_LED_SCREEN_CHECK_PARAM), + "::", + stringify!(wBluePermil) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRectCount) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_LED_SCREEN_CHECK_PARAM), + "::", + stringify!(dwRectCount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRectList) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_LED_SCREEN_CHECK_PARAM), + "::", + stringify!(struRectList) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAdvanceScreenCheckParam) as usize - ptr as usize }, + 2580usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_LED_SCREEN_CHECK_PARAM), + "::", + stringify!(struAdvanceScreenCheckParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 2596usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_LED_SCREEN_CHECK_PARAM), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_SDK_LED_SCREEN_CHECK_PARAM = tagNET_SDK_LED_SCREEN_CHECK_PARAM; +pub type LPNET_SDK_LED_SCREEN_CHECK_PARAM = *mut tagNET_SDK_LED_SCREEN_CHECK_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_SDK_SCREEN_CHECK_RESPONSE_DATA { + pub dwSize: DWORD, + pub byDataType: BYTE, + pub byOperateType: BYTE, + pub byProgress: BYTE, + pub byStatus: BYTE, + pub struRect: NET_DVR_RECTCFG_EX, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_SDK_SCREEN_CHECK_RESPONSE_DATA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 92usize, + concat!( + "Size of: ", + stringify!(tagNET_SDK_SCREEN_CHECK_RESPONSE_DATA) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_SDK_SCREEN_CHECK_RESPONSE_DATA) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SCREEN_CHECK_RESPONSE_DATA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SCREEN_CHECK_RESPONSE_DATA), + "::", + stringify!(byDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byOperateType) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SCREEN_CHECK_RESPONSE_DATA), + "::", + stringify!(byOperateType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byProgress) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SCREEN_CHECK_RESPONSE_DATA), + "::", + stringify!(byProgress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SCREEN_CHECK_RESPONSE_DATA), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struRect) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SCREEN_CHECK_RESPONSE_DATA), + "::", + stringify!(struRect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_SCREEN_CHECK_RESPONSE_DATA), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_SDK_SCREEN_CHECK_RESPONSE_DATA = tagNET_SDK_SCREEN_CHECK_RESPONSE_DATA; +pub type LPNET_SDK_SCREEN_CHECK_RESPONSE_DATA = *mut tagNET_SDK_SCREEN_CHECK_RESPONSE_DATA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLAY_BY_NAME_PARA { + pub szFileName: [::std::os::raw::c_char; 100usize], + pub byDownload: BYTE, + pub byRes1: [BYTE; 127usize], + pub hWnd: HWND, + pub struAddr: NET_DVR_ADDRESS, + pub byRes2: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLAY_BY_NAME_PARA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 648usize, + concat!("Size of: ", stringify!(tagNET_DVR_PLAY_BY_NAME_PARA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PLAY_BY_NAME_PARA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szFileName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAY_BY_NAME_PARA), + "::", + stringify!(szFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDownload) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAY_BY_NAME_PARA), + "::", + stringify!(byDownload) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 101usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAY_BY_NAME_PARA), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).hWnd) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAY_BY_NAME_PARA), + "::", + stringify!(hWnd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAddr) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAY_BY_NAME_PARA), + "::", + stringify!(struAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 388usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAY_BY_NAME_PARA), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_PLAY_BY_NAME_PARA = tagNET_DVR_PLAY_BY_NAME_PARA; +pub type LPNET_DVR_PLAY_BY_NAME_PARA = *mut tagNET_DVR_PLAY_BY_NAME_PARA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PLAYBCK_BYTIME_COND_PCNVR { + pub dwSize: DWORD, + pub struIpAddr: NET_DVR_IPADDR, + pub wIpPort: WORD, + pub byRes: [BYTE; 2usize], + pub sDomainName: [::std::os::raw::c_char; 64usize], + pub sSerial: [::std::os::raw::c_char; 48usize], + pub iChannel: LONG, + pub struStartTime: NET_DVR_TIME, + pub struStopTime: NET_DVR_TIME, + pub hWnd: HWND, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PLAYBCK_BYTIME_COND_PCNVR() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 328usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_PLAYBCK_BYTIME_COND_PCNVR) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_PLAYBCK_BYTIME_COND_PCNVR) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBCK_BYTIME_COND_PCNVR), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIpAddr) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBCK_BYTIME_COND_PCNVR), + "::", + stringify!(struIpAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wIpPort) as usize - ptr as usize }, + 148usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBCK_BYTIME_COND_PCNVR), + "::", + stringify!(wIpPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 150usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBCK_BYTIME_COND_PCNVR), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDomainName) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBCK_BYTIME_COND_PCNVR), + "::", + stringify!(sDomainName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSerial) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBCK_BYTIME_COND_PCNVR), + "::", + stringify!(sSerial) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iChannel) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBCK_BYTIME_COND_PCNVR), + "::", + stringify!(iChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 268usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBCK_BYTIME_COND_PCNVR), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStopTime) as usize - ptr as usize }, + 292usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBCK_BYTIME_COND_PCNVR), + "::", + stringify!(struStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).hWnd) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PLAYBCK_BYTIME_COND_PCNVR), + "::", + stringify!(hWnd) + ) + ); +} +pub type NET_DVR_PLAYBCK_BYTIME_COND_PCNVR = tagNET_DVR_PLAYBCK_BYTIME_COND_PCNVR; +pub type LPNET_DVR_PLAYBCK_BYTIME_COND_PCNVR = *mut tagNET_DVR_PLAYBCK_BYTIME_COND_PCNVR; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DOWNLOAD_BY_NAME_COND { + pub pFileName: *mut ::std::os::raw::c_char, + pub pSavedFileName: *mut ::std::os::raw::c_char, + pub struAddr: NET_DVR_ADDRESS, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DOWNLOAD_BY_NAME_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 424usize, + concat!("Size of: ", stringify!(tagNET_DVR_DOWNLOAD_BY_NAME_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_DOWNLOAD_BY_NAME_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pFileName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOWNLOAD_BY_NAME_COND), + "::", + stringify!(pFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pSavedFileName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOWNLOAD_BY_NAME_COND), + "::", + stringify!(pSavedFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAddr) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOWNLOAD_BY_NAME_COND), + "::", + stringify!(struAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOWNLOAD_BY_NAME_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_DOWNLOAD_BY_NAME_COND = tagNET_DVR_DOWNLOAD_BY_NAME_COND; +pub type LPNET_DVR_DOWNLOAD_BY_NAME_COND = *mut tagNET_DVR_DOWNLOAD_BY_NAME_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_PIC_PARAM { + pub pDVRFileName: *mut ::std::os::raw::c_char, + pub pSavedFileBuf: *mut ::std::os::raw::c_char, + pub dwBufLen: DWORD, + pub lpdwRetLen: *mut DWORD, + pub struAddr: NET_DVR_ADDRESS, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_PIC_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 440usize, + concat!("Size of: ", stringify!(tagNET_DVR_PIC_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_PIC_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pDVRFileName) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_PARAM), + "::", + stringify!(pDVRFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pSavedFileBuf) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_PARAM), + "::", + stringify!(pSavedFileBuf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBufLen) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_PARAM), + "::", + stringify!(dwBufLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpdwRetLen) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_PARAM), + "::", + stringify!(lpdwRetLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAddr) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_PARAM), + "::", + stringify!(struAddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 180usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_PIC_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_PIC_PARAM = tagNET_DVR_PIC_PARAM; +pub type LPNET_DVR_PIC_PARAM = *mut tagNET_DVR_PIC_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FACELIB_COND { + pub dwSize: DWORD, + pub szFDID: [::std::os::raw::c_char; 256usize], + pub byConcurrent: BYTE, + pub byCover: BYTE, + pub byCustomFaceLibID: BYTE, + pub byPictureSaveMode: BYTE, + pub byIdentityKey: [BYTE; 64usize], + pub byRes: [BYTE; 60usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FACELIB_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 388usize, + concat!("Size of: ", stringify!(tagNET_DVR_FACELIB_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FACELIB_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACELIB_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szFDID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACELIB_COND), + "::", + stringify!(szFDID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byConcurrent) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACELIB_COND), + "::", + stringify!(byConcurrent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCover) as usize - ptr as usize }, + 261usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACELIB_COND), + "::", + stringify!(byCover) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCustomFaceLibID) as usize - ptr as usize }, + 262usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACELIB_COND), + "::", + stringify!(byCustomFaceLibID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPictureSaveMode) as usize - ptr as usize }, + 263usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACELIB_COND), + "::", + stringify!(byPictureSaveMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIdentityKey) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACELIB_COND), + "::", + stringify!(byIdentityKey) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACELIB_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FACELIB_COND = tagNET_DVR_FACELIB_COND; +pub type LPNET_DVR_FACELIB_COND = *mut tagNET_DVR_FACELIB_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HBDLIB_COND { + pub dwSize: DWORD, + pub szHBDID: [::std::os::raw::c_char; 256usize], + pub byConcurrent: BYTE, + pub byCover: BYTE, + pub byCustomHBDID: BYTE, + pub byRes: [BYTE; 125usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HBDLIB_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 388usize, + concat!("Size of: ", stringify!(tagNET_DVR_HBDLIB_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HBDLIB_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HBDLIB_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szHBDID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HBDLIB_COND), + "::", + stringify!(szHBDID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byConcurrent) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HBDLIB_COND), + "::", + stringify!(byConcurrent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCover) as usize - ptr as usize }, + 261usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HBDLIB_COND), + "::", + stringify!(byCover) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCustomHBDID) as usize - ptr as usize }, + 262usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HBDLIB_COND), + "::", + stringify!(byCustomHBDID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 263usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HBDLIB_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_HBDLIB_COND = tagNET_DVR_HBDLIB_COND; +pub type LPNET_DVR_HBDLIB_COND = *mut tagNET_DVR_HBDLIB_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EXPORT_PUBLISH_SCHEDULE { + pub dwScheduleID: DWORD, + pub fnDownloadFileCallBack: DOWNLOAD_DATA_CB, + pub pUser: *mut ::std::os::raw::c_void, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXPORT_PUBLISH_SCHEDULE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_EXPORT_PUBLISH_SCHEDULE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_EXPORT_PUBLISH_SCHEDULE) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwScheduleID) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXPORT_PUBLISH_SCHEDULE), + "::", + stringify!(dwScheduleID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fnDownloadFileCallBack) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXPORT_PUBLISH_SCHEDULE), + "::", + stringify!(fnDownloadFileCallBack) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pUser) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXPORT_PUBLISH_SCHEDULE), + "::", + stringify!(pUser) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXPORT_PUBLISH_SCHEDULE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EXPORT_PUBLISH_SCHEDULE = tagNET_DVR_EXPORT_PUBLISH_SCHEDULE; +pub type LPNET_DVR_EXPORT_PUBLISH_SCHEDULE = *mut tagNET_DVR_EXPORT_PUBLISH_SCHEDULE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GBT28181_AUDIO_OUTPUT_COND { + pub dwSize: DWORD, + pub dwAudioChannel: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GBT28181_AUDIO_OUTPUT_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_GBT28181_AUDIO_OUTPUT_COND) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_GBT28181_AUDIO_OUTPUT_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_AUDIO_OUTPUT_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAudioChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_AUDIO_OUTPUT_COND), + "::", + stringify!(dwAudioChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_AUDIO_OUTPUT_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GBT28181_AUDIO_OUTPUT_COND = tagNET_DVR_GBT28181_AUDIO_OUTPUT_COND; +pub type LPNET_DVR_GBT28181_AUDIO_OUTPUT_COND = *mut tagNET_DVR_GBT28181_AUDIO_OUTPUT_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_GBT28181_AUDIO_OUTPUT_CFG { + pub dwSize: DWORD, + pub szAudioOutNumID: [::std::os::raw::c_char; 64usize], + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_GBT28181_AUDIO_OUTPUT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 324usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_GBT28181_AUDIO_OUTPUT_CFG) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_GBT28181_AUDIO_OUTPUT_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_AUDIO_OUTPUT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szAudioOutNumID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_AUDIO_OUTPUT_CFG), + "::", + stringify!(szAudioOutNumID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_GBT28181_AUDIO_OUTPUT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_GBT28181_AUDIO_OUTPUT_CFG = tagNET_DVR_GBT28181_AUDIO_OUTPUT_CFG; +pub type LPNET_DVR_GBT28181_AUDIO_OUTPUT_CFG = *mut tagNET_DVR_GBT28181_AUDIO_OUTPUT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_NOTICE_VIDEO_DATA { + pub dwSize: DWORD, + pub dwFileSize: DWORD, + pub byNoticeNumber: [BYTE; 32usize], + pub byRes: [BYTE; 2016usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NOTICE_VIDEO_DATA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 2056usize, + concat!("Size of: ", stringify!(tagNET_DVR_NOTICE_VIDEO_DATA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_NOTICE_VIDEO_DATA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOTICE_VIDEO_DATA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileSize) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOTICE_VIDEO_DATA), + "::", + stringify!(dwFileSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNoticeNumber) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOTICE_VIDEO_DATA), + "::", + stringify!(byNoticeNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOTICE_VIDEO_DATA), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_NOTICE_VIDEO_DATA = tagNET_DVR_NOTICE_VIDEO_DATA; +pub type LPNET_DVR_NOTICE_VIDEO_DATA = *mut tagNET_DVR_NOTICE_VIDEO_DATA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_NOTICE_VIDEO_DATA_COND { + pub dwSize: DWORD, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NOTICE_VIDEO_DATA_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(tagNET_DVR_NOTICE_VIDEO_DATA_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_NOTICE_VIDEO_DATA_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOTICE_VIDEO_DATA_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOTICE_VIDEO_DATA_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_NOTICE_VIDEO_DATA_COND = tagNET_DVR_NOTICE_VIDEO_DATA_COND; +pub type LPNET_DVR_NOTICE_VIDEO_DATA_COND = *mut tagNET_DVR_NOTICE_VIDEO_DATA_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_NOTICE_VIDEO_DATA_CFG { + pub dwSize: DWORD, + pub dwDataLen: DWORD, + pub pDataBuffer: *mut ::std::os::raw::c_char, + pub byDataType: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_NOTICE_VIDEO_DATA_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 80usize, + concat!("Size of: ", stringify!(tagNET_DVR_NOTICE_VIDEO_DATA_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_NOTICE_VIDEO_DATA_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOTICE_VIDEO_DATA_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataLen) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOTICE_VIDEO_DATA_CFG), + "::", + stringify!(dwDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pDataBuffer) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOTICE_VIDEO_DATA_CFG), + "::", + stringify!(pDataBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataType) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOTICE_VIDEO_DATA_CFG), + "::", + stringify!(byDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_NOTICE_VIDEO_DATA_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_NOTICE_VIDEO_DATA_CFG = tagNET_DVR_NOTICE_VIDEO_DATA_CFG; +pub type LPNET_DVR_NOTICE_VIDEO_DATA_CFG = *mut tagNET_DVR_NOTICE_VIDEO_DATA_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_UPGRADE_FIRMWARE_INFO { + pub dwMagicNumber: DWORD, + pub dwCheckSum: DWORD, + pub dwHeadLen: DWORD, + pub dwFileNums: DWORD, + pub dwLanguage: DWORD, + pub dwDeviceClassID: DWORD, + pub dwOemCode: DWORD, + pub byUpgradeVersion: BYTE, + pub byResFeature: [BYTE; 15usize], + pub byFlashSize: BYTE, + pub byRamSize: BYTE, + pub byDspRamSize: BYTE, + pub byRes: [BYTE; 17usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_UPGRADE_FIRMWARE_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 64usize, + concat!("Size of: ", stringify!(tagNET_DVR_UPGRADE_FIRMWARE_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_UPGRADE_FIRMWARE_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMagicNumber) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_FIRMWARE_INFO), + "::", + stringify!(dwMagicNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCheckSum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_FIRMWARE_INFO), + "::", + stringify!(dwCheckSum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHeadLen) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_FIRMWARE_INFO), + "::", + stringify!(dwHeadLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileNums) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_FIRMWARE_INFO), + "::", + stringify!(dwFileNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLanguage) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_FIRMWARE_INFO), + "::", + stringify!(dwLanguage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDeviceClassID) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_FIRMWARE_INFO), + "::", + stringify!(dwDeviceClassID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOemCode) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_FIRMWARE_INFO), + "::", + stringify!(dwOemCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUpgradeVersion) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_FIRMWARE_INFO), + "::", + stringify!(byUpgradeVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byResFeature) as usize - ptr as usize }, + 29usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_FIRMWARE_INFO), + "::", + stringify!(byResFeature) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFlashSize) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_FIRMWARE_INFO), + "::", + stringify!(byFlashSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRamSize) as usize - ptr as usize }, + 45usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_FIRMWARE_INFO), + "::", + stringify!(byRamSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDspRamSize) as usize - ptr as usize }, + 46usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_FIRMWARE_INFO), + "::", + stringify!(byDspRamSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 47usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPGRADE_FIRMWARE_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_UPGRADE_FIRMWARE_INFO = tagNET_DVR_UPGRADE_FIRMWARE_INFO; +pub type LPNET_DVR_UPGRADE_FIRMWARE_INFO = *mut tagNET_DVR_UPGRADE_FIRMWARE_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SCHEDULE_FILE_RET { + pub dwSize: DWORD, + pub szFileName: [::std::os::raw::c_char; 32usize], + pub dwFileLen: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SCHEDULE_FILE_RET() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 104usize, + concat!("Size of: ", stringify!(tagNET_DVR_SCHEDULE_FILE_RET)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_SCHEDULE_FILE_RET)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_FILE_RET), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szFileName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_FILE_RET), + "::", + stringify!(szFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileLen) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_FILE_RET), + "::", + stringify!(dwFileLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SCHEDULE_FILE_RET), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SCHEDULE_FILE_RET = tagNET_DVR_SCHEDULE_FILE_RET; +pub type LPNET_DVR_SCHEDULE_FILE_RET = *mut tagNET_DVR_SCHEDULE_FILE_RET; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EXAM_INFO_COND { + pub dwSize: DWORD, + pub dwExamNumber: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXAM_INFO_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_EXAM_INFO_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EXAM_INFO_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_INFO_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwExamNumber) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_INFO_COND), + "::", + stringify!(dwExamNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_INFO_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EXAM_INFO_COND = tagNET_DVR_EXAM_INFO_COND; +pub type LPNET_DVR_EXAM_INFO_COND = *mut tagNET_DVR_EXAM_INFO_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EXAM_INFO_CFG { + pub dwSize: DWORD, + pub byExamRoundNo: [BYTE; 64usize], + pub byExamNo: [BYTE; 64usize], + pub byExamSubject: [BYTE; 64usize], + pub byTeacherNo: [BYTE; 64usize], + pub byTeacherName: [BYTE; 64usize], + pub struStartTime: NET_DVR_TIME, + pub struEndTime: NET_DVR_TIME, + pub byExamInfoValid: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXAM_INFO_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 500usize, + concat!("Size of: ", stringify!(tagNET_DVR_EXAM_INFO_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EXAM_INFO_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_INFO_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExamRoundNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_INFO_CFG), + "::", + stringify!(byExamRoundNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExamNo) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_INFO_CFG), + "::", + stringify!(byExamNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExamSubject) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_INFO_CFG), + "::", + stringify!(byExamSubject) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTeacherNo) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_INFO_CFG), + "::", + stringify!(byTeacherNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byTeacherName) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_INFO_CFG), + "::", + stringify!(byTeacherName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 324usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_INFO_CFG), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 348usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_INFO_CFG), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExamInfoValid) as usize - ptr as usize }, + 372usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_INFO_CFG), + "::", + stringify!(byExamInfoValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 373usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_INFO_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EXAM_INFO_CFG = tagNET_DVR_EXAM_INFO_CFG; +pub type LPNET_DVR_EXAM_INFO_CFG = *mut tagNET_DVR_EXAM_INFO_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EXAM_INFO_STATUS { + pub dwSize: DWORD, + pub byExamRoundNo: [BYTE; 64usize], + pub byStatus: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXAM_INFO_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 196usize, + concat!("Size of: ", stringify!(tagNET_DVR_EXAM_INFO_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EXAM_INFO_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_INFO_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExamRoundNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_INFO_STATUS), + "::", + stringify!(byExamRoundNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_INFO_STATUS), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 69usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_INFO_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EXAM_INFO_STATUS = tagNET_DVR_EXAM_INFO_STATUS; +pub type LPNET_DVR_EXAM_INFO_STATUS = *mut tagNET_DVR_EXAM_INFO_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EXAMINEE_INFO_COND { + pub dwSize: DWORD, + pub dwExamineeNumber: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXAMINEE_INFO_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_EXAMINEE_INFO_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EXAMINEE_INFO_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAMINEE_INFO_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwExamineeNumber) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAMINEE_INFO_COND), + "::", + stringify!(dwExamineeNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAMINEE_INFO_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EXAMINEE_INFO_COND = tagNET_DVR_EXAMINEE_INFO_COND; +pub type LPNET_DVR_EXAMINEE_INFO_COND = *mut tagNET_DVR_EXAMINEE_INFO_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EXAMINEE_INFO_CFG { + pub dwSize: DWORD, + pub byExamineeNo: [BYTE; 64usize], + pub byAdmissionTicket: [BYTE; 64usize], + pub byExamRoundNo: [BYTE; 64usize], + pub byName: [BYTE; 32usize], + pub byCardNo: [BYTE; 32usize], + pub bySex: BYTE, + pub byExamineeInfoValid: BYTE, + pub byRes: [BYTE; 126usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXAMINEE_INFO_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 388usize, + concat!("Size of: ", stringify!(tagNET_DVR_EXAMINEE_INFO_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EXAMINEE_INFO_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAMINEE_INFO_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExamineeNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAMINEE_INFO_CFG), + "::", + stringify!(byExamineeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAdmissionTicket) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAMINEE_INFO_CFG), + "::", + stringify!(byAdmissionTicket) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExamRoundNo) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAMINEE_INFO_CFG), + "::", + stringify!(byExamRoundNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAMINEE_INFO_CFG), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 228usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAMINEE_INFO_CFG), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySex) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAMINEE_INFO_CFG), + "::", + stringify!(bySex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExamineeInfoValid) as usize - ptr as usize }, + 261usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAMINEE_INFO_CFG), + "::", + stringify!(byExamineeInfoValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 262usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAMINEE_INFO_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EXAMINEE_INFO_CFG = tagNET_DVR_EXAMINEE_INFO_CFG; +pub type LPNET_DVR_EXAMINEE_INFO_CFG = *mut tagNET_DVR_EXAMINEE_INFO_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EXAMINEE_INFO_STATUS { + pub dwSize: DWORD, + pub byExamineeNo: [BYTE; 64usize], + pub byExamRoundNo: [BYTE; 64usize], + pub byStatus: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXAMINEE_INFO_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(tagNET_DVR_EXAMINEE_INFO_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_EXAMINEE_INFO_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAMINEE_INFO_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExamineeNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAMINEE_INFO_STATUS), + "::", + stringify!(byExamineeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExamRoundNo) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAMINEE_INFO_STATUS), + "::", + stringify!(byExamRoundNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAMINEE_INFO_STATUS), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 133usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAMINEE_INFO_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EXAMINEE_INFO_STATUS = tagNET_DVR_EXAMINEE_INFO_STATUS; +pub type LPNET_DVR_EXAMINEE_INFO_STATUS = *mut tagNET_DVR_EXAMINEE_INFO_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EXAM_COMPARE_RESULT_COND { + pub dwSize: DWORD, + pub byExamRoundNo: [BYTE; 64usize], + pub byExamNo: [BYTE; 64usize], + pub struStartTime: NET_DVR_TIME, + pub struEndTime: NET_DVR_TIME, + pub byRes: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXAM_COMPARE_RESULT_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 692usize, + concat!("Size of: ", stringify!(tagNET_DVR_EXAM_COMPARE_RESULT_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_EXAM_COMPARE_RESULT_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_COMPARE_RESULT_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExamRoundNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_COMPARE_RESULT_COND), + "::", + stringify!(byExamRoundNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExamNo) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_COMPARE_RESULT_COND), + "::", + stringify!(byExamNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_COMPARE_RESULT_COND), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_COMPARE_RESULT_COND), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 180usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_COMPARE_RESULT_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EXAM_COMPARE_RESULT_COND = tagNET_DVR_EXAM_COMPARE_RESULT_COND; +pub type LPNET_DVR_EXAM_COMPARE_RESULT_COND = *mut tagNET_DVR_EXAM_COMPARE_RESULT_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EXAM_COMPARE_RESULT_CFG { + pub dwSize: DWORD, + pub struTime: NET_DVR_TIME, + pub byExamineeNo: [BYTE; 64usize], + pub byAdmissionTicket: [BYTE; 64usize], + pub byExamNo: [BYTE; 64usize], + pub byExamRoundNo: [BYTE; 64usize], + pub byName: [BYTE; 32usize], + pub byCardNo: [BYTE; 32usize], + pub dwPicDataLen: DWORD, + pub pPicData: *mut ::std::os::raw::c_char, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EXAM_COMPARE_RESULT_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 616usize, + concat!("Size of: ", stringify!(tagNET_DVR_EXAM_COMPARE_RESULT_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_EXAM_COMPARE_RESULT_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_COMPARE_RESULT_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_COMPARE_RESULT_CFG), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExamineeNo) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_COMPARE_RESULT_CFG), + "::", + stringify!(byExamineeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAdmissionTicket) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_COMPARE_RESULT_CFG), + "::", + stringify!(byAdmissionTicket) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExamNo) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_COMPARE_RESULT_CFG), + "::", + stringify!(byExamNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExamRoundNo) as usize - ptr as usize }, + 220usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_COMPARE_RESULT_CFG), + "::", + stringify!(byExamRoundNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 284usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_COMPARE_RESULT_CFG), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 316usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_COMPARE_RESULT_CFG), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicDataLen) as usize - ptr as usize }, + 348usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_COMPARE_RESULT_CFG), + "::", + stringify!(dwPicDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPicData) as usize - ptr as usize }, + 352usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_COMPARE_RESULT_CFG), + "::", + stringify!(pPicData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 360usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EXAM_COMPARE_RESULT_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_EXAM_COMPARE_RESULT_CFG = tagNET_DVR_EXAM_COMPARE_RESULT_CFG; +pub type LPNET_DVR_EXAM_COMPARE_RESULT_CFG = *mut tagNET_DVR_EXAM_COMPARE_RESULT_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BLOCKLIST_PICTURE_COND { + pub dwSize: DWORD, + pub dwPictureNum: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BLOCKLIST_PICTURE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_BLOCKLIST_PICTURE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_BLOCKLIST_PICTURE_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_PICTURE_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPictureNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_PICTURE_COND), + "::", + stringify!(dwPictureNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_PICTURE_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BLOCKLIST_PICTURE_COND = tagNET_DVR_BLOCKLIST_PICTURE_COND; +pub type LPNET_DVR_BLOCKLIST_PICTURE_COND = *mut tagNET_DVR_BLOCKLIST_PICTURE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BLOCKLIST_PICTURE_STATUS { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub byStatus: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BLOCKLIST_PICTURE_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 100usize, + concat!("Size of: ", stringify!(tagNET_DVR_BLOCKLIST_PICTURE_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_BLOCKLIST_PICTURE_STATUS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_PICTURE_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_PICTURE_STATUS), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_PICTURE_STATUS), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_PICTURE_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BLOCKLIST_PICTURE_STATUS = tagNET_DVR_BLOCKLIST_PICTURE_STATUS; +pub type LPNET_DVR_BLOCKLIST_PICTURE_STATUS = *mut tagNET_DVR_BLOCKLIST_PICTURE_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_BLOCKLIST_PICTURE_CFG { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub byName: [BYTE; 32usize], + pub bySex: BYTE, + pub byPictureValid: BYTE, + pub byRes1: [BYTE; 2usize], + pub dwPictureLen: DWORD, + pub pPictureBuffer: *mut ::std::os::raw::c_char, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_BLOCKLIST_PICTURE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 216usize, + concat!("Size of: ", stringify!(tagNET_DVR_BLOCKLIST_PICTURE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_BLOCKLIST_PICTURE_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_PICTURE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_PICTURE_CFG), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_PICTURE_CFG), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySex) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_PICTURE_CFG), + "::", + stringify!(bySex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPictureValid) as usize - ptr as usize }, + 69usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_PICTURE_CFG), + "::", + stringify!(byPictureValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 70usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_PICTURE_CFG), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPictureLen) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_PICTURE_CFG), + "::", + stringify!(dwPictureLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPictureBuffer) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_PICTURE_CFG), + "::", + stringify!(pPictureBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_BLOCKLIST_PICTURE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_BLOCKLIST_PICTURE_CFG = tagNET_DVR_BLOCKLIST_PICTURE_CFG; +pub type LPNET_DVR_BLOCKLIST_PICTURE_CFG = *mut tagNET_DVR_BLOCKLIST_PICTURE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_UPLOAD_ID_BLOCKLIST_COND { + pub dwSize: DWORD, + pub dwBlockListNum: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_UPLOAD_ID_BLOCKLIST_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_UPLOAD_ID_BLOCKLIST_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_UPLOAD_ID_BLOCKLIST_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_ID_BLOCKLIST_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBlockListNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_ID_BLOCKLIST_COND), + "::", + stringify!(dwBlockListNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_ID_BLOCKLIST_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_UPLOAD_ID_BLOCKLIST_COND = tagNET_DVR_UPLOAD_ID_BLOCKLIST_COND; +pub type LPNET_DVR_UPLOAD_ID_BLOCKLIST_COND = *mut tagNET_DVR_UPLOAD_ID_BLOCKLIST_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_UPLOAD_ID_BLOCKLIST_CFG { + pub dwSize: DWORD, + pub struIDCardCfg: NET_DVR_ID_CARD_INFO, + pub byBlockListValid: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_UPLOAD_ID_BLOCKLIST_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 820usize, + concat!("Size of: ", stringify!(tagNET_DVR_UPLOAD_ID_BLOCKLIST_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_UPLOAD_ID_BLOCKLIST_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_ID_BLOCKLIST_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struIDCardCfg) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_ID_BLOCKLIST_CFG), + "::", + stringify!(struIDCardCfg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBlockListValid) as usize - ptr as usize }, + 692usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_ID_BLOCKLIST_CFG), + "::", + stringify!(byBlockListValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 693usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_ID_BLOCKLIST_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_UPLOAD_ID_BLOCKLIST_CFG = tagNET_DVR_UPLOAD_ID_BLOCKLIST_CFG; +pub type LPNET_DVR_UPLOAD_ID_BLOCKLIST_CFG = *mut tagNET_DVR_UPLOAD_ID_BLOCKLIST_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_UPLOAD_ID_BLOCKLIST_STATUS { + pub dwSize: DWORD, + pub byIDNum: [BYTE; 32usize], + pub byStatus: BYTE, + pub byRes: [BYTE; 63usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_UPLOAD_ID_BLOCKLIST_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 100usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_UPLOAD_ID_BLOCKLIST_STATUS) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_UPLOAD_ID_BLOCKLIST_STATUS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_ID_BLOCKLIST_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byIDNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_ID_BLOCKLIST_STATUS), + "::", + stringify!(byIDNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_ID_BLOCKLIST_STATUS), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_UPLOAD_ID_BLOCKLIST_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_UPLOAD_ID_BLOCKLIST_STATUS = tagNET_DVR_UPLOAD_ID_BLOCKLIST_STATUS; +pub type LPNET_DVR_UPLOAD_ID_BLOCKLIST_STATUS = *mut tagNET_DVR_UPLOAD_ID_BLOCKLIST_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARM_ISAPI_INFO { + pub pAlarmData: *mut ::std::os::raw::c_char, + pub dwAlarmDataLen: DWORD, + pub byDataType: BYTE, + pub byPicturesNumber: BYTE, + pub byRes: [BYTE; 2usize], + pub pPicPackData: *mut ::std::os::raw::c_void, + pub byRes1: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARM_ISAPI_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARM_ISAPI_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARM_ISAPI_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pAlarmData) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_ISAPI_INFO), + "::", + stringify!(pAlarmData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmDataLen) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_ISAPI_INFO), + "::", + stringify!(dwAlarmDataLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDataType) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_ISAPI_INFO), + "::", + stringify!(byDataType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicturesNumber) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_ISAPI_INFO), + "::", + stringify!(byPicturesNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_ISAPI_INFO), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPicPackData) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_ISAPI_INFO), + "::", + stringify!(pPicPackData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_ISAPI_INFO), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_ALARM_ISAPI_INFO = tagNET_DVR_ALARM_ISAPI_INFO; +pub type LPNET_DVR_ALARM_ISAPI_INFO = *mut tagNET_DVR_ALARM_ISAPI_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARM_ISAPI_PICDATA { + pub dwPicLen: DWORD, + pub byPicType: BYTE, + pub byRes: [BYTE; 3usize], + pub szFilename: [::std::os::raw::c_char; 256usize], + pub pPicData: *mut BYTE, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARM_ISAPI_PICDATA() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 272usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARM_ISAPI_PICDATA)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARM_ISAPI_PICDATA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPicLen) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_ISAPI_PICDATA), + "::", + stringify!(dwPicLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPicType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_ISAPI_PICDATA), + "::", + stringify!(byPicType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_ISAPI_PICDATA), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szFilename) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_ISAPI_PICDATA), + "::", + stringify!(szFilename) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPicData) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_ISAPI_PICDATA), + "::", + stringify!(pPicData) + ) + ); +} +pub type NET_DVR_ALARM_ISAPI_PICDATA = tagNET_DVR_ALARM_ISAPI_PICDATA; +pub type LPNET_DVR_ALARM_ISAPI_PICDATA = *mut tagNET_DVR_ALARM_ISAPI_PICDATA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FORMAT_HDD { + pub dwSize: DWORD, + pub dwDiskNo: DWORD, + pub struLocateIP: NET_DVR_IPADDR, + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FORMAT_HDD() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 168usize, + concat!("Size of: ", stringify!(tagNET_DVR_FORMAT_HDD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FORMAT_HDD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FORMAT_HDD), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDiskNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FORMAT_HDD), + "::", + stringify!(dwDiskNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struLocateIP) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FORMAT_HDD), + "::", + stringify!(struLocateIP) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FORMAT_HDD), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FORMAT_HDD = tagNET_DVR_FORMAT_HDD; +pub type LPNET_DVR_FORMAT_HDD = *mut tagNET_DVR_FORMAT_HDD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CHECK_FACE_PICTURE_COND { + pub dwSize: DWORD, + pub dwPictureNum: DWORD, + pub byCheckTemplate: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CHECK_FACE_PICTURE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!("Size of: ", stringify!(tagNET_DVR_CHECK_FACE_PICTURE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_CHECK_FACE_PICTURE_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHECK_FACE_PICTURE_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPictureNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHECK_FACE_PICTURE_COND), + "::", + stringify!(dwPictureNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCheckTemplate) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHECK_FACE_PICTURE_COND), + "::", + stringify!(byCheckTemplate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHECK_FACE_PICTURE_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CHECK_FACE_PICTURE_COND = tagNET_DVR_CHECK_FACE_PICTURE_COND; +pub type LPNET_DVR_CHECK_FACE_PICTURE_COND = *mut tagNET_DVR_CHECK_FACE_PICTURE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CHECK_FACE_PICTURE_CFG { + pub dwSize: DWORD, + pub dwPictureNo: DWORD, + pub dwPictureLen: DWORD, + pub pPictureBuffer: *mut ::std::os::raw::c_char, + pub dwFaceTemplateLen: DWORD, + pub pFaceTemplateBuffer: *mut ::std::os::raw::c_char, + pub byRes: [BYTE; 248usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CHECK_FACE_PICTURE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 288usize, + concat!("Size of: ", stringify!(tagNET_DVR_CHECK_FACE_PICTURE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_CHECK_FACE_PICTURE_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHECK_FACE_PICTURE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPictureNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHECK_FACE_PICTURE_CFG), + "::", + stringify!(dwPictureNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPictureLen) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHECK_FACE_PICTURE_CFG), + "::", + stringify!(dwPictureLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pPictureBuffer) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHECK_FACE_PICTURE_CFG), + "::", + stringify!(pPictureBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFaceTemplateLen) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHECK_FACE_PICTURE_CFG), + "::", + stringify!(dwFaceTemplateLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pFaceTemplateBuffer) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHECK_FACE_PICTURE_CFG), + "::", + stringify!(pFaceTemplateBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHECK_FACE_PICTURE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CHECK_FACE_PICTURE_CFG = tagNET_DVR_CHECK_FACE_PICTURE_CFG; +pub type LPNET_DVR_CHECK_FACE_PICTURE_CFG = *mut tagNET_DVR_CHECK_FACE_PICTURE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CHECK_FACE_PICTURE_STATUS { + pub dwSize: DWORD, + pub dwPictureNo: DWORD, + pub byCheckStatus: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CHECK_FACE_PICTURE_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 136usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_CHECK_FACE_PICTURE_STATUS) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_CHECK_FACE_PICTURE_STATUS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHECK_FACE_PICTURE_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPictureNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHECK_FACE_PICTURE_STATUS), + "::", + stringify!(dwPictureNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCheckStatus) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHECK_FACE_PICTURE_STATUS), + "::", + stringify!(byCheckStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CHECK_FACE_PICTURE_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CHECK_FACE_PICTURE_STATUS = tagNET_DVR_CHECK_FACE_PICTURE_STATUS; +pub type LPNET_DVR_CHECK_FACE_PICTURE_STATUS = *mut tagNET_DVR_CHECK_FACE_PICTURE_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_SDK_NPQ_STATE_SINGLE { + pub dwRttUs: DWORD, + pub dwRealRttUs: DWORD, + pub dwBitRate: DWORD, + pub byLossFraction: BYTE, + pub byLossFraction2: BYTE, + pub byRes: [BYTE; 126usize], +} +#[test] +fn bindgen_test_layout_tagNET_SDK_NPQ_STATE_SINGLE() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 140usize, + concat!("Size of: ", stringify!(tagNET_SDK_NPQ_STATE_SINGLE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_SDK_NPQ_STATE_SINGLE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRttUs) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_NPQ_STATE_SINGLE), + "::", + stringify!(dwRttUs) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRealRttUs) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_NPQ_STATE_SINGLE), + "::", + stringify!(dwRealRttUs) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBitRate) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_NPQ_STATE_SINGLE), + "::", + stringify!(dwBitRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLossFraction) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_NPQ_STATE_SINGLE), + "::", + stringify!(byLossFraction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLossFraction2) as usize - ptr as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_NPQ_STATE_SINGLE), + "::", + stringify!(byLossFraction2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_NPQ_STATE_SINGLE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_SDK_NPQ_STATE_SINGLE = tagNET_SDK_NPQ_STATE_SINGLE; +pub type LPNET_SDK_NPQ_STATE_SINGLE = *mut tagNET_SDK_NPQ_STATE_SINGLE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_SDK_NPQ_STATE { + pub dwSize: DWORD, + pub struAudioState: NET_SDK_NPQ_STATE_SINGLE, + pub struVideoState: NET_SDK_NPQ_STATE_SINGLE, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_SDK_NPQ_STATE() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 540usize, + concat!("Size of: ", stringify!(tagNET_SDK_NPQ_STATE)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_SDK_NPQ_STATE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_NPQ_STATE), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAudioState) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_NPQ_STATE), + "::", + stringify!(struAudioState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struVideoState) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_NPQ_STATE), + "::", + stringify!(struVideoState) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 284usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_NPQ_STATE), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_SDK_NPQ_STATE = tagNET_SDK_NPQ_STATE; +pub type LPNET_SDK_NPQ_STATE = *mut tagNET_SDK_NPQ_STATE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_SDK_NPQ_NOTIFY_PARAM { + pub iVersion: LONG, + pub dwBitRate: DWORD, + pub bHaveBitrate: ::std::os::raw::c_int, + pub bHaveForceIframe: ::std::os::raw::c_int, + pub bForceIframe: ::std::os::raw::c_int, + pub bHaveScale: ::std::os::raw::c_int, + pub fScale: f32, + pub res: [BYTE; 240usize], +} +#[test] +fn bindgen_test_layout_tagNET_SDK_NPQ_NOTIFY_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 268usize, + concat!("Size of: ", stringify!(tagNET_SDK_NPQ_NOTIFY_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_SDK_NPQ_NOTIFY_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).iVersion) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_NPQ_NOTIFY_PARAM), + "::", + stringify!(iVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwBitRate) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_NPQ_NOTIFY_PARAM), + "::", + stringify!(dwBitRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bHaveBitrate) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_NPQ_NOTIFY_PARAM), + "::", + stringify!(bHaveBitrate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bHaveForceIframe) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_NPQ_NOTIFY_PARAM), + "::", + stringify!(bHaveForceIframe) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bForceIframe) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_NPQ_NOTIFY_PARAM), + "::", + stringify!(bForceIframe) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bHaveScale) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_NPQ_NOTIFY_PARAM), + "::", + stringify!(bHaveScale) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fScale) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_NPQ_NOTIFY_PARAM), + "::", + stringify!(fScale) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).res) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_SDK_NPQ_NOTIFY_PARAM), + "::", + stringify!(res) + ) + ); +} +pub type NET_SDK_NPQ_NOTIFY_PARAM = tagNET_SDK_NPQ_NOTIFY_PARAM; +pub type LPNET_SDK_NPQ_NOTIFY_PARAM = *mut tagNET_SDK_NPQ_NOTIFY_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARM_SEARCH_COND { + pub dwSize: DWORD, + pub strStartTime: NET_DVR_TIME_SEARCH_COND, + pub strStopTime: NET_DVR_TIME_SEARCH_COND, + pub dwAlarmComm: DWORD, + pub sAlarmUID: [::std::os::raw::c_char; 64usize], + pub wEventType: WORD, + pub wSubEventType: WORD, + pub bySupport: BYTE, + pub byNoBoundary: BYTE, + pub byRes: [BYTE; 122usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARM_SEARCH_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 224usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARM_SEARCH_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARM_SEARCH_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SEARCH_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SEARCH_COND), + "::", + stringify!(strStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strStopTime) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SEARCH_COND), + "::", + stringify!(strStopTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmComm) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SEARCH_COND), + "::", + stringify!(dwAlarmComm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sAlarmUID) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SEARCH_COND), + "::", + stringify!(sAlarmUID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wEventType) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SEARCH_COND), + "::", + stringify!(wEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wSubEventType) as usize - ptr as usize }, + 98usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SEARCH_COND), + "::", + stringify!(wSubEventType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bySupport) as usize - ptr as usize }, + 100usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SEARCH_COND), + "::", + stringify!(bySupport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byNoBoundary) as usize - ptr as usize }, + 101usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SEARCH_COND), + "::", + stringify!(byNoBoundary) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 102usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SEARCH_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARM_SEARCH_COND = tagNET_DVR_ALARM_SEARCH_COND; +pub type LPNET_DVR_ALARM_SEARCH_COND = *mut tagNET_DVR_ALARM_SEARCH_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_ALARM_SEARCH_RESULT { + pub dwSize: DWORD, + pub dwAlarmComm: DWORD, + pub dwAlarmLen: DWORD, + pub pAlarmInfo: *mut ::std::os::raw::c_char, + pub struAlarmer: NET_DVR_ALARMER, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_ALARM_SEARCH_RESULT() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 528usize, + concat!("Size of: ", stringify!(tagNET_DVR_ALARM_SEARCH_RESULT)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_ALARM_SEARCH_RESULT)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SEARCH_RESULT), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmComm) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SEARCH_RESULT), + "::", + stringify!(dwAlarmComm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmLen) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SEARCH_RESULT), + "::", + stringify!(dwAlarmLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pAlarmInfo) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SEARCH_RESULT), + "::", + stringify!(pAlarmInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAlarmer) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SEARCH_RESULT), + "::", + stringify!(struAlarmer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 396usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_ALARM_SEARCH_RESULT), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_ALARM_SEARCH_RESULT = tagNET_DVR_ALARM_SEARCH_RESULT; +pub type LPNET_DVR_ALARM_SEARCH_RESULT = *mut tagNET_DVR_ALARM_SEARCH_RESULT; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FACE_AND_TEMPLATE_COND { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub dwFaceNum: DWORD, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FACE_AND_TEMPLATE_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 168usize, + concat!("Size of: ", stringify!(tagNET_DVR_FACE_AND_TEMPLATE_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FACE_AND_TEMPLATE_COND) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_AND_TEMPLATE_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_AND_TEMPLATE_COND), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFaceNum) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_AND_TEMPLATE_COND), + "::", + stringify!(dwFaceNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_AND_TEMPLATE_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FACE_AND_TEMPLATE_COND = tagNET_DVR_FACE_AND_TEMPLATE_COND; +pub type LPNET_DVR_FACE_AND_TEMPLATE_COND = *mut tagNET_DVR_FACE_AND_TEMPLATE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FACE_AND_TEMPLATE_CFG { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub dwFaceLen: DWORD, + pub pFaceBuffer: *mut ::std::os::raw::c_char, + pub dwFaceTemplateLen: DWORD, + pub pFaceTemplateBuffer: *mut ::std::os::raw::c_char, + pub byRes: [BYTE; 116usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FACE_AND_TEMPLATE_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 184usize, + concat!("Size of: ", stringify!(tagNET_DVR_FACE_AND_TEMPLATE_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FACE_AND_TEMPLATE_CFG) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_AND_TEMPLATE_CFG), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_AND_TEMPLATE_CFG), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFaceLen) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_AND_TEMPLATE_CFG), + "::", + stringify!(dwFaceLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pFaceBuffer) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_AND_TEMPLATE_CFG), + "::", + stringify!(pFaceBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFaceTemplateLen) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_AND_TEMPLATE_CFG), + "::", + stringify!(dwFaceTemplateLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pFaceTemplateBuffer) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_AND_TEMPLATE_CFG), + "::", + stringify!(pFaceTemplateBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_AND_TEMPLATE_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FACE_AND_TEMPLATE_CFG = tagNET_DVR_FACE_AND_TEMPLATE_CFG; +pub type LPNET_DVR_FACE_AND_TEMPLATE_CFG = *mut tagNET_DVR_FACE_AND_TEMPLATE_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FACE_AND_TEMPLATE_STATUS { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub byRecvStatus: BYTE, + pub byRes: [BYTE; 131usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FACE_AND_TEMPLATE_STATUS() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 168usize, + concat!("Size of: ", stringify!(tagNET_DVR_FACE_AND_TEMPLATE_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_FACE_AND_TEMPLATE_STATUS) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_AND_TEMPLATE_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_AND_TEMPLATE_STATUS), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecvStatus) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_AND_TEMPLATE_STATUS), + "::", + stringify!(byRecvStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FACE_AND_TEMPLATE_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FACE_AND_TEMPLATE_STATUS = tagNET_DVR_FACE_AND_TEMPLATE_STATUS; +pub type LPNET_DVR_FACE_AND_TEMPLATE_STATUS = *mut tagNET_DVR_FACE_AND_TEMPLATE_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_SINGLE_HEATMAP_RESULT_PDC { + pub dwMaxHeatMapValue: DWORD, + pub dwMinHeatMapValue: DWORD, + pub dwTimeHeatMapValue: DWORD, + pub wArrayLine: WORD, + pub wArrayColumn: WORD, + pub pBuffer: *mut BYTE, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_SINGLE_HEATMAP_RESULT_PDC() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_SINGLE_HEATMAP_RESULT_PDC) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_SINGLE_HEATMAP_RESULT_PDC) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxHeatMapValue) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_HEATMAP_RESULT_PDC), + "::", + stringify!(dwMaxHeatMapValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMinHeatMapValue) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_HEATMAP_RESULT_PDC), + "::", + stringify!(dwMinHeatMapValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwTimeHeatMapValue) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_HEATMAP_RESULT_PDC), + "::", + stringify!(dwTimeHeatMapValue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wArrayLine) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_HEATMAP_RESULT_PDC), + "::", + stringify!(wArrayLine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wArrayColumn) as usize - ptr as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_HEATMAP_RESULT_PDC), + "::", + stringify!(wArrayColumn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBuffer) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_HEATMAP_RESULT_PDC), + "::", + stringify!(pBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_SINGLE_HEATMAP_RESULT_PDC), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_SINGLE_HEATMAP_RESULT_PDC = tagNET_DVR_SINGLE_HEATMAP_RESULT_PDC; +pub type LPNET_DVR_SINGLE_HEATMAP_RESULT_PDC = *mut tagNET_DVR_SINGLE_HEATMAP_RESULT_PDC; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_HEATMAP_RESULT_PDC { + pub dwSize: DWORD, + pub struStartTime: NET_DVR_TIME_EX, + pub struEndTime: NET_DVR_TIME_EX, + pub struDevInfo: NET_VCA_DEV_INFO, + pub wDevInfoIvmsChannelEx: WORD, + pub byBrokenNetHttp: BYTE, + pub byArrayUnitType: BYTE, + pub struSingleHeatMap: [NET_DVR_SINGLE_HEATMAP_RESULT_PDC; 2usize], + pub wCurNumber: WORD, + pub wLeaveNumber: WORD, + pub pEventNotificationAlertBuff: *mut ::std::os::raw::c_char, + pub dwEventNotificationAlertLen: DWORD, + pub byRes1: [BYTE; 48usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_HEATMAP_RESULT_PDC() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 360usize, + concat!("Size of: ", stringify!(tagNET_DVR_HEATMAP_RESULT_PDC)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_HEATMAP_RESULT_PDC)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT_PDC), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struStartTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT_PDC), + "::", + stringify!(struStartTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struEndTime) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT_PDC), + "::", + stringify!(struEndTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struDevInfo) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT_PDC), + "::", + stringify!(struDevInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wDevInfoIvmsChannelEx) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT_PDC), + "::", + stringify!(wDevInfoIvmsChannelEx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBrokenNetHttp) as usize - ptr as usize }, + 170usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT_PDC), + "::", + stringify!(byBrokenNetHttp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byArrayUnitType) as usize - ptr as usize }, + 171usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT_PDC), + "::", + stringify!(byArrayUnitType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struSingleHeatMap) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT_PDC), + "::", + stringify!(struSingleHeatMap) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCurNumber) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT_PDC), + "::", + stringify!(wCurNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wLeaveNumber) as usize - ptr as usize }, + 290usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT_PDC), + "::", + stringify!(wLeaveNumber) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pEventNotificationAlertBuff) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT_PDC), + "::", + stringify!(pEventNotificationAlertBuff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEventNotificationAlertLen) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT_PDC), + "::", + stringify!(dwEventNotificationAlertLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 308usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_HEATMAP_RESULT_PDC), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_HEATMAP_RESULT_PDC = tagNET_DVR_HEATMAP_RESULT_PDC; +pub type LPNET_DVR_HEATMAP_RESULT_PDC = *mut tagNET_DVR_HEATMAP_RESULT_PDC; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_AIOP_VIDEO_HEAD_ { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub struTime: NET_DVR_SYSTEM_TIME, + pub szTaskID: [::std::os::raw::c_char; 64usize], + pub dwAIOPDataSize: DWORD, + pub dwPictureSize: DWORD, + pub szMPID: [::std::os::raw::c_char; 64usize], + pub pBufferAIOPData: *mut BYTE, + pub pBufferPicture: *mut BYTE, + pub byPictureMode: BYTE, + pub byCompressedDotMatrixMode: BYTE, + pub byRes2: [BYTE; 2usize], + pub dwPresetIndex: DWORD, + pub dwAddInfoPictureSize: DWORD, + pub pAddInfoPictureBuffer: *mut BYTE, + pub pFacePicBuff: *mut ::std::os::raw::c_char, + pub dwFacePicBuffLen: DWORD, + pub pComparisonPicBuff: *mut ::std::os::raw::c_char, + pub dwComparisonPicBuffLen: DWORD, + pub pCompressedDotMatrixBuff: *mut ::std::os::raw::c_char, + pub dwCompressedDotMatrixBuffLen: DWORD, + pub byRes: [BYTE; 132usize], +} +#[test] +fn bindgen_test_layout__NET_AIOP_VIDEO_HEAD_() { + const UNINIT: ::std::mem::MaybeUninit<_NET_AIOP_VIDEO_HEAD_> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_AIOP_VIDEO_HEAD_>(), + 376usize, + concat!("Size of: ", stringify!(_NET_AIOP_VIDEO_HEAD_)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_AIOP_VIDEO_HEAD_>(), + 8usize, + concat!("Alignment of ", stringify!(_NET_AIOP_VIDEO_HEAD_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_VIDEO_HEAD_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_VIDEO_HEAD_), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_VIDEO_HEAD_), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szTaskID) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_VIDEO_HEAD_), + "::", + stringify!(szTaskID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAIOPDataSize) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_VIDEO_HEAD_), + "::", + stringify!(dwAIOPDataSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPictureSize) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_VIDEO_HEAD_), + "::", + stringify!(dwPictureSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szMPID) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_VIDEO_HEAD_), + "::", + stringify!(szMPID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBufferAIOPData) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_VIDEO_HEAD_), + "::", + stringify!(pBufferAIOPData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBufferPicture) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_VIDEO_HEAD_), + "::", + stringify!(pBufferPicture) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPictureMode) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_VIDEO_HEAD_), + "::", + stringify!(byPictureMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCompressedDotMatrixMode) as usize - ptr as usize }, + 177usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_VIDEO_HEAD_), + "::", + stringify!(byCompressedDotMatrixMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 178usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_VIDEO_HEAD_), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPresetIndex) as usize - ptr as usize }, + 180usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_VIDEO_HEAD_), + "::", + stringify!(dwPresetIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAddInfoPictureSize) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_VIDEO_HEAD_), + "::", + stringify!(dwAddInfoPictureSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pAddInfoPictureBuffer) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_VIDEO_HEAD_), + "::", + stringify!(pAddInfoPictureBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pFacePicBuff) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_VIDEO_HEAD_), + "::", + stringify!(pFacePicBuff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFacePicBuffLen) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_VIDEO_HEAD_), + "::", + stringify!(dwFacePicBuffLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pComparisonPicBuff) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_VIDEO_HEAD_), + "::", + stringify!(pComparisonPicBuff) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwComparisonPicBuffLen) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_VIDEO_HEAD_), + "::", + stringify!(dwComparisonPicBuffLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pCompressedDotMatrixBuff) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_VIDEO_HEAD_), + "::", + stringify!(pCompressedDotMatrixBuff) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).dwCompressedDotMatrixBuffLen) as usize - ptr as usize + }, + 240usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_VIDEO_HEAD_), + "::", + stringify!(dwCompressedDotMatrixBuffLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 244usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_VIDEO_HEAD_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_AIOP_VIDEO_HEAD = _NET_AIOP_VIDEO_HEAD_; +pub type LPNET_AIOP_VIDEO_HEAD = *mut _NET_AIOP_VIDEO_HEAD_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_AIOP_PICTURE_HEAD_ { + pub dwSize: DWORD, + pub struTime: NET_DVR_SYSTEM_TIME, + pub szPID: [::std::os::raw::c_char; 64usize], + pub dwAIOPDataSize: DWORD, + pub byStatus: BYTE, + pub byPictureMode: BYTE, + pub byCompressedDotMatrixMode: BYTE, + pub byRes1: [BYTE; 1usize], + pub szMPID: [::std::os::raw::c_char; 64usize], + pub pBufferAIOPData: *mut BYTE, + pub dwPresetIndex: DWORD, + pub dwPictureSize: DWORD, + pub pBufferPicture: *mut BYTE, + pub szTaskID: [::std::os::raw::c_char; 64usize], + pub pCompressedDotMatrixBuff: *mut ::std::os::raw::c_char, + pub dwCompressedDotMatrixBuffLen: DWORD, + pub byRes: [BYTE; 92usize], +} +#[test] +fn bindgen_test_layout__NET_AIOP_PICTURE_HEAD_() { + const UNINIT: ::std::mem::MaybeUninit<_NET_AIOP_PICTURE_HEAD_> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_AIOP_PICTURE_HEAD_>(), + 352usize, + concat!("Size of: ", stringify!(_NET_AIOP_PICTURE_HEAD_)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_AIOP_PICTURE_HEAD_>(), + 8usize, + concat!("Alignment of ", stringify!(_NET_AIOP_PICTURE_HEAD_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_PICTURE_HEAD_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_PICTURE_HEAD_), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szPID) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_PICTURE_HEAD_), + "::", + stringify!(szPID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAIOPDataSize) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_PICTURE_HEAD_), + "::", + stringify!(dwAIOPDataSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_PICTURE_HEAD_), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPictureMode) as usize - ptr as usize }, + 89usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_PICTURE_HEAD_), + "::", + stringify!(byPictureMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCompressedDotMatrixMode) as usize - ptr as usize }, + 90usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_PICTURE_HEAD_), + "::", + stringify!(byCompressedDotMatrixMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 91usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_PICTURE_HEAD_), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szMPID) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_PICTURE_HEAD_), + "::", + stringify!(szMPID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBufferAIOPData) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_PICTURE_HEAD_), + "::", + stringify!(pBufferAIOPData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPresetIndex) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_PICTURE_HEAD_), + "::", + stringify!(dwPresetIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPictureSize) as usize - ptr as usize }, + 172usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_PICTURE_HEAD_), + "::", + stringify!(dwPictureSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBufferPicture) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_PICTURE_HEAD_), + "::", + stringify!(pBufferPicture) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szTaskID) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_PICTURE_HEAD_), + "::", + stringify!(szTaskID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pCompressedDotMatrixBuff) as usize - ptr as usize }, + 248usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_PICTURE_HEAD_), + "::", + stringify!(pCompressedDotMatrixBuff) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).dwCompressedDotMatrixBuffLen) as usize - ptr as usize + }, + 256usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_PICTURE_HEAD_), + "::", + stringify!(dwCompressedDotMatrixBuffLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 260usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_PICTURE_HEAD_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_AIOP_PICTURE_HEAD = _NET_AIOP_PICTURE_HEAD_; +pub type LPNET_AIOP_PICTURE_HEAD = *mut _NET_AIOP_PICTURE_HEAD_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_DOOR_FILE_UPLOAD_PARAM { + pub dwSize: DWORD, + pub dwFileSize: DWORD, + pub byFileName: [BYTE; 100usize], + pub byRes1: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_DOOR_FILE_UPLOAD_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 364usize, + concat!("Size of: ", stringify!(tagNET_DVR_DOOR_FILE_UPLOAD_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_DOOR_FILE_UPLOAD_PARAM) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_FILE_UPLOAD_PARAM), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFileSize) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_FILE_UPLOAD_PARAM), + "::", + stringify!(dwFileSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFileName) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_FILE_UPLOAD_PARAM), + "::", + stringify!(byFileName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 108usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_DOOR_FILE_UPLOAD_PARAM), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_DVR_DOOR_FILE_UPLOAD_PARAM = tagNET_DVR_DOOR_FILE_UPLOAD_PARAM; +pub type LPNET_DVR_DOOR_FILE_UPLOAD_PARAM = *mut tagNET_DVR_DOOR_FILE_UPLOAD_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_TRANS_AUDIO_INFO { + pub dwSize: DWORD, + pub sAudioName: [::std::os::raw::c_char; 32usize], + pub byAudioFormat: BYTE, + pub byRes: [BYTE; 127usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_TRANS_AUDIO_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 164usize, + concat!("Size of: ", stringify!(tagNET_DVR_TRANS_AUDIO_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_TRANS_AUDIO_INFO)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANS_AUDIO_INFO), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sAudioName) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANS_AUDIO_INFO), + "::", + stringify!(sAudioName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioFormat) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANS_AUDIO_INFO), + "::", + stringify!(byAudioFormat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_TRANS_AUDIO_INFO), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_TRANS_AUDIO_INFO = tagNET_DVR_TRANS_AUDIO_INFO; +pub type LPNET_DVR_TRANS_AUDIO_INFO = *mut tagNET_DVR_TRANS_AUDIO_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_AIOP_POLLING_VIDEO_HEAD_ { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub struTime: NET_DVR_SYSTEM_TIME, + pub szTaskID: [::std::os::raw::c_char; 64usize], + pub dwAIOPDataSize: DWORD, + pub dwPictureSize: DWORD, + pub szMPID: [::std::os::raw::c_char; 64usize], + pub pBufferAIOPData: *mut BYTE, + pub pBufferPicture: *mut BYTE, + pub byPictureMode: BYTE, + pub byCompressedDotMatrixMode: BYTE, + pub byRes2: [BYTE; 2usize], + pub dwPresetIndex: DWORD, + pub pCompressedDotMatrixBuff: *mut ::std::os::raw::c_char, + pub dwCompressedDotMatrixBuffLen: DWORD, + pub byRes: [BYTE; 164usize], +} +#[test] +fn bindgen_test_layout__NET_AIOP_POLLING_VIDEO_HEAD_() { + const UNINIT: ::std::mem::MaybeUninit<_NET_AIOP_POLLING_VIDEO_HEAD_> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_AIOP_POLLING_VIDEO_HEAD_>(), + 360usize, + concat!("Size of: ", stringify!(_NET_AIOP_POLLING_VIDEO_HEAD_)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_AIOP_POLLING_VIDEO_HEAD_>(), + 8usize, + concat!("Alignment of ", stringify!(_NET_AIOP_POLLING_VIDEO_HEAD_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_VIDEO_HEAD_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_VIDEO_HEAD_), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_VIDEO_HEAD_), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szTaskID) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_VIDEO_HEAD_), + "::", + stringify!(szTaskID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAIOPDataSize) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_VIDEO_HEAD_), + "::", + stringify!(dwAIOPDataSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPictureSize) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_VIDEO_HEAD_), + "::", + stringify!(dwPictureSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szMPID) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_VIDEO_HEAD_), + "::", + stringify!(szMPID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBufferAIOPData) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_VIDEO_HEAD_), + "::", + stringify!(pBufferAIOPData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBufferPicture) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_VIDEO_HEAD_), + "::", + stringify!(pBufferPicture) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPictureMode) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_VIDEO_HEAD_), + "::", + stringify!(byPictureMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCompressedDotMatrixMode) as usize - ptr as usize }, + 177usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_VIDEO_HEAD_), + "::", + stringify!(byCompressedDotMatrixMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 178usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_VIDEO_HEAD_), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPresetIndex) as usize - ptr as usize }, + 180usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_VIDEO_HEAD_), + "::", + stringify!(dwPresetIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pCompressedDotMatrixBuff) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_VIDEO_HEAD_), + "::", + stringify!(pCompressedDotMatrixBuff) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).dwCompressedDotMatrixBuffLen) as usize - ptr as usize + }, + 192usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_VIDEO_HEAD_), + "::", + stringify!(dwCompressedDotMatrixBuffLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_VIDEO_HEAD_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_AIOP_POLLING_VIDEO_HEAD = _NET_AIOP_POLLING_VIDEO_HEAD_; +pub type LPNET_AIOP_POLLING_VIDEO_HEAD = *mut _NET_AIOP_POLLING_VIDEO_HEAD_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_AIOP_HISTORY_VIDEO_HEAD_ { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub struTime: NET_DVR_SYSTEM_TIME, + pub szTaskID: [::std::os::raw::c_char; 64usize], + pub dwAIOPDataSize: DWORD, + pub dwPictureSize: DWORD, + pub szMPID: [::std::os::raw::c_char; 64usize], + pub pBufferAIOPData: *mut BYTE, + pub pBufferPicture: *mut BYTE, + pub byPictureMode: BYTE, + pub byRes: [BYTE; 183usize], +} +#[test] +fn bindgen_test_layout__NET_AIOP_HISTORY_VIDEO_HEAD_() { + const UNINIT: ::std::mem::MaybeUninit<_NET_AIOP_HISTORY_VIDEO_HEAD_> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_AIOP_HISTORY_VIDEO_HEAD_>(), + 360usize, + concat!("Size of: ", stringify!(_NET_AIOP_HISTORY_VIDEO_HEAD_)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_AIOP_HISTORY_VIDEO_HEAD_>(), + 8usize, + concat!("Alignment of ", stringify!(_NET_AIOP_HISTORY_VIDEO_HEAD_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_HISTORY_VIDEO_HEAD_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_HISTORY_VIDEO_HEAD_), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_HISTORY_VIDEO_HEAD_), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szTaskID) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_HISTORY_VIDEO_HEAD_), + "::", + stringify!(szTaskID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAIOPDataSize) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_HISTORY_VIDEO_HEAD_), + "::", + stringify!(dwAIOPDataSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPictureSize) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_HISTORY_VIDEO_HEAD_), + "::", + stringify!(dwPictureSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szMPID) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_HISTORY_VIDEO_HEAD_), + "::", + stringify!(szMPID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBufferAIOPData) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_HISTORY_VIDEO_HEAD_), + "::", + stringify!(pBufferAIOPData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBufferPicture) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_HISTORY_VIDEO_HEAD_), + "::", + stringify!(pBufferPicture) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPictureMode) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_HISTORY_VIDEO_HEAD_), + "::", + stringify!(byPictureMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 177usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_HISTORY_VIDEO_HEAD_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_AIOP_HISTORY_VIDEO_HEAD = _NET_AIOP_HISTORY_VIDEO_HEAD_; +pub type LPNET_AIOP_HISTORY_VIDEO_HEAD = *mut _NET_AIOP_HISTORY_VIDEO_HEAD_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_AIOP_POLLING_SNAP_HEAD_ { + pub dwSize: DWORD, + pub dwChannel: DWORD, + pub struTime: NET_DVR_SYSTEM_TIME, + pub szTaskID: [::std::os::raw::c_char; 64usize], + pub dwAIOPDataSize: DWORD, + pub dwPictureSize: DWORD, + pub szMPID: [::std::os::raw::c_char; 64usize], + pub pBufferAIOPData: *mut BYTE, + pub pBufferPicture: *mut BYTE, + pub byPictureMode: BYTE, + pub byCompressedDotMatrixMode: BYTE, + pub byRes2: [BYTE; 2usize], + pub dwPresetIndex: DWORD, + pub dwAddInfoPictureSize: DWORD, + pub pAddInfoPictureBuffer: *mut BYTE, + pub pCompressedDotMatrixBuff: *mut ::std::os::raw::c_char, + pub dwCompressedDotMatrixBuffLen: DWORD, + pub byRes: [BYTE; 156usize], +} +#[test] +fn bindgen_test_layout__NET_AIOP_POLLING_SNAP_HEAD_() { + const UNINIT: ::std::mem::MaybeUninit<_NET_AIOP_POLLING_SNAP_HEAD_> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_AIOP_POLLING_SNAP_HEAD_>(), + 368usize, + concat!("Size of: ", stringify!(_NET_AIOP_POLLING_SNAP_HEAD_)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_AIOP_POLLING_SNAP_HEAD_>(), + 8usize, + concat!("Alignment of ", stringify!(_NET_AIOP_POLLING_SNAP_HEAD_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_SNAP_HEAD_), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwChannel) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_SNAP_HEAD_), + "::", + stringify!(dwChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struTime) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_SNAP_HEAD_), + "::", + stringify!(struTime) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szTaskID) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_SNAP_HEAD_), + "::", + stringify!(szTaskID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAIOPDataSize) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_SNAP_HEAD_), + "::", + stringify!(dwAIOPDataSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPictureSize) as usize - ptr as usize }, + 92usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_SNAP_HEAD_), + "::", + stringify!(dwPictureSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szMPID) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_SNAP_HEAD_), + "::", + stringify!(szMPID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBufferAIOPData) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_SNAP_HEAD_), + "::", + stringify!(pBufferAIOPData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pBufferPicture) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_SNAP_HEAD_), + "::", + stringify!(pBufferPicture) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byPictureMode) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_SNAP_HEAD_), + "::", + stringify!(byPictureMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCompressedDotMatrixMode) as usize - ptr as usize }, + 177usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_SNAP_HEAD_), + "::", + stringify!(byCompressedDotMatrixMode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 178usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_SNAP_HEAD_), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwPresetIndex) as usize - ptr as usize }, + 180usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_SNAP_HEAD_), + "::", + stringify!(dwPresetIndex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAddInfoPictureSize) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_SNAP_HEAD_), + "::", + stringify!(dwAddInfoPictureSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pAddInfoPictureBuffer) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_SNAP_HEAD_), + "::", + stringify!(pAddInfoPictureBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pCompressedDotMatrixBuff) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_SNAP_HEAD_), + "::", + stringify!(pCompressedDotMatrixBuff) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).dwCompressedDotMatrixBuffLen) as usize - ptr as usize + }, + 208usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_SNAP_HEAD_), + "::", + stringify!(dwCompressedDotMatrixBuffLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 212usize, + concat!( + "Offset of field: ", + stringify!(_NET_AIOP_POLLING_SNAP_HEAD_), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_AIOP_POLLING_SNAP_HEAD = _NET_AIOP_POLLING_SNAP_HEAD_; +pub type LPNET_AIOP_POLLING_SNAP_HEAD = *mut _NET_AIOP_POLLING_SNAP_HEAD_; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AI_ALGORITHM_MODEL { + pub dwSize: DWORD, + pub dwDescribeLength: DWORD, + pub pDescribeBuffer: *mut ::std::os::raw::c_char, + pub byRes1: [BYTE; 3usize], + pub dwLicenseKeyLength: DWORD, + pub pLicenseKeyBuffer: *mut ::std::os::raw::c_char, + pub byRes: [BYTE; 120usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AI_ALGORITHM_MODEL() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 152usize, + concat!("Size of: ", stringify!(tagNET_DVR_AI_ALGORITHM_MODEL)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AI_ALGORITHM_MODEL)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AI_ALGORITHM_MODEL), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDescribeLength) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AI_ALGORITHM_MODEL), + "::", + stringify!(dwDescribeLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pDescribeBuffer) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AI_ALGORITHM_MODEL), + "::", + stringify!(pDescribeBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AI_ALGORITHM_MODEL), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwLicenseKeyLength) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AI_ALGORITHM_MODEL), + "::", + stringify!(dwLicenseKeyLength) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pLicenseKeyBuffer) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AI_ALGORITHM_MODEL), + "::", + stringify!(pLicenseKeyBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AI_ALGORITHM_MODEL), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AI_ALGORITHM_MODEL = tagNET_DVR_AI_ALGORITHM_MODEL; +pub type LPNET_DVR_AI_ALGORITHM_MODEL = *mut tagNET_DVR_AI_ALGORITHM_MODEL; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AI_PICTUR_UPLOAD { + pub dwSize: DWORD, + pub szTaskID: [::std::os::raw::c_char; 64usize], + pub szPID: [::std::os::raw::c_char; 64usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AI_PICTUR_UPLOAD() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(tagNET_DVR_AI_PICTUR_UPLOAD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AI_PICTUR_UPLOAD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AI_PICTUR_UPLOAD), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szTaskID) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AI_PICTUR_UPLOAD), + "::", + stringify!(szTaskID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szPID) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AI_PICTUR_UPLOAD), + "::", + stringify!(szPID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AI_PICTUR_UPLOAD), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AI_PICTUR_UPLOAD = tagNET_DVR_AI_PICTUR_UPLOAD; +pub type LPNET_DVR_AI_PICTUR_UPLOAD = *mut tagNET_DVR_AI_PICTUR_UPLOAD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_CARD_RECORD { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub byCardType: BYTE, + pub byLeaderCard: BYTE, + pub byUserType: BYTE, + pub byRes1: BYTE, + pub byDoorRight: [BYTE; 256usize], + pub struValid: NET_DVR_VALID_PERIOD_CFG, + pub byBelongGroup: [BYTE; 128usize], + pub byCardPassword: [BYTE; 8usize], + pub wCardRightPlan: [WORD; 256usize], + pub dwMaxSwipeTimes: DWORD, + pub dwSwipeTimes: DWORD, + pub dwEmployeeNo: DWORD, + pub byName: [BYTE; 32usize], + pub dwCardRight: DWORD, + pub byRes: [BYTE; 256usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_CARD_RECORD() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_CARD_RECORD> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_CARD_RECORD>(), + 1300usize, + concat!("Size of: ", stringify!(_NET_DVR_CARD_RECORD)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_CARD_RECORD>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_CARD_RECORD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_RECORD), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_RECORD), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardType) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_RECORD), + "::", + stringify!(byCardType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLeaderCard) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_RECORD), + "::", + stringify!(byLeaderCard) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byUserType) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_RECORD), + "::", + stringify!(byUserType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_RECORD), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byDoorRight) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_RECORD), + "::", + stringify!(byDoorRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struValid) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_RECORD), + "::", + stringify!(struValid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byBelongGroup) as usize - ptr as usize }, + 348usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_RECORD), + "::", + stringify!(byBelongGroup) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardPassword) as usize - ptr as usize }, + 476usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_RECORD), + "::", + stringify!(byCardPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wCardRightPlan) as usize - ptr as usize }, + 484usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_RECORD), + "::", + stringify!(wCardRightPlan) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMaxSwipeTimes) as usize - ptr as usize }, + 996usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_RECORD), + "::", + stringify!(dwMaxSwipeTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSwipeTimes) as usize - ptr as usize }, + 1000usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_RECORD), + "::", + stringify!(dwSwipeTimes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEmployeeNo) as usize - ptr as usize }, + 1004usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_RECORD), + "::", + stringify!(dwEmployeeNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byName) as usize - ptr as usize }, + 1008usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_RECORD), + "::", + stringify!(byName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardRight) as usize - ptr as usize }, + 1040usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_RECORD), + "::", + stringify!(dwCardRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 1044usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_RECORD), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CARD_RECORD = _NET_DVR_CARD_RECORD; +pub type LPNET_DVR_CARD_RECORD = *mut _NET_DVR_CARD_RECORD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_CARD_COND { + pub dwSize: DWORD, + pub dwCardNum: DWORD, + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_CARD_COND() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_CARD_COND> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_CARD_COND>(), + 72usize, + concat!("Size of: ", stringify!(_NET_DVR_CARD_COND)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_CARD_COND>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_CARD_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_COND), + "::", + stringify!(dwCardNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CARD_COND = _NET_DVR_CARD_COND; +pub type LPNET_DVR_CARD_COND = *mut _NET_DVR_CARD_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_CARD_SEND_DATA { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub byRes: [BYTE; 16usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_CARD_SEND_DATA() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_CARD_SEND_DATA> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_CARD_SEND_DATA>(), + 52usize, + concat!("Size of: ", stringify!(_NET_DVR_CARD_SEND_DATA)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_CARD_SEND_DATA>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_CARD_SEND_DATA)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_SEND_DATA), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_SEND_DATA), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_SEND_DATA), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CARD_SEND_DATA = _NET_DVR_CARD_SEND_DATA; +pub type LPNET_DVR_CARD_SEND_DATA = *mut _NET_DVR_CARD_SEND_DATA; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_CARD_STATUS { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub dwErrorCode: DWORD, + pub byStatus: BYTE, + pub byRes: [BYTE; 23usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_CARD_STATUS() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_CARD_STATUS> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_CARD_STATUS>(), + 64usize, + concat!("Size of: ", stringify!(_NET_DVR_CARD_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_CARD_STATUS>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_CARD_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_STATUS), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwErrorCode) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_STATUS), + "::", + stringify!(dwErrorCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byStatus) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_STATUS), + "::", + stringify!(byStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 41usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_CARD_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CARD_STATUS = _NET_DVR_CARD_STATUS; +pub type LPNET_DVR_CARD_STATUS = *mut _NET_DVR_CARD_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_FACE_RECORD { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub dwFaceLen: DWORD, + pub pFaceBuffer: *mut BYTE, + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_FACE_RECORD() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_FACE_RECORD> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_FACE_RECORD>(), + 176usize, + concat!("Size of: ", stringify!(_NET_DVR_FACE_RECORD)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_FACE_RECORD>(), + 8usize, + concat!("Alignment of ", stringify!(_NET_DVR_FACE_RECORD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FACE_RECORD), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FACE_RECORD), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFaceLen) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FACE_RECORD), + "::", + stringify!(dwFaceLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pFaceBuffer) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FACE_RECORD), + "::", + stringify!(pFaceBuffer) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FACE_RECORD), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FACE_RECORD = _NET_DVR_FACE_RECORD; +pub type LPNET_DVR_FACE_RECORD = *mut _NET_DVR_FACE_RECORD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_FACE_STATUS { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub byErrorMsg: [BYTE; 32usize], + pub dwReaderNo: DWORD, + pub byRecvStatus: BYTE, + pub byRes: [BYTE; 131usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_FACE_STATUS() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_FACE_STATUS> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_FACE_STATUS>(), + 204usize, + concat!("Size of: ", stringify!(_NET_DVR_FACE_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_FACE_STATUS>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_FACE_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FACE_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FACE_STATUS), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byErrorMsg) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FACE_STATUS), + "::", + stringify!(byErrorMsg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwReaderNo) as usize - ptr as usize }, + 68usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FACE_STATUS), + "::", + stringify!(dwReaderNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecvStatus) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FACE_STATUS), + "::", + stringify!(byRecvStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 73usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FACE_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FACE_STATUS = _NET_DVR_FACE_STATUS; +pub type LPNET_DVR_FACE_STATUS = *mut _NET_DVR_FACE_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_FACE_COND { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub dwFaceNum: DWORD, + pub dwEnableReaderNo: DWORD, + pub byRes: [BYTE; 124usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_FACE_COND() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_FACE_COND> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_FACE_COND>(), + 168usize, + concat!("Size of: ", stringify!(_NET_DVR_FACE_COND)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_FACE_COND>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_FACE_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FACE_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FACE_COND), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFaceNum) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FACE_COND), + "::", + stringify!(dwFaceNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnableReaderNo) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FACE_COND), + "::", + stringify!(dwEnableReaderNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FACE_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FACE_COND = _NET_DVR_FACE_COND; +pub type LPNET_DVR_FACE_COND = *mut _NET_DVR_FACE_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_FINGERPRINT_RECORD { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub dwFingerPrintLen: DWORD, + pub dwEnableReaderNo: DWORD, + pub byFingerPrintID: BYTE, + pub byFingerType: BYTE, + pub byRes1: [BYTE; 30usize], + pub byFingerData: [BYTE; 768usize], + pub byRes: [BYTE; 96usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_FINGERPRINT_RECORD() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_FINGERPRINT_RECORD> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_FINGERPRINT_RECORD>(), + 940usize, + concat!("Size of: ", stringify!(_NET_DVR_FINGERPRINT_RECORD)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_FINGERPRINT_RECORD>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_FINGERPRINT_RECORD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FINGERPRINT_RECORD), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FINGERPRINT_RECORD), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFingerPrintLen) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FINGERPRINT_RECORD), + "::", + stringify!(dwFingerPrintLen) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnableReaderNo) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FINGERPRINT_RECORD), + "::", + stringify!(dwEnableReaderNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerPrintID) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FINGERPRINT_RECORD), + "::", + stringify!(byFingerPrintID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerType) as usize - ptr as usize }, + 45usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FINGERPRINT_RECORD), + "::", + stringify!(byFingerType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 46usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FINGERPRINT_RECORD), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerData) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FINGERPRINT_RECORD), + "::", + stringify!(byFingerData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 844usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FINGERPRINT_RECORD), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FINGERPRINT_RECORD = _NET_DVR_FINGERPRINT_RECORD; +pub type LPNET_DVR_FINGERPRINT_RECORD = *mut _NET_DVR_FINGERPRINT_RECORD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _NET_DVR_FINGERPRINT_STATUS { + pub dwSize: DWORD, + pub byCardNo: [BYTE; 32usize], + pub byCardReaderRecvStatus: BYTE, + pub byFingerPrintID: BYTE, + pub byFingerType: BYTE, + pub byRecvStatus: BYTE, + pub byErrorMsg: [BYTE; 32usize], + pub dwCardReaderNo: DWORD, + pub byRes: [BYTE; 20usize], +} +#[test] +fn bindgen_test_layout__NET_DVR_FINGERPRINT_STATUS() { + const UNINIT: ::std::mem::MaybeUninit<_NET_DVR_FINGERPRINT_STATUS> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_NET_DVR_FINGERPRINT_STATUS>(), + 96usize, + concat!("Size of: ", stringify!(_NET_DVR_FINGERPRINT_STATUS)) + ); + assert_eq!( + ::std::mem::align_of::<_NET_DVR_FINGERPRINT_STATUS>(), + 4usize, + concat!("Alignment of ", stringify!(_NET_DVR_FINGERPRINT_STATUS)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FINGERPRINT_STATUS), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FINGERPRINT_STATUS), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardReaderRecvStatus) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FINGERPRINT_STATUS), + "::", + stringify!(byCardReaderRecvStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerPrintID) as usize - ptr as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FINGERPRINT_STATUS), + "::", + stringify!(byFingerPrintID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerType) as usize - ptr as usize }, + 38usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FINGERPRINT_STATUS), + "::", + stringify!(byFingerType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRecvStatus) as usize - ptr as usize }, + 39usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FINGERPRINT_STATUS), + "::", + stringify!(byRecvStatus) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byErrorMsg) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FINGERPRINT_STATUS), + "::", + stringify!(byErrorMsg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwCardReaderNo) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FINGERPRINT_STATUS), + "::", + stringify!(dwCardReaderNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(_NET_DVR_FINGERPRINT_STATUS), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FINGERPRINT_STATUS = _NET_DVR_FINGERPRINT_STATUS; +pub type LPNET_DVR_FINGERPRINT_STATUS = *mut _NET_DVR_FINGERPRINT_STATUS; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_FINGERPRINT_COND { + pub dwSize: DWORD, + pub dwFingerprintNum: DWORD, + pub byCardNo: [BYTE; 32usize], + pub dwEnableReaderNo: DWORD, + pub byFingerPrintID: BYTE, + pub byRes: [BYTE; 131usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_FINGERPRINT_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 176usize, + concat!("Size of: ", stringify!(tagNET_DVR_FINGERPRINT_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_FINGERPRINT_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGERPRINT_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwFingerprintNum) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGERPRINT_COND), + "::", + stringify!(dwFingerprintNum) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byCardNo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGERPRINT_COND), + "::", + stringify!(byCardNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwEnableReaderNo) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGERPRINT_COND), + "::", + stringify!(dwEnableReaderNo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byFingerPrintID) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGERPRINT_COND), + "::", + stringify!(byFingerPrintID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 45usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_FINGERPRINT_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_FINGERPRINT_COND = tagNET_DVR_FINGERPRINT_COND; +pub type LPNET_DVR_FINGERPRINT_COND = *mut tagNET_DVR_FINGERPRINT_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_CAPTURE_DATA_COND { + pub dwSize: DWORD, + pub szPassword: [::std::os::raw::c_char; 128usize], + pub byRes: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_CAPTURE_DATA_COND() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 260usize, + concat!("Size of: ", stringify!(tagNET_DVR_CAPTURE_DATA_COND)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_CAPTURE_DATA_COND)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_DATA_COND), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szPassword) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_DATA_COND), + "::", + stringify!(szPassword) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_CAPTURE_DATA_COND), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_CAPTURE_DATA_COND = tagNET_DVR_CAPTURE_DATA_COND; +pub type LPNET_DVR_CAPTURE_DATA_COND = *mut tagNET_DVR_CAPTURE_DATA_COND; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_EZVIZ_USER_LOGIN_INFO { + pub sEzvizServerAddress: [::std::os::raw::c_char; 129usize], + pub wPort: WORD, + pub byLogin: BYTE, + pub byRes1: [BYTE; 1usize], + pub sClassSession: [::std::os::raw::c_char; 64usize], + pub sDeviceID: [::std::os::raw::c_char; 32usize], + pub byRes2: [BYTE; 128usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_EZVIZ_USER_LOGIN_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 358usize, + concat!("Size of: ", stringify!(tagNET_DVR_EZVIZ_USER_LOGIN_INFO)) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_EZVIZ_USER_LOGIN_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sEzvizServerAddress) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EZVIZ_USER_LOGIN_INFO), + "::", + stringify!(sEzvizServerAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 130usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EZVIZ_USER_LOGIN_INFO), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byLogin) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EZVIZ_USER_LOGIN_INFO), + "::", + stringify!(byLogin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 133usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EZVIZ_USER_LOGIN_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sClassSession) as usize - ptr as usize }, + 134usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EZVIZ_USER_LOGIN_INFO), + "::", + stringify!(sClassSession) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDeviceID) as usize - ptr as usize }, + 198usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EZVIZ_USER_LOGIN_INFO), + "::", + stringify!(sDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 230usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_EZVIZ_USER_LOGIN_INFO), + "::", + stringify!(byRes2) + ) + ); +} +pub type NET_DVR_EZVIZ_USER_LOGIN_INFO = tagNET_DVR_EZVIZ_USER_LOGIN_INFO; +pub type LPNET_DVR_EZVIZ_USER_LOGIN_INFO = *mut tagNET_DVR_EZVIZ_USER_LOGIN_INFO; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO { + pub sEzvizServerAddress: [::std::os::raw::c_char; 129usize], + pub byRes1: [BYTE; 3usize], + pub wPort: WORD, + pub byRes2: [BYTE; 2usize], + pub sUrl: [::std::os::raw::c_char; 64usize], + pub sAccessToken: [::std::os::raw::c_char; 128usize], + pub sDeviceID: [::std::os::raw::c_char; 32usize], + pub sClientType: [::std::os::raw::c_char; 32usize], + pub sFeatureCode: [::std::os::raw::c_char; 64usize], + pub sOsVersion: [::std::os::raw::c_char; 32usize], + pub sNetType: [::std::os::raw::c_char; 32usize], + pub sSdkVersion: [::std::os::raw::c_char; 32usize], + pub sAppID: [::std::os::raw::c_char; 64usize], + pub byRes3: [BYTE; 512usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 1128usize, + concat!( + "Size of: ", + stringify!(tagNET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO) + ) + ); + assert_eq!( + ::std::mem::align_of::(), + 2usize, + concat!( + "Alignment of ", + stringify!(tagNET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sEzvizServerAddress) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO), + "::", + stringify!(sEzvizServerAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 129usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO), + "::", + stringify!(byRes1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wPort) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO), + "::", + stringify!(wPort) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes2) as usize - ptr as usize }, + 134usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO), + "::", + stringify!(byRes2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUrl) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO), + "::", + stringify!(sUrl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sAccessToken) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO), + "::", + stringify!(sAccessToken) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDeviceID) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO), + "::", + stringify!(sDeviceID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sClientType) as usize - ptr as usize }, + 360usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO), + "::", + stringify!(sClientType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sFeatureCode) as usize - ptr as usize }, + 392usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO), + "::", + stringify!(sFeatureCode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sOsVersion) as usize - ptr as usize }, + 456usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO), + "::", + stringify!(sOsVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sNetType) as usize - ptr as usize }, + 488usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO), + "::", + stringify!(sNetType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sSdkVersion) as usize - ptr as usize }, + 520usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO), + "::", + stringify!(sSdkVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sAppID) as usize - ptr as usize }, + 552usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO), + "::", + stringify!(sAppID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes3) as usize - ptr as usize }, + 616usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO), + "::", + stringify!(byRes3) + ) + ); +} +pub type NET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO = tagNET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO; +pub type LPNET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO = *mut tagNET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO; +pub const tagALARM_EXCEPTION_ERROR_ENUM_ENUM_AEE_PARAM_ERROR: tagALARM_EXCEPTION_ERROR_ENUM = 1; +pub const tagALARM_EXCEPTION_ERROR_ENUM_ENUM_AEE_LENS_ERROR: tagALARM_EXCEPTION_ERROR_ENUM = 2; +pub const tagALARM_EXCEPTION_ERROR_ENUM_ENUM_AEE_PIC_LENS_ERROR: tagALARM_EXCEPTION_ERROR_ENUM = 3; +pub const tagALARM_EXCEPTION_ERROR_ENUM_ENUM_AEE_DEVID_LENS_ERROR: tagALARM_EXCEPTION_ERROR_ENUM = + 4; +pub const tagALARM_EXCEPTION_ERROR_ENUM_ENUM_AEE_NEW_ALLOC_ERROR: tagALARM_EXCEPTION_ERROR_ENUM = 5; +pub const tagALARM_EXCEPTION_ERROR_ENUM_ENUM_AEE_JSON_FORMAT_ERROR: tagALARM_EXCEPTION_ERROR_ENUM = + 6; +pub const tagALARM_EXCEPTION_ERROR_ENUM_ENUM_AEE_XML_FORMAT_ERROR: tagALARM_EXCEPTION_ERROR_ENUM = + 7; +pub const tagALARM_EXCEPTION_ERROR_ENUM_ENUM_AEE_BINARY_PIC_ERROR: tagALARM_EXCEPTION_ERROR_ENUM = + 8; +pub const tagALARM_EXCEPTION_ERROR_ENUM_ENUM_AEE_PIC_NUM_ERROR: tagALARM_EXCEPTION_ERROR_ENUM = 9; +pub const tagALARM_EXCEPTION_ERROR_ENUM_ENUM_AEE_GET_BOUNDARY_ERROR: tagALARM_EXCEPTION_ERROR_ENUM = + 10; +pub const tagALARM_EXCEPTION_ERROR_ENUM_ENUM_AEE_BOUNDARY_NUM_ERROR: tagALARM_EXCEPTION_ERROR_ENUM = + 11; +pub type tagALARM_EXCEPTION_ERROR_ENUM = ::std::os::raw::c_uint; +pub use self::tagALARM_EXCEPTION_ERROR_ENUM as ALARM_EXCEPTION_ERROR_ENUM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_ALARM_EXCEPTION { + pub dwAlarmType: DWORD, + pub byExceptionType: BYTE, + pub byRes: [BYTE; 3usize], + pub szErrMsg: [::std::os::raw::c_char; 256usize], + pub byRes1: [BYTE; 248usize], +} +#[test] +fn bindgen_test_layout_tagNET_ALARM_EXCEPTION() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 512usize, + concat!("Size of: ", stringify!(tagNET_ALARM_EXCEPTION)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_ALARM_EXCEPTION)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwAlarmType) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_EXCEPTION), + "::", + stringify!(dwAlarmType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byExceptionType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_EXCEPTION), + "::", + stringify!(byExceptionType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_EXCEPTION), + "::", + stringify!(byRes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).szErrMsg) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_EXCEPTION), + "::", + stringify!(szErrMsg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes1) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(tagNET_ALARM_EXCEPTION), + "::", + stringify!(byRes1) + ) + ); +} +pub type NET_ALARM_EXCEPTION = tagNET_ALARM_EXCEPTION; +pub type LPNET_ALARM_EXCEPTION = *mut tagNET_ALARM_EXCEPTION; +pub const ADDITIONAL_LIB_PLAYCTRL: ADDITIONAL_LIB = 0; +pub const ADDITIONAL_LIB_DSSDK: ADDITIONAL_LIB = 1; +pub const ADDITIONAL_LIB_STREAMCONVERT: ADDITIONAL_LIB = 2; +pub const ADDITIONAL_LIB_STREAMTRANS: ADDITIONAL_LIB = 3; +pub const ADDITIONAL_LIB_QOSSDK: ADDITIONAL_LIB = 4; +pub const ADDITIONAL_LIB_DLL_PATH_AUDIO: ADDITIONAL_LIB = 5; +pub const ADDITIONAL_LIB_EZVIZ_SSL_SDK: ADDITIONAL_LIB = 6; +pub const ADDITIONAL_LIB_ANALYZE_DATA_LIB: ADDITIONAL_LIB = 7; +pub const ADDITIONAL_LIB_DLL_LIBICONV: ADDITIONAL_LIB = 8; +pub const ADDITIONAL_LIB_SSLEAY32_SDK: ADDITIONAL_LIB = 9; +pub const ADDITIONAL_LIB_LIBEAY32_SDK: ADDITIONAL_LIB = 10; +pub const ADDITIONAL_LIB_HCNETUTILS_SDK: ADDITIONAL_LIB = 11; +pub const ADDITIONAL_LIB_NPQ_LIB: ADDITIONAL_LIB = 12; +pub const ADDITIONAL_LIB_LOAD_DLL_COUNT: ADDITIONAL_LIB = 13; +pub type ADDITIONAL_LIB = ::std::os::raw::c_uint; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUTOTEST_CFG_HEAD { + pub dwSize: DWORD, + pub dwInfoType: DWORD, + pub dwRetResult: DWORD, + pub dwDataBodySize: DWORD, + pub lpDataBody: *mut ::std::os::raw::c_void, + pub byRes: [BYTE; 32usize], +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUTOTEST_CFG_HEAD() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 56usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUTOTEST_CFG_HEAD)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AUTOTEST_CFG_HEAD)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSize) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTOTEST_CFG_HEAD), + "::", + stringify!(dwSize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInfoType) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTOTEST_CFG_HEAD), + "::", + stringify!(dwInfoType) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwRetResult) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTOTEST_CFG_HEAD), + "::", + stringify!(dwRetResult) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDataBodySize) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTOTEST_CFG_HEAD), + "::", + stringify!(dwDataBodySize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lpDataBody) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTOTEST_CFG_HEAD), + "::", + stringify!(lpDataBody) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTOTEST_CFG_HEAD), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_DVR_AUTOTEST_CFG_HEAD = tagNET_DVR_AUTOTEST_CFG_HEAD; +pub type LPNET_DVR_AUTOTEST_CFG_HEAD = *mut tagNET_DVR_AUTOTEST_CFG_HEAD; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUTOTEST_VIDEO_CFG { + pub dwSplitScreenNums: DWORD, + pub dwVoCh: DWORD, + pub dwInterface: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUTOTEST_VIDEO_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 12usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUTOTEST_VIDEO_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AUTOTEST_VIDEO_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSplitScreenNums) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTOTEST_VIDEO_CFG), + "::", + stringify!(dwSplitScreenNums) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVoCh) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTOTEST_VIDEO_CFG), + "::", + stringify!(dwVoCh) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwInterface) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTOTEST_VIDEO_CFG), + "::", + stringify!(dwInterface) + ) + ); +} +pub type NET_DVR_AUTOTEST_VIDEO_CFG = tagNET_DVR_AUTOTEST_VIDEO_CFG; +pub type LPNET_DVR_AUTOTEST_VIDEO_CFG = *mut tagNET_DVR_AUTOTEST_VIDEO_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_DVR_AUTOTEST_AUDIO_CFG { + pub dwVoCh: DWORD, + pub dwOpen: DWORD, +} +#[test] +fn bindgen_test_layout_tagNET_DVR_AUTOTEST_AUDIO_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(tagNET_DVR_AUTOTEST_AUDIO_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 4usize, + concat!("Alignment of ", stringify!(tagNET_DVR_AUTOTEST_AUDIO_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwVoCh) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTOTEST_AUDIO_CFG), + "::", + stringify!(dwVoCh) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwOpen) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(tagNET_DVR_AUTOTEST_AUDIO_CFG), + "::", + stringify!(dwOpen) + ) + ); +} +pub type NET_DVR_AUTOTEST_AUDIO_CFG = tagNET_DVR_AUTOTEST_AUDIO_CFG; +pub type LPNET_DVR_AUTOTEST_AUDIO_CFG = *mut tagNET_DVR_AUTOTEST_AUDIO_CFG; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_LOCAL_AUDIOCAST_PARAM { + pub byAudioBitRate: BYTE, + pub byAudioSamplingRate: BYTE, + pub byRes: [BYTE; 30usize], +} +#[test] +fn bindgen_test_layout_tagNET_LOCAL_AUDIOCAST_PARAM() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(tagNET_LOCAL_AUDIOCAST_PARAM)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_LOCAL_AUDIOCAST_PARAM)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioBitRate) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_LOCAL_AUDIOCAST_PARAM), + "::", + stringify!(byAudioBitRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byAudioSamplingRate) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(tagNET_LOCAL_AUDIOCAST_PARAM), + "::", + stringify!(byAudioSamplingRate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(tagNET_LOCAL_AUDIOCAST_PARAM), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_LOCAL_AUDIOCAST_PARAM = tagNET_LOCAL_AUDIOCAST_PARAM; +pub type LPNET_LOCAL_AUDIOCAST_PARAM = *mut tagNET_LOCAL_AUDIOCAST_PARAM; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tagNET_LOCAL_AUDIOCAST_CFG { + pub struAudioCastParam: [NET_LOCAL_AUDIOCAST_PARAM; 3usize], + pub byRes: [BYTE; 64usize], +} +#[test] +fn bindgen_test_layout_tagNET_LOCAL_AUDIOCAST_CFG() { + const UNINIT: ::std::mem::MaybeUninit = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 160usize, + concat!("Size of: ", stringify!(tagNET_LOCAL_AUDIOCAST_CFG)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(tagNET_LOCAL_AUDIOCAST_CFG)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).struAudioCastParam) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(tagNET_LOCAL_AUDIOCAST_CFG), + "::", + stringify!(struAudioCastParam) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byRes) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(tagNET_LOCAL_AUDIOCAST_CFG), + "::", + stringify!(byRes) + ) + ); +} +pub type NET_LOCAL_AUDIOCAST_CFG = tagNET_LOCAL_AUDIOCAST_CFG; +pub type LPNET_LOCAL_AUDIOCAST_CFG = *mut tagNET_LOCAL_AUDIOCAST_CFG; +extern "C" { + #[doc = "SDK�ӿں�������"] + pub fn NET_DVR_Init() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_Cleanup() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetExceptionCallBack_V30( + reserved1: UINT, + reserved2: *mut ::std::os::raw::c_void, + fExceptionCallBack: ::std::option::Option< + unsafe extern "C" fn( + dwType: DWORD, + lUserID: LONG, + lHandle: LONG, + pUser: *mut ::std::os::raw::c_void, + ), + >, + pUser: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_LoadAllCom() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetDVRMessCallBack( + fMessCallBack: ::std::option::Option< + unsafe extern "C" fn( + lCommand: LONG, + sDVRIP: *mut ::std::os::raw::c_char, + pBuf: *mut ::std::os::raw::c_char, + dwBufLen: DWORD, + ) -> ::std::os::raw::c_int, + >, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetDVRMessCallBack_EX( + fMessCallBack_EX: ::std::option::Option< + unsafe extern "C" fn( + lCommand: LONG, + lUserID: LONG, + pBuf: *mut ::std::os::raw::c_char, + dwBufLen: DWORD, + ) -> ::std::os::raw::c_int, + >, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetDVRMessCallBack_NEW( + fMessCallBack_NEW: ::std::option::Option< + unsafe extern "C" fn( + lCommand: LONG, + sDVRIP: *mut ::std::os::raw::c_char, + pBuf: *mut ::std::os::raw::c_char, + dwBufLen: DWORD, + dwLinkDVRPort: WORD, + ) -> ::std::os::raw::c_int, + >, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetDVRMessageCallBack( + fMessageCallBack: ::std::option::Option< + unsafe extern "C" fn( + lCommand: LONG, + sDVRIP: *mut ::std::os::raw::c_char, + pBuf: *mut ::std::os::raw::c_char, + dwBufLen: DWORD, + dwUser: DWORD, + ) -> ::std::os::raw::c_int, + >, + dwUser: DWORD, + ) -> ::std::os::raw::c_int; +} +pub type MSGCallBack = ::std::option::Option< + unsafe extern "C" fn( + lCommand: LONG, + pAlarmer: *mut NET_DVR_ALARMER, + pAlarmInfo: *mut ::std::os::raw::c_char, + dwBufLen: DWORD, + pUser: *mut ::std::os::raw::c_void, + ), +>; +extern "C" { + pub fn NET_DVR_SetDVRMessageCallBack_V30( + fMessageCallBack: MSGCallBack, + pUser: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +pub type MSGCallBack_V31 = ::std::option::Option< + unsafe extern "C" fn( + lCommand: LONG, + pAlarmer: *mut NET_DVR_ALARMER, + pAlarmInfo: *mut ::std::os::raw::c_char, + dwBufLen: DWORD, + pUser: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int, +>; +extern "C" { + pub fn NET_DVR_SetDVRMessageCallBack_V31( + fMessageCallBack: MSGCallBack_V31, + pUser: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetDVRMessageCallBack_V50( + iIndex: ::std::os::raw::c_int, + fMessageCallBack: MSGCallBack, + pUser: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetDVRMessageCallBack_V51( + iIndex: ::std::os::raw::c_int, + fMsgCallBack: MSGCallBack, + pUser: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetConnectTime(dwWaitTime: DWORD, dwTryTimes: DWORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetReconnect( + dwInterval: DWORD, + bEnableRecon: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetSDKVersion() -> DWORD; +} +extern "C" { + pub fn NET_DVR_GetSDKBuildVersion() -> DWORD; +} +extern "C" { + pub fn NET_DVR_IsSupport() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StartListen( + sLocalIP: *mut ::std::os::raw::c_char, + wLocalPort: WORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StopListen() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StartListen_V30( + sLocalIP: *mut ::std::os::raw::c_char, + wLocalPort: WORD, + DataCallback: MSGCallBack, + pUserData: *mut ::std::os::raw::c_void, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_StopListen_V30(lListenHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_Login( + sDVRIP: *mut ::std::os::raw::c_char, + wDVRPort: WORD, + sUserName: *mut ::std::os::raw::c_char, + sPassword: *mut ::std::os::raw::c_char, + lpDeviceInfo: LPNET_DVR_DEVICEINFO, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_Login_V30( + sDVRIP: *mut ::std::os::raw::c_char, + wDVRPort: WORD, + sUserName: *mut ::std::os::raw::c_char, + sPassword: *mut ::std::os::raw::c_char, + lpDeviceInfo: LPNET_DVR_DEVICEINFO_V30, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_Login_V40( + pLoginInfo: LPNET_DVR_USER_LOGIN_INFO, + lpDeviceInfo: LPNET_DVR_DEVICEINFO_V40, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_Login_Check( + sDVRIP: *mut ::std::os::raw::c_char, + wDVRPort: WORD, + sUserName: *mut ::std::os::raw::c_char, + sPassword: *mut ::std::os::raw::c_char, + lpDeviceInfo: LPNET_DVR_DEVICEINFO_V30, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_Logout(lUserID: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_Logout_V30(lUserID: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetLastError() -> DWORD; +} +extern "C" { + pub fn NET_DVR_GetLastErrorModelCode(pModelCode: *mut DWORD, pMErrDevSelfEx: *mut DWORD); +} +extern "C" { + pub fn NET_DVR_GetErrorMsg(pErrorNo: *mut LONG) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn NET_DVR_SetShowMode(dwShowType: DWORD, colorKey: COLORREF) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetDVRIPByResolveSvr( + sServerIP: *mut ::std::os::raw::c_char, + wServerPort: WORD, + sDVRName: *mut BYTE, + wDVRNameLen: WORD, + sDVRSerialNumber: *mut BYTE, + wDVRSerialLen: WORD, + sGetIP: *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetDVRIPByResolveSvr_EX( + sServerIP: *mut ::std::os::raw::c_char, + wServerPort: WORD, + sDVRName: *mut BYTE, + wDVRNameLen: WORD, + sDVRSerialNumber: *mut BYTE, + wDVRSerialLen: WORD, + sGetIP: *mut ::std::os::raw::c_char, + dwPort: *mut DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetDVRNAMEByResolveSvr( + sServerIP: *const ::std::os::raw::c_char, + wServerPort: WORD, + sIP: *const ::std::os::raw::c_char, + sDVRName: *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PlayDirect( + sDVRIP: *mut ::std::os::raw::c_char, + sUserName: *mut ::std::os::raw::c_char, + sPassword: *mut ::std::os::raw::c_char, + lpClientInfo: LPNET_DVR_CLIENTINFO, + fRealDataCallBack_V30: ::std::option::Option< + unsafe extern "C" fn( + lRealHandle: LONG, + dwDataType: DWORD, + pBuffer: *mut BYTE, + dwBufSize: DWORD, + pUser: *mut ::std::os::raw::c_void, + ), + >, + pUser: *mut ::std::os::raw::c_void, + bBlocked: ::std::os::raw::c_int, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_RealPlay(lUserID: LONG, lpClientInfo: LPNET_DVR_CLIENTINFO) -> LONG; +} +extern "C" { + pub fn NET_DVR_RealPlay_V30( + lUserID: LONG, + lpClientInfo: LPNET_DVR_CLIENTINFO, + fRealDataCallBack_V30: ::std::option::Option< + unsafe extern "C" fn( + lRealHandle: LONG, + dwDataType: DWORD, + pBuffer: *mut BYTE, + dwBufSize: DWORD, + pUser: *mut ::std::os::raw::c_void, + ), + >, + pUser: *mut ::std::os::raw::c_void, + bBlocked: ::std::os::raw::c_int, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_StopRealPlay(lRealHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StopPlayDirect(lRealHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_RigisterDrawFun( + lRealHandle: LONG, + fDrawFun: ::std::option::Option< + unsafe extern "C" fn(lRealHandle: LONG, hDc: HDC, dwUser: DWORD), + >, + dwUser: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetPlayerBufNumber(lRealHandle: LONG, dwBufNum: DWORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ThrowBFrame(lRealHandle: LONG, dwNum: DWORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetAudioMode(dwMode: DWORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_OpenSound(lRealHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_CloseSound() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_OpenSoundShare(lRealHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_CloseSoundShare(lRealHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_Volume(lRealHandle: LONG, wVolume: WORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SaveRealData( + lRealHandle: LONG, + sFileName: *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StopSaveRealData(lRealHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetRealDataCallBack( + lRealHandle: LONG, + fRealDataCallBack: ::std::option::Option< + unsafe extern "C" fn( + lRealHandle: LONG, + dwDataType: DWORD, + pBuffer: *mut BYTE, + dwBufSize: DWORD, + dwUser: DWORD, + ), + >, + dwUser: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetRealDataCallBackEx( + lRealHandle: LONG, + fRealDataCallBack: ::std::option::Option< + unsafe extern "C" fn( + lRealHandle: LONG, + dwDataType: DWORD, + pBuffer: *mut BYTE, + dwBufSize: DWORD, + pUser: *mut ::std::os::raw::c_void, + ), + >, + pUser: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetStandardDataCallBack( + lRealHandle: LONG, + fStdDataCallBack: ::std::option::Option< + unsafe extern "C" fn( + lRealHandle: LONG, + dwDataType: DWORD, + pBuffer: *mut BYTE, + dwBufSize: DWORD, + dwUser: DWORD, + ), + >, + dwUser: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetStandardDataCallBackEx( + lRealHandle: LONG, + fStdDataCallBack: ::std::option::Option< + unsafe extern "C" fn( + lRealHandle: LONG, + dwDataType: DWORD, + pBuffer: *mut BYTE, + dwBufSize: DWORD, + pUser: *mut ::std::os::raw::c_void, + ), + >, + pUser: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetTransparentDataCallBack( + lRealHandle: LONG, + fTpDataCallBack: ::std::option::Option< + unsafe extern "C" fn( + lRealHandle: LONG, + dwDataType: DWORD, + pBuffer: *mut BYTE, + dwBufSize: DWORD, + pUser: *mut ::std::os::raw::c_void, + ), + >, + pUser: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_CapturePicture( + lRealHandle: LONG, + sPicFileName: *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetCapturePictureMode(dwCaptureMode: DWORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MakeKeyFrame(lUserID: LONG, lChannel: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MakeKeyFrameSub(lUserID: LONG, lChannel: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PTZControl( + lRealHandle: LONG, + dwPTZCommand: DWORD, + dwStop: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PTZControl_Other( + lUserID: LONG, + lChannel: LONG, + dwPTZCommand: DWORD, + dwStop: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_TransPTZ( + lRealHandle: LONG, + pPTZCodeBuf: *mut ::std::os::raw::c_char, + dwBufSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_TransPTZ_Other( + lUserID: LONG, + lChannel: LONG, + pPTZCodeBuf: *mut ::std::os::raw::c_char, + dwBufSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PTZPreset( + lRealHandle: LONG, + dwPTZPresetCmd: DWORD, + dwPresetIndex: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PTZPreset_Other( + lUserID: LONG, + lChannel: LONG, + dwPTZPresetCmd: DWORD, + dwPresetIndex: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_TransPTZ_EX( + lRealHandle: LONG, + pPTZCodeBuf: *mut ::std::os::raw::c_char, + dwBufSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PTZControl_EX( + lRealHandle: LONG, + dwPTZCommand: DWORD, + dwStop: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PTZPreset_EX( + lRealHandle: LONG, + dwPTZPresetCmd: DWORD, + dwPresetIndex: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PTZCruise( + lRealHandle: LONG, + dwPTZCruiseCmd: DWORD, + byCruiseRoute: BYTE, + byCruisePoint: BYTE, + wInput: WORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PTZCruise_Other( + lUserID: LONG, + lChannel: LONG, + dwPTZCruiseCmd: DWORD, + byCruiseRoute: BYTE, + byCruisePoint: BYTE, + wInput: WORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PTZCruise_EX( + lRealHandle: LONG, + dwPTZCruiseCmd: DWORD, + byCruiseRoute: BYTE, + byCruisePoint: BYTE, + wInput: WORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PTZTrack(lRealHandle: LONG, dwPTZTrackCmd: DWORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PTZTrack_Other( + lUserID: LONG, + lChannel: LONG, + dwPTZTrackCmd: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PTZTrack_EX(lRealHandle: LONG, dwPTZTrackCmd: DWORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PTZControlWithSpeed( + lRealHandle: LONG, + dwPTZCommand: DWORD, + dwStop: DWORD, + dwSpeed: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PTZControlWithSpeed_Other( + lUserID: LONG, + lChannel: LONG, + dwPTZCommand: DWORD, + dwStop: DWORD, + dwSpeed: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PTZControlWithSpeed_EX( + lRealHandle: LONG, + dwPTZCommand: DWORD, + dwStop: DWORD, + dwSpeed: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetPTZCruise( + lUserID: LONG, + lChannel: LONG, + lCruiseRoute: LONG, + lpCruiseRet: LPNET_DVR_CRUISE_RET, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_FindFile( + lUserID: LONG, + lChannel: LONG, + dwFileType: DWORD, + lpStartTime: LPNET_DVR_TIME, + lpStopTime: LPNET_DVR_TIME, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindNextFile(lFindHandle: LONG, lpFindData: LPNET_DVR_FIND_DATA) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindNextFile_Card( + lFindHandle: LONG, + lpFindData: LPNET_DVR_FINDDATA_CARD, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindClose(lFindHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_FindNextFile_V30(lFindHandle: LONG, lpFindData: LPNET_DVR_FINDDATA_V30) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindNextFile_V40(lFindHandle: LONG, lpFindData: LPNET_DVR_FINDDATA_V40) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindNextFile_V50(lFindHandle: LONG, lpFindData: LPNET_DVR_FINDDATA_V50) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindFile_V30(lUserID: LONG, pFindCond: LPNET_DVR_FILECOND) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindFile_V50(lUserID: LONG, pFindCond: LPNET_DVR_FILECOND_V50) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindClose_V30(lFindHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_LockFileByName( + lUserID: LONG, + sLockFileName: *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_UnlockFileByName( + lUserID: LONG, + sUnlockFileName: *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_LockFileByNameV40( + lUserID: LONG, + bLock: ::std::os::raw::c_int, + lpLockFilePara: *const NET_DVR_LOCK_FILE_BY_NAME_PARA, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PlayBackByName( + lUserID: LONG, + sPlayBackFileName: *mut ::std::os::raw::c_char, + hWnd: HWND, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_PlayBackByTime( + lUserID: LONG, + lChannel: LONG, + lpStartTime: LPNET_DVR_TIME, + lpStopTime: LPNET_DVR_TIME, + hWnd: HWND, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_PlayBackReverseByName( + lUserID: LONG, + sPlayBackFileName: *mut ::std::os::raw::c_char, + hWnd: HWND, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_PlayBackByName_V50(lUserID: LONG, pParam: LPNET_DVR_PLAY_BY_NAME_PARA) -> LONG; +} +extern "C" { + pub fn NET_DVR_PlayBackReverseByName_V50( + lUserID: LONG, + pParam: LPNET_DVR_PLAY_BY_NAME_PARA, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_PlayBackByTime_PCNVR( + lUserID: LONG, + pPlaybackParams: *const NET_DVR_PLAYBCK_BYTIME_COND_PCNVR, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_PlayBackControl( + lPlayHandle: LONG, + dwControlCode: DWORD, + dwInValue: DWORD, + LPOutValue: *mut DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StopPlayBack(lPlayHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetPlayDataCallBack( + lPlayHandle: LONG, + fPlayDataCallBack: ::std::option::Option< + unsafe extern "C" fn( + lPlayHandle: LONG, + dwDataType: DWORD, + pBuffer: *mut BYTE, + dwBufSize: DWORD, + dwUser: DWORD, + ), + >, + dwUser: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetPlayBackESCallBack( + lPlayHandle: LONG, + fPlayESCallBack: ::std::option::Option< + unsafe extern "C" fn( + lPlayHandle: LONG, + struPackInfo: *mut NET_DVR_PACKET_INFO_EX, + pUser: *mut ::std::os::raw::c_void, + ), + >, + pUser: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetPlayDataCallBack_V40( + lPlayHandle: LONG, + fPlayDataCallBack_V40: ::std::option::Option< + unsafe extern "C" fn( + lPlayHandle: LONG, + dwDataType: DWORD, + pBuffer: *mut BYTE, + dwBufSize: DWORD, + pUser: *mut ::std::os::raw::c_void, + ), + >, + pUser: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PlayBackSaveData( + lPlayHandle: LONG, + sFileName: *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StopPlayBackSave(lPlayHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetPlayBackOsdTime( + lPlayHandle: LONG, + lpOsdTime: LPNET_DVR_TIME, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PlayBackCaptureFile( + lPlayHandle: LONG, + sFileName: *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetFileByName( + lUserID: LONG, + sDVRFileName: *mut ::std::os::raw::c_char, + sSavedFileName: *mut ::std::os::raw::c_char, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_GetFileByName_V50( + lUserID: LONG, + pParam: LPNET_DVR_DOWNLOAD_BY_NAME_COND, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_GetFileByTime( + lUserID: LONG, + lChannel: LONG, + lpStartTime: LPNET_DVR_TIME, + lpStopTime: LPNET_DVR_TIME, + sSavedFileName: *mut ::std::os::raw::c_char, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_StopGetFile(lFileHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetDownloadPos(lFileHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetPlayBackPos(lPlayHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_AdapterUpgrade(lUserID: LONG, sFileName: *mut ::std::os::raw::c_char) -> LONG; +} +extern "C" { + pub fn NET_DVR_Upgrade(lUserID: LONG, sFileName: *mut ::std::os::raw::c_char) -> LONG; +} +extern "C" { + pub fn NET_DVR_VcalibUpgrade( + lUserID: LONG, + lChannel: LONG, + sFileName: *const ::std::os::raw::c_char, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_GetUpgradeState(lUpgradeHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetUpgradeProgress(lUpgradeHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_CloseUpgradeHandle(lUpgradeHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetNetworkEnvironment(dwEnvironmentLevel: DWORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_FormatDisk(lUserID: LONG, lDiskNumber: LONG) -> LONG; +} +extern "C" { + pub fn NET_DVR_FormatDisk_V50( + lUserID: LONG, + lpStruHddFormatCond: *mut NET_DVR_FORMAT_HDD, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_GetFormatProgress( + lFormatHandle: LONG, + pCurrentFormatDisk: *mut LONG, + pCurrentDiskPos: *mut LONG, + pFormatStatic: *mut LONG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_CloseFormatHandle(lFormatHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetupAlarmChan(lUserID: LONG) -> LONG; +} +extern "C" { + pub fn NET_DVR_CloseAlarmChan(lAlarmHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetupAlarmChan_V30(lUserID: LONG) -> LONG; +} +extern "C" { + pub fn NET_DVR_CloseAlarmChan_V30(lAlarmHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StartVoiceCom( + lUserID: LONG, + fVoiceDataCallBack: ::std::option::Option< + unsafe extern "C" fn( + lVoiceComHandle: LONG, + pRecvDataBuffer: *mut ::std::os::raw::c_char, + dwBufSize: DWORD, + byAudioFlag: BYTE, + dwUser: DWORD, + ), + >, + dwUser: DWORD, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_StartVoiceCom_V30( + lUserID: LONG, + dwVoiceChan: DWORD, + bNeedCBNoEncData: ::std::os::raw::c_int, + fVoiceDataCallBack: ::std::option::Option< + unsafe extern "C" fn( + lVoiceComHandle: LONG, + pRecvDataBuffer: *mut ::std::os::raw::c_char, + dwBufSize: DWORD, + byAudioFlag: BYTE, + pUser: *mut ::std::os::raw::c_void, + ), + >, + pUser: *mut ::std::os::raw::c_void, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_SetVoiceComClientVolume( + lVoiceComHandle: LONG, + wVolume: WORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StopVoiceCom(lVoiceComHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StartVoiceCom_MR( + lUserID: LONG, + fVoiceDataCallBack: ::std::option::Option< + unsafe extern "C" fn( + lVoiceComHandle: LONG, + pRecvDataBuffer: *mut ::std::os::raw::c_char, + dwBufSize: DWORD, + byAudioFlag: BYTE, + dwUser: DWORD, + ), + >, + dwUser: DWORD, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_StartVoiceCom_MR_V30( + lUserID: LONG, + dwVoiceChan: DWORD, + fVoiceDataCallBack: ::std::option::Option< + unsafe extern "C" fn( + lVoiceComHandle: LONG, + pRecvDataBuffer: *mut ::std::os::raw::c_char, + dwBufSize: DWORD, + byAudioFlag: BYTE, + pUser: *mut ::std::os::raw::c_void, + ), + >, + pUser: *mut ::std::os::raw::c_void, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_VoiceComSendData( + lVoiceComHandle: LONG, + pSendBuf: *mut ::std::os::raw::c_char, + dwBufSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetCurrentAudioCompress( + lUserID: LONG, + lpCompressAudio: LPNET_DVR_COMPRESSION_AUDIO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetCurrentAudioCompress_V50( + lUserID: LONG, + lpAudioChannel: LPNET_DVR_AUDIO_CHANNEL, + lpCompressAudio: LPNET_DVR_COMPRESSION_AUDIO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ClientAudioStart() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ClientAudioStart_V30( + fVoiceDataCallBack: ::std::option::Option< + unsafe extern "C" fn( + pRecvDataBuffer: *mut ::std::os::raw::c_char, + dwBufSize: DWORD, + pUser: *mut ::std::os::raw::c_void, + ), + >, + pUser: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ClientAudioStop() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_AddDVR(lUserID: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_AddDVR_V30(lUserID: LONG, dwVoiceChan: DWORD) -> LONG; +} +extern "C" { + pub fn NET_DVR_DelDVR(lUserID: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_DelDVR_V30(lVoiceHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SerialStart( + lUserID: LONG, + lSerialPort: LONG, + fSerialDataCallBack: ::std::option::Option< + unsafe extern "C" fn( + lSerialHandle: LONG, + pRecvDataBuffer: *mut ::std::os::raw::c_char, + dwBufSize: DWORD, + dwUser: DWORD, + ), + >, + dwUser: DWORD, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_SerialStart_V40( + lUserID: LONG, + lpInBuffer: *mut ::std::os::raw::c_void, + dwInBufferSize: LONG, + fSerialDataCallBack: ::std::option::Option< + unsafe extern "C" fn( + lSerialHandle: LONG, + lCHannel: LONG, + pRecvDataBuffer: *mut ::std::os::raw::c_char, + dwBufSize: DWORD, + pUser: *mut ::std::os::raw::c_void, + ), + >, + pUser: *mut ::std::os::raw::c_void, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_SerialSend( + lSerialHandle: LONG, + lChannel: LONG, + pSendBuf: *mut ::std::os::raw::c_char, + dwBufSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SerialStop(lSerialHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SendTo232Port( + lUserID: LONG, + pSendBuf: *mut ::std::os::raw::c_char, + dwBufSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SendToSerialPort( + lUserID: LONG, + dwSerialPort: DWORD, + dwSerialIndex: DWORD, + pSendBuf: *mut ::std::os::raw::c_char, + dwBufSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InitG722Decoder(nBitrate: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_void; +} +extern "C" { + pub fn NET_DVR_DecodeG722Frame( + pDecHandle: *mut ::std::os::raw::c_void, + pInBuffer: *mut BYTE, + pOutBuffer: *mut BYTE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InitG722Encoder() -> *mut ::std::os::raw::c_void; +} +extern "C" { + pub fn NET_DVR_EncodeG722Frame( + pEncodeHandle: *mut ::std::os::raw::c_void, + pInBuffer: *mut BYTE, + pOutBuffer: *mut BYTE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ReleaseG722Decoder(pDecHandle: *mut ::std::os::raw::c_void); +} +extern "C" { + pub fn NET_DVR_ReleaseG722Encoder(pEncodeHandle: *mut ::std::os::raw::c_void); +} +extern "C" { + pub fn NET_DVR_InitG726Decoder( + pDecMoudle: *mut *mut ::std::os::raw::c_void, + ) -> *mut ::std::os::raw::c_void; +} +extern "C" { + pub fn NET_DVR_ReleaseG726Decoder(pDecHandle: *mut ::std::os::raw::c_void); +} +extern "C" { + pub fn NET_DVR_DecodeG726Frame( + pDecMoudle: *mut ::std::os::raw::c_void, + pInBuffer: *mut BYTE, + pOutBuffer: *mut BYTE, + byReset: BYTE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InitG726Encoder( + pEncMoudle: *mut *mut ::std::os::raw::c_void, + ) -> *mut ::std::os::raw::c_void; +} +extern "C" { + pub fn NET_DVR_EncodeG726Frame( + pEncMoudle: *mut ::std::os::raw::c_void, + pInBuffer: *mut BYTE, + pOutBuffer: *mut BYTE, + byReset: BYTE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ReleaseG726Encoder(pEncHandle: *mut ::std::os::raw::c_void); +} +extern "C" { + pub fn NET_DVR_ClickKey(lUserID: LONG, lKeyIndex: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_DoorBellControl(lUserID: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_Preview(lUserID: LONG, lPicNum: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PreviewOne(lUserID: LONG, lChannel: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PlayBackByNameLocDisplay( + lUserID: LONG, + sFileName: *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PlayBackByTimeLocDisplay( + lUserID: LONG, + lChannel: LONG, + lpStartTime: *const NET_DVR_TIME, + lpStopTime: *const NET_DVR_TIME, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StopLocDisplayPlay(lUserID: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PlayControlLocDisplay( + lUserID: LONG, + dwControlCode: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StartDVRRecord( + lUserID: LONG, + lChannel: LONG, + lRecordType: LONG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StopDVRRecord(lUserID: LONG, lChannel: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InitDevice_Card( + pDeviceTotalChan: *mut ::std::os::raw::c_long, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ReleaseDevice_Card() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InitDDraw_Card(hParent: HWND, colorKey: COLORREF) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ReleaseDDraw_Card() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_RealPlay_Card( + lUserID: LONG, + lpCardInfo: LPNET_DVR_CARDINFO, + lChannelNum: ::std::os::raw::c_long, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_ResetPara_Card( + lRealHandle: LONG, + lpDisplayPara: LPNET_DVR_DISPLAY_PARA, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_RefreshSurface_Card() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ClearSurface_Card() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_RestoreSurface_Card() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_OpenSound_Card(lRealHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_CloseSound_Card(lRealHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetVolume_Card(lRealHandle: LONG, wVolume: WORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_AudioPreview_Card( + lRealHandle: LONG, + bEnable: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetCardLastError_Card() -> LONG; +} +extern "C" { + pub fn NET_DVR_SetDspErrMsg_Card(dwMessage: DWORD, hWnd: HANDLE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ResetDSP_Card(iChannelNum: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetChanHandle_Card(lRealHandle: LONG) -> HANDLE; +} +extern "C" { + pub fn NET_DVR_CapturePicture_Card( + lRealHandle: LONG, + sPicFileName: *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetSerialNum_Card( + lChannelNum: ::std::os::raw::c_long, + pDeviceSerialNo: *mut DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_FindDVRLog( + lUserID: LONG, + lSelectMode: LONG, + dwMajorType: DWORD, + dwMinorType: DWORD, + lpStartTime: LPNET_DVR_TIME, + lpStopTime: LPNET_DVR_TIME, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindNextLog(lLogHandle: LONG, lpLogData: LPNET_DVR_LOG) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindLogClose(lLogHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_FindDVRLog_V30( + lUserID: LONG, + lSelectMode: LONG, + dwMajorType: DWORD, + dwMinorType: DWORD, + lpStartTime: LPNET_DVR_TIME, + lpStopTime: LPNET_DVR_TIME, + bOnlySmart: ::std::os::raw::c_int, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindNextLog_V30(lLogHandle: LONG, lpLogData: LPNET_DVR_LOG_V30) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindDVRLog_V50(lUserID: LONG, pFindCond: LPNET_DVR_FIND_LOG_COND) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindNextLog_V50(lLogHandle: LONG, lpLogData: LPNET_DVR_LOG_V50) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindLogClose_V30(lLogHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_FindAlarmHostLog( + lUserID: LONG, + lSelectMode: LONG, + lpSearchParam: *mut NET_DVR_ALARMHOST_SEARCH_LOG_PARAM, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindNextAlarmHostLog( + lFindHandle: LONG, + lpFindData: *mut NET_DVR_ALARMHOST_LOG_RET, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindAlarmHostLogClose(lFindHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_FindFile_PCNVR(lUserID: LONG, pFindCond: LPNET_DVR_FILE_COND_PCNVR) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindNextFile_PCNVR( + lFindHandle: LONG, + lpFindData: LPNET_DVR_FINDDATA_PCNVR, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindClose_PCNVR(lFindHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_FindFileByCard( + lUserID: LONG, + lChannel: LONG, + dwFileType: DWORD, + nFindType: ::std::os::raw::c_int, + sCardNumber: *mut BYTE, + lpStartTime: LPNET_DVR_TIME, + lpStopTime: LPNET_DVR_TIME, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_CaptureJPEGPicture( + lUserID: LONG, + lChannel: LONG, + lpJpegPara: LPNET_DVR_JPEGPARA, + sPicFileName: *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_CaptureJPEGPicture_NEW( + lUserID: LONG, + lChannel: LONG, + lpJpegPara: LPNET_DVR_JPEGPARA, + sJpegPicBuffer: *mut ::std::os::raw::c_char, + dwPicSize: DWORD, + lpSizeReturned: LPDWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_CapturePicture_V50( + lUserID: LONG, + lChannel: LONG, + lpPicParam: LPNET_DVR_PICPARAM_V50, + sPicBuffer: *mut ::std::os::raw::c_char, + dwPicSize: DWORD, + lpSizeReturned: LPDWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_CaptureJPEGPicture_WithAppendData( + lUserID: LONG, + lChannel: LONG, + lpJpegWithAppend: *mut NET_DVR_JPEGPICTURE_WITH_APPENDDATA, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetRealPlayOsdTime( + iRealHandle: LONG, + lpOsdTime: LPNET_DVR_TIME, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_RealPlayPause(iRealHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_RealPlayRestart(iRealHandle: LONG, hPlayWnd: HWND) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetRealPlayerIndex(lRealHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetPlayBackPlayerIndex(lPlayHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetScaleCFG(lUserID: LONG, dwScale: DWORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetScaleCFG(lUserID: LONG, lpOutScale: *mut DWORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetScaleCFG_V30( + lUserID: LONG, + pScalecfg: LPNET_DVR_SCALECFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetScaleCFG_V30( + lUserID: LONG, + pScalecfg: LPNET_DVR_SCALECFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetATMPortCFG(lUserID: LONG, wATMPort: WORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetATMPortCFG(lUserID: LONG, LPOutATMPort: *mut WORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InitDDrawDevice() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ReleaseDDrawDevice() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetDDrawDeviceTotalNums() -> LONG; +} +extern "C" { + pub fn NET_DVR_SetDDrawDevice(lPlayPort: LONG, nDeviceNum: DWORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PTZSelZoomIn( + lRealHandle: LONG, + pStruPointFrame: LPNET_DVR_POINT_FRAME, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PTZSelZoomIn_EX( + lUserID: LONG, + lChannel: LONG, + pStruPointFrame: LPNET_DVR_POINT_FRAME, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StartDecode( + lUserID: LONG, + lChannel: LONG, + lpDecoderinfo: LPNET_DVR_DECODERINFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StopDecode(lUserID: LONG, lChannel: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetDecoderState( + lUserID: LONG, + lChannel: LONG, + lpDecoderState: LPNET_DVR_DECODERSTATE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetDecInfo( + lUserID: LONG, + lChannel: LONG, + lpDecoderinfo: LPNET_DVR_DECCFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetDecInfo( + lUserID: LONG, + lChannel: LONG, + lpDecoderinfo: LPNET_DVR_DECCFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetDecTransPort( + lUserID: LONG, + lpTransPort: LPNET_DVR_PORTCFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetDecTransPort( + lUserID: LONG, + lpTransPort: LPNET_DVR_PORTCFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_DecPlayBackCtrl( + lUserID: LONG, + lChannel: LONG, + dwControlCode: DWORD, + dwInValue: DWORD, + LPOutValue: *mut DWORD, + lpRemoteFileInfo: LPNET_DVR_PLAYREMOTEFILE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StartDecSpecialCon( + lUserID: LONG, + lChannel: LONG, + lpDecChanInfo: LPNET_DVR_DECCHANINFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StopDecSpecialCon( + lUserID: LONG, + lChannel: LONG, + lpDecChanInfo: LPNET_DVR_DECCHANINFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_DecCtrlDec( + lUserID: LONG, + lChannel: LONG, + dwControlCode: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_DecCtrlScreen( + lUserID: LONG, + lChannel: LONG, + dwControl: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetDecCurLinkStatus( + lUserID: LONG, + lChannel: LONG, + lpDecStatus: LPNET_DVR_DECSTATUS, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixStartDynamic( + lUserID: LONG, + dwDecChanNum: DWORD, + lpDynamicInfo: LPNET_DVR_MATRIX_DYNAMIC_DEC, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixStopDynamic(lUserID: LONG, dwDecChanNum: DWORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetDecChanInfo( + lUserID: LONG, + dwDecChanNum: DWORD, + lpInter: LPNET_DVR_MATRIX_DEC_CHAN_INFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetLoopDecChanInfo( + lUserID: LONG, + dwDecChanNum: DWORD, + lpInter: LPNET_DVR_MATRIX_LOOP_DECINFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetLoopDecChanInfo( + lUserID: LONG, + dwDecChanNum: DWORD, + lpInter: LPNET_DVR_MATRIX_LOOP_DECINFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetLoopDecChanEnable( + lUserID: LONG, + dwDecChanNum: DWORD, + dwEnable: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetLoopDecChanEnable( + lUserID: LONG, + dwDecChanNum: DWORD, + lpdwEnable: LPDWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetLoopDecEnable( + lUserID: LONG, + lpdwEnable: LPDWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetDecChanEnable( + lUserID: LONG, + dwDecChanNum: DWORD, + dwEnable: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetDecChanEnable( + lUserID: LONG, + dwDecChanNum: DWORD, + lpdwEnable: LPDWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetDecChanStatus( + lUserID: LONG, + dwDecChanNum: DWORD, + lpInter: LPNET_DVR_MATRIX_DEC_CHAN_STATUS, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetVideoStandard( + lUserID: LONG, + dwDecChanNum: DWORD, + lpdwVideoStandard: LPDWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetVideoStandard( + lUserID: LONG, + dwDecChanNum: DWORD, + dwVideoStandard: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetTranInfo( + lUserID: LONG, + lpTranInfo: LPNET_DVR_MATRIX_TRAN_CHAN_CONFIG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetTranInfo( + lUserID: LONG, + lpTranInfo: LPNET_DVR_MATRIX_TRAN_CHAN_CONFIG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetRemotePlay( + lUserID: LONG, + dwDecChanNum: DWORD, + lpInter: LPNET_DVR_MATRIX_DEC_REMOTE_PLAY, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetRemotePlayControl( + lUserID: LONG, + dwDecChanNum: DWORD, + dwControlCode: DWORD, + dwInValue: DWORD, + LPOutValue: *mut DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetRemotePlayStatus( + lUserID: LONG, + dwDecChanNum: DWORD, + lpOuter: LPNET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixStartDynamic_V30( + lUserID: LONG, + dwDecChanNum: DWORD, + lpDynamicInfo: LPNET_DVR_PU_STREAM_CFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetLoopDecChanInfo_V30( + lUserID: LONG, + dwDecChanNum: DWORD, + lpInter: LPNET_DVR_MATRIX_LOOP_DECINFO_V30, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetLoopDecChanInfo_V30( + lUserID: LONG, + dwDecChanNum: DWORD, + lpInter: LPNET_DVR_MATRIX_LOOP_DECINFO_V30, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetDecChanInfo_V30( + lUserID: LONG, + dwDecChanNum: DWORD, + lpInter: LPNET_DVR_MATRIX_DEC_CHAN_INFO_V30, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetTranInfo_V30( + lUserID: LONG, + lpTranInfo: LPNET_DVR_MATRIX_TRAN_CHAN_CONFIG_V30, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetTranInfo_V30( + lUserID: LONG, + lpTranInfo: LPNET_DVR_MATRIX_TRAN_CHAN_CONFIG_V30, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetDisplayCfg( + lUserID: LONG, + dwDispChanNum: DWORD, + lpDisplayCfg: LPNET_DVR_VGA_DISP_CHAN_CFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetDisplayCfg( + lUserID: LONG, + dwDispChanNum: DWORD, + lpDisplayCfg: LPNET_DVR_VGA_DISP_CHAN_CFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixStartPassiveDecode( + lUserID: LONG, + dwDecChanNum: DWORD, + lpPassiveMode: LPNET_DVR_MATRIX_PASSIVEMODE, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_MatrixSendData( + lPassiveHandle: LONG, + pSendBuf: *mut ::std::os::raw::c_char, + dwBufSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixStopPassiveDecode(lPassiveHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_UploadLogo( + lUserID: LONG, + dwDispChanNum: DWORD, + lpDispLogoCfg: LPNET_DVR_DISP_LOGOCFG, + sLogoBuffer: *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_LogoSwitch( + lUserID: LONG, + dwDecChan: DWORD, + dwLogoSwitch: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetDeviceStatus( + lUserID: LONG, + lpDecoderCfg: LPNET_DVR_DECODER_WORK_STATUS, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixDiaplayControl( + lUserID: LONG, + dwDispChanNum: DWORD, + dwDispChanCmd: DWORD, + dwCmdParam: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixPassiveDecodeControl( + lUserID: LONG, + dwDecChanNum: DWORD, + lpInter: LPNET_DVR_PASSIVEDECODE_CONTROL, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetPassiveDecodeStatus(lPassiveHandle: LONG) -> LONG; +} +extern "C" { + pub fn NET_DVR_MatrixGetDecChanCfg( + lUserID: LONG, + dwDecChan: DWORD, + lpInter: LPNET_DVR_MATRIX_DECCHAN_CONTROL, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetDecChanCfg( + lUserID: LONG, + dwDecChan: DWORD, + lpInter: LPNET_DVR_MATRIX_DECCHAN_CONTROL, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PlayBackByTime_NEW( + lUserID: LONG, + lChannel: LONG, + lpStartTime: *const NET_DVR_TIME, + lpStopTime: *const NET_DVR_TIME, + lLongitude: LONG, + lLatitude: LONG, + hWnd: HWND, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_RefreshPlay(lPlayHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_RestoreConfig(lUserID: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SaveConfig(lUserID: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_RebootDVR(lUserID: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ShutDownDVR(lUserID: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetDVRConfig( + lUserID: LONG, + dwCommand: DWORD, + lChannel: LONG, + lpOutBuffer: LPVOID, + dwOutBufferSize: DWORD, + lpBytesReturned: LPDWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetDVRConfig( + lUserID: LONG, + dwCommand: DWORD, + lChannel: LONG, + lpInBuffer: LPVOID, + dwInBufferSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetDVRWorkState_V30( + lUserID: LONG, + lpWorkState: LPNET_DVR_WORKSTATE_V30, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetDVRWorkState( + lUserID: LONG, + lpWorkState: LPNET_DVR_WORKSTATE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetVideoEffect( + lUserID: LONG, + lChannel: LONG, + dwBrightValue: DWORD, + dwContrastValue: DWORD, + dwSaturationValue: DWORD, + dwHueValue: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetVideoEffect( + lUserID: LONG, + lChannel: LONG, + pBrightValue: *mut DWORD, + pContrastValue: *mut DWORD, + pSaturationValue: *mut DWORD, + pHueValue: *mut DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ClientGetframeformat( + lUserID: LONG, + lpFrameFormat: LPNET_DVR_FRAMEFORMAT, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ClientSetframeformat( + lUserID: LONG, + lpFrameFormat: LPNET_DVR_FRAMEFORMAT, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ClientGetframeformat_V30( + lUserID: LONG, + lpFrameFormat: LPNET_DVR_FRAMEFORMAT_V30, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ClientSetframeformat_V30( + lUserID: LONG, + lpFrameFormat: LPNET_DVR_FRAMEFORMAT_V30, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetAtmFrameFormat_V30( + lUserID: LONG, + lAtmChannel: LONG, + lpFrameFormat: LPNET_DVR_ATM_FRAMEFORMAT_V30, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetAtmFrameFormat_V30( + lUserID: LONG, + lAtmChannel: LONG, + lpFrameFormat: LPNET_DVR_ATM_FRAMEFORMAT_V30, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetAtmProtocol( + lUserID: LONG, + lpAtmProtocol: LPNET_DVR_ATM_PROTOCOL, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetAlarmOut_V30( + lUserID: LONG, + lpAlarmOutState: LPNET_DVR_ALARMOUTSTATUS_V30, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetAlarmOut( + lUserID: LONG, + lpAlarmOutState: LPNET_DVR_ALARMOUTSTATUS, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetAlarmOut( + lUserID: LONG, + lAlarmOutPort: LONG, + lAlarmOutStatic: LONG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ClientSetVideoEffect( + lRealHandle: LONG, + dwBrightValue: DWORD, + dwContrastValue: DWORD, + dwSaturationValue: DWORD, + dwHueValue: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ClientGetVideoEffect( + lRealHandle: LONG, + pBrightValue: *mut DWORD, + pContrastValue: *mut DWORD, + pSaturationValue: *mut DWORD, + pHueValue: *mut DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetConfigFile( + lUserID: LONG, + sFileName: *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetConfigFile( + lUserID: LONG, + sFileName: *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetConfigFile_V30( + lUserID: LONG, + sOutBuffer: *mut ::std::os::raw::c_char, + dwOutSize: DWORD, + pReturnSize: *mut DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetConfigFile_EX( + lUserID: LONG, + sOutBuffer: *mut ::std::os::raw::c_char, + dwOutSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetConfigFile_EX( + lUserID: LONG, + sInBuffer: *mut ::std::os::raw::c_char, + dwInSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetLogToFile( + nLogLevel: DWORD, + strLogDir: *mut ::std::os::raw::c_char, + bAutoDel: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetSDKState(pSDKState: LPNET_DVR_SDKSTATE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetSDKAbility(pSDKAbl: LPNET_DVR_SDKABL) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetPTZProtocol( + lUserID: LONG, + pPtzcfg: *mut NET_DVR_PTZCFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetPTZCtrl_Other(iUserID: LONG, iChannel: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetPTZCtrl(iRealHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_LockPanel(lUserID: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_UnLockPanel(lUserID: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StartPanelKey(lUserID: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StopPanelKey(lUserID: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetRtspConfig( + lUserID: LONG, + dwCommand: DWORD, + lpInBuffer: LPNET_DVR_RTSPCFG, + dwInBufferSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetRtspConfig( + lUserID: LONG, + dwCommand: DWORD, + lpOutBuffer: LPNET_DVR_RTSPCFG, + dwOutBufferSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetDeviceAbility( + lUserID: LONG, + dwAbilityType: DWORD, + pInBuf: *mut ::std::os::raw::c_char, + dwInLength: DWORD, + pOutBuf: *mut ::std::os::raw::c_char, + dwOutLength: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetSimAbilityPath( + szSimAbilityPath: *mut ::std::os::raw::c_char, + szSDCard: *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetSubSystemInfo( + lUserID: LONG, + lpInter: LPNET_DVR_ALLSUBSYSTEMINFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetSubSystemInfo( + lUserID: LONG, + lpInter: LPNET_DVR_ALLSUBSYSTEMINFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetCodeSplitter( + lUserID: LONG, + dwCodeChan: DWORD, + lpInter: LPNET_DVR_CODESPLITTERINFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetCodeSplitter( + lUserID: LONG, + dwCodeChan: DWORD, + lpInter: LPNET_DVR_CODESPLITTERINFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetBehaviorParamKey( + lUserID: LONG, + lChannel: LONG, + dwParameterKey: DWORD, + nValue: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetBehaviorParamKey( + lUserID: LONG, + lChannel: LONG, + dwParameterKey: DWORD, + pValue: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetVCADrawMode( + lUserID: LONG, + lChannel: LONG, + lpDrawMode: LPNET_VCA_DRAW_MODE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetVCADrawMode( + lUserID: LONG, + lChannel: LONG, + lpDrawMode: LPNET_VCA_DRAW_MODE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetTrackMode( + lUserID: LONG, + lChannel: LONG, + lpTrackMode: LPNET_DVR_TRACK_MODE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetTrackMode( + lUserID: LONG, + lChannel: LONG, + lpTrackMode: LPNET_DVR_TRACK_MODE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_VCA_RestartLib(lUserID: LONG, lChannel: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SaveRealData_V30( + lRealHandle: LONG, + dwTransType: DWORD, + sFileName: *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_EncodeG711Frame( + iType: DWORD, + pInBuffer: *mut BYTE, + pOutBuffer: *mut BYTE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_DecodeG711Frame( + iType: DWORD, + pInBuffer: *mut BYTE, + pOutBuffer: *mut BYTE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_FindFileByEvent( + lUserID: LONG, + lpSearchEventParam: LPNET_DVR_SEARCH_EVENT_PARAM, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindFileByEvent_V40( + lUserID: LONG, + lpSearchEventParam: LPNET_DVR_SEARCH_EVENT_PARAM_V40, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindFileByEvent_V50( + lUserID: LONG, + lpSearchEventParam: LPNET_DVR_SEARCH_EVENT_PARAM_V50, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindNextEvent( + lSearchHandle: LONG, + lpSearchEventRet: LPNET_DVR_SEARCH_EVENT_RET, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindNextEvent_V40( + lSearchHandle: LONG, + lpSearchEventRet: LPNET_DVR_SEARCH_EVENT_RET_V40, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindNextEvent_V50( + lFindHandle: LONG, + lpSearchEventRet: LPNET_DVR_SEARCH_EVENT_RET_V50, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindPDCInfo( + lUserID: LONG, + lChannel: LONG, + lpStartTime: LPNET_DVR_TIME, + lpStopTime: LPNET_DVR_TIME, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindNextPDCInfo(lFindHandle: LONG, lpFindData: LPNET_DVR_PDC_QUERY) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindPDCClose(lFindHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_VerifyCalibration( + lUserID: LONG, + dwCommand: DWORD, + lChannel: LONG, + lpInBuffer: LPVOID, + dwInBufferSize: DWORD, + lpOuterBuffer: LPVOID, + dwOuterBufferSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ResetCounter(lUserID: LONG, lChannel: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetPtzPosition( + lUserID: LONG, + lChannel: LONG, + lPositionID: LONG, + lpPtzPosition: LPNET_DVR_PTZ_POSITION, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetPtzPosition( + lUserID: LONG, + lChannel: LONG, + lPositionID: LONG, + lpPtzPosition: LPNET_DVR_PTZ_POSITION, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetPatrolTrack( + lUserID: LONG, + lChannel: LONG, + lPatrolIndex: LONG, + lpPatrolTrack: LPNET_DVR_PATROL_TRACKCFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetPatrolTrack( + lUserID: LONG, + lChannel: LONG, + lPatrolIndex: LONG, + lpPatrolTrack: LPNET_DVR_PATROL_TRACKCFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_FindNextLog_MATRIX(lLogHandle: LONG, lpLogData: LPNET_DVR_LOG_MATRIX) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindDVRLog_Matrix( + lUserID: LONG, + lSelectMode: LONG, + dwMajorType: DWORD, + dwMinorType: DWORD, + lpVedioPlatLog: LPNET_DVR_VEDIOPLATLOG, + lpStartTime: LPNET_DVR_TIME, + lpStopTime: LPNET_DVR_TIME, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_ManualSnap( + lUserID: LONG, + lpInter: *const NET_DVR_MANUALSNAP, + lpOuter: LPNET_DVR_PLATE_RESULT, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ContinuousShoot( + lUserID: LONG, + lpInter: LPNET_DVR_SNAPCFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetPTZProtocol_Ex( + lUserID: LONG, + lChannel: LONG, + pPtzcfg: *mut NET_DVR_PTZCFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StartEmailTest(lUserID: LONG) -> LONG; +} +extern "C" { + pub fn NET_DVR_StopEmailTest(lEmailTestHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetEmailTestProgress( + lEmailTestHandle: LONG, + pState: *mut DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetIPCProtoList( + lUserID: LONG, + lpProtoList: LPNET_DVR_IPC_PROTO_LIST, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetIPCProtoList_V41( + lUserID: LONG, + lpProtoList: LPNET_DVR_IPC_PROTO_LIST_V41, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SmartSearch( + lUserID: LONG, + lpSmartSearchParam: LPNET_DVR_SMART_SEARCH_PARAM, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_SmartSearch_V40( + lUserID: LONG, + lpSmartSearchParam: LPNET_DVR_SMART_SEARCH_PARAM_V40, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_SearchNextInfo( + lSearchHandle: LONG, + lpSmartSearchRet: LPNET_DVR_SMART_SEARCH_RET, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_StopSearch(lSearchHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_FindIpSanDirectory( + lUserID: LONG, + lpIpsanSearchParam: LPNET_DVR_IPSAN_SERACH_PARAM, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindNextDirectory( + lFindHandle: LONG, + lpFindData: LPNET_DVR_IPSAN_SERACH_RET, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindDirectoryClose(lFindHandle: LONG) -> ::std::os::raw::c_int; +} +pub type REALDATACALLBACK = ::std::option::Option< + unsafe extern "C" fn( + lPlayHandle: LONG, + dwDataType: DWORD, + pBuffer: *mut BYTE, + dwBufSize: DWORD, + pUser: *mut ::std::os::raw::c_void, + ), +>; +extern "C" { + pub fn NET_DVR_ZeroStartPlay( + lUserID: LONG, + lpClientInfo: LPNET_DVR_CLIENTINFO, + fRealDataCallBack_V30: REALDATACALLBACK, + pUser: *mut ::std::os::raw::c_void, + bBlocked: ::std::os::raw::c_int, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_ZeroStopPlay(lPlayHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ZeroMakeKeyFrame(lUserID: LONG, lZeroChan: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PlayBackControl_V40( + lPlayHandle: LONG, + dwControlCode: DWORD, + lpInBuffer: LPVOID, + dwInLen: DWORD, + lpOutBuffer: LPVOID, + lpOutLen: *mut DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ZeroTurnOver( + lUserID: LONG, + lChannel: LONG, + bNextPreview: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_RealPlay_Card_V30( + lUserID: LONG, + lpCardInfo: *const NET_DVR_CARDINFO, + lChannelNum: LONG, + dwMode: DWORD, + bBlock: ::std::os::raw::c_int, + fRealDataCallBack_V30: REALDATACALLBACK, + pUser: *mut ::std::os::raw::c_void, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_GetDiskList( + lUserID: LONG, + lpDiskList: LPNET_DVR_DISKABILITY_LIST, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_Backup( + lUserID: LONG, + dwBackupType: DWORD, + lpBackupBuff: LPVOID, + dwBackupBuffSize: DWORD, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_BackupByName(lUserID: LONG, lpBackupByName: LPNET_DVR_BACKUP_NAME_PARAM) + -> LONG; +} +extern "C" { + pub fn NET_DVR_BackupByTime(lUserID: LONG, lpBackupBytime: LPNET_DVR_BACKUP_TIME_PARAM) + -> LONG; +} +extern "C" { + pub fn NET_DVR_GetBackupProgress(lHandle: LONG, pState: *mut DWORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StopBackup(lHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetSadpInfoList( + lUserID: LONG, + lpSadpInfoList: LPNET_DVR_SADPINFO_LIST, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_UpdateSadpInfo( + lUserID: LONG, + lpSadpVerify: LPNET_DVR_SADP_VERIFY, + lpSadpInfo: LPNET_DVR_SADPINFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetSubDecSystemJoinInfo( + lUserID: LONG, + lpInter: LPNET_DVR_ALLDECSUBSYSTEMJOININFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetCodeSplitterAssociate( + lUserID: LONG, + dwDecoderChan: DWORD, + dwSlotNum: DWORD, + lpInter: LPNET_DVR_CODESPLITTERASSOCIATE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetCodeSplitterAssociate( + lUserID: LONG, + dwDecoderChan: DWORD, + dwSlotNum: DWORD, + lpInter: LPNET_DVR_CODESPLITTERASSOCIATE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestGetCDRWScheme( + lUserID: LONG, + lpCDRWCfg: LPNET_DVR_INQUEST_CDRW_CFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestSetCDRWScheme( + lUserID: LONG, + lpCDRWCfg: LPNET_DVR_INQUEST_CDRW_CFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestDeleteFile( + lUserID: LONG, + lpDeleteFile: LPNET_DVR_INQUEST_FILES, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestCDWByFile( + lUserID: LONG, + lpCdrwFile: LPNET_DVR_INQUEST_FILES, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestUploadFile(lUserID: LONG, sFileName: *mut ::std::os::raw::c_char) + -> LONG; +} +extern "C" { + pub fn NET_DVR_InquestUploadClose(lUploadHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestGetUploadState(lUploadHandle: LONG, pProgress: LPDWORD) -> LONG; +} +extern "C" { + pub fn NET_DVR_InquestStartCDW( + lUserID: LONG, + bPause: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestStopCDW( + lUserID: LONG, + bCancelWrite: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestGetCDWState( + lUserID: LONG, + pStatus: LPNET_DVR_INQUEST_CDRW_STATUS, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestGetPIPStatus( + lUserID: LONG, + pStatus: LPNET_DVR_INQUEST_PIP_STATUS, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestSetPIPStatus( + lUserID: LONG, + pStatus: LPNET_DVR_INQUEST_PIP_STATUS, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestCheckSecretKey( + lUserID: LONG, + bSecretSet: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestSetSecretKey( + lUserID: LONG, + pSecretInfo: LPNET_DVR_INQUEST_SECRET_INFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestStreamEncrypt( + lUserID: LONG, + lChannel: LONG, + bEncrypt: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestGetEncryptState( + lUserID: LONG, + lChannel: LONG, + bEncrypt: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestFindFile(lUserID: LONG) -> LONG; +} +extern "C" { + pub fn NET_DVR_InquestFindNextFile( + lFindHandle: LONG, + lpFindData: LPNET_DVR_INQUEST_FILEINFO, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_InquestFindClose(lFindHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_RaidFastConfig(lUserID: LONG, sName: *mut ::std::os::raw::c_char) -> LONG; +} +extern "C" { + pub fn NET_DVR_FastConfigProcess(lHandle: LONG, pState: *mut DWORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_CloseFastConfig(lHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetArraySpaceAlloc( + lUserID: LONG, + dwSlot: DWORD, + lpOutBuf: LPNET_DVR_ARRAY_SPACE_ALLOC_INFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_DelArray(lUserID: LONG, dwID: DWORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_CreateArray( + lUserID: LONG, + lpArrayParam: LPNET_DVR_OPERATE_ARRAY_PARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_CalcArraySize( + lUserID: LONG, + lpArrayParam: LPNET_DVR_OPERATE_ARRAY_PARAM, + lpArraySize: *mut UINT64, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MigrateArray( + lUserID: LONG, + lpArrayParam: LPNET_DVR_OPERATE_ARRAY_PARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_RebuildArray( + lUserID: LONG, + lpArrayParam: LPNET_DVR_OPERATE_ARRAY_PARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_CreateVD( + lUserID: LONG, + lpVDParam: LPNET_DVR_OPERATE_VD_PARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_CreateVDEx( + lUserID: LONG, + lpVDParamEx: LPNET_DVR_OPERATE_VD_PARAM_EX, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_DelVD(lUserID: LONG, dwID: DWORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_RepairVD(lUserID: LONG, dwID: DWORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetSpareDisk( + lUserID: LONG, + lpSpareDisk: LPNET_DVR_SPARE_DISK_PARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetPDList( + lUserID: LONG, + lpPDList: LPNET_DVR_PHY_DISK_LIST, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetArrayList( + lUserID: LONG, + lpArrayList: LPNET_DVR_ARRAY_LIST, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetVDList(lUserID: LONG, lpVDList: LPNET_DVR_VD_LIST) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ExpandDisk(lUserID: LONG, dwVDSLot: DWORD) -> LONG; +} +extern "C" { + pub fn NET_DVR_GetExpandProgress( + lExpandHandle: LONG, + pState: *mut DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_CloseExpandHandle(lExpandHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_AlgoDebugStart( + lUserID: LONG, + lCHannel: LONG, + fAlgoLibInfoCallBack: ::std::option::Option< + unsafe extern "C" fn( + lHandle: LONG, + lChannel: LONG, + pRecvDataBuffer: *mut ::std::os::raw::c_char, + dwBufSize: DWORD, + pUser: *mut ::std::os::raw::c_void, + ), + >, + pUser: *mut ::std::os::raw::c_void, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_AlgoDebugSend( + lHandle: LONG, + lChannel: LONG, + pSendBuf: *mut ::std::os::raw::c_char, + dwBufSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_AlgoDebugStop(lHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetLogPrint(bLogPrint: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetLogPrintAction( + nLogLevel: DWORD, + nToDevice: DWORD, + bEnable: ::std::os::raw::c_int, + Reserve1: ::std::os::raw::c_int, + Reserve2: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetPositionRule( + lUserID: LONG, + lChannel: LONG, + lPositionIndex: LONG, + lpPositionRule: LPNET_DVR_POSITION_RULE_CFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetPositionRule_V41( + lUserID: LONG, + lChannel: LONG, + lPositionIndex: LONG, + lpPositionRule: LPNET_DVR_POSITION_RULE_CFG_V41, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetPositionRule( + lUserID: LONG, + lChannel: LONG, + lPositionIndex: LONG, + lpPositionRule: LPNET_DVR_POSITION_RULE_CFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetPositionRule_V41( + lUserID: LONG, + lChannel: LONG, + lPositionIndex: LONG, + lpPositionRule: LPNET_DVR_POSITION_RULE_CFG_V41, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetPositionLimitAngle( + lUserID: LONG, + lChannel: LONG, + lPositionIndex: LONG, + lpLimitAngle: LPNET_DVR_LIMIT_ANGLE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetPositionLimitAngle( + lUserID: LONG, + lChannel: LONG, + lPositionIndex: LONG, + lpLimitAngle: LPNET_DVR_LIMIT_ANGLE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetPatrolLimitAngle( + lUserID: LONG, + lChannel: LONG, + lPatrolIndex: LONG, + lpLimitAngle: LPNET_DVR_LIMIT_ANGLE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetPatrolLimitAngle( + lUserID: LONG, + lChannel: LONG, + lPatrolIndex: LONG, + lpLimitAngle: LPNET_DVR_LIMIT_ANGLE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetSceneMode( + lUserID: LONG, + lChannel: LONG, + dwSceneMode: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetSceneMode( + lUserID: LONG, + lChannel: LONG, + pSceneMode: *mut DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetVCAVersion( + lUserID: LONG, + lChannel: LONG, + lpVersion: LPNET_DVR_VCA_VERSION, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixPicAdjust( + lUserID: LONG, + dwDispChan: DWORD, + dwPicAdjust: DWORD, + dwCmdParam: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_AlarmJoinedRecord( + lUserID: LONG, + dwChan: DWORD, + dwAlarmSeq: DWORD, + dwRecordTime: DWORD, + dwRes: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetUnitedMatrixInfo( + lUserID: LONG, + lpInter: LPNET_DVR_UNITEDMATRIXINFO, + ) -> ::std::os::raw::c_int; +} +pub type REGCallBack = ::std::option::Option< + unsafe extern "C" fn( + lUserID: LONG, + pRegCallbackParam: LPNET_DVR_REGCALLBACKPARAM, + pInterParam: LPNET_DVR_LOGONREPONSEPARAM, + pUser: *mut ::std::os::raw::c_void, + ) -> LONG, +>; +extern "C" { + pub fn NET_DVR_SetRegisterCallBack( + fRegCallBack: REGCallBack, + pUser: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PreviewRequest( + lUserID: LONG, + lChannel: LONG, + lpPreviewParam: LPNET_DVR_PREVIEWPARAM, + lpOuter: LPNET_DVR_DEVICENATINFO, + ) -> ::std::os::raw::c_int; +} +pub type PREVIEWRESPONSECallBack = ::std::option::Option< + unsafe extern "C" fn( + lUserID: LONG, + lStreamHandle: LONG, + pPewviewCallbackParam: LPNET_DVR_PREVIEWCALLBACKPARAM, + pUser: *mut ::std::os::raw::c_void, + ) -> LONG, +>; +extern "C" { + pub fn NET_DVR_SetPreviewResponseCallBack( + fPreviewResponseCallBack: PREVIEWRESPONSECallBack, + pUser: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PlaybackRequest( + lUserID: LONG, + lpPlayBackRequestParam: LPNET_DVR_PLAYBACKREQUESTPARAM, + ) -> ::std::os::raw::c_int; +} +pub type PLAYBACKRESPONSECallBack = ::std::option::Option< + unsafe extern "C" fn( + lUserID: LONG, + lPlaybackHandle: LONG, + lpPlaybackParam: LPNET_DVR_PLAYBACKCALLBACKPARAM, + pUser: *mut ::std::os::raw::c_void, + ) -> LONG, +>; +extern "C" { + pub fn NET_DVR_SetPlaybackResponseCallBack( + fPlaybackResponseCallBack: PLAYBACKRESPONSECallBack, + pUser: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +pub type VOICERESPONSECallBack = ::std::option::Option< + unsafe extern "C" fn( + lUserID: LONG, + lVoiceHandle: LONG, + lVoiceChannel: LONG, + nAudioType: BYTE, + pUser: *mut ::std::os::raw::c_void, + ) -> LONG, +>; +extern "C" { + pub fn NET_DVR_SetVoiceResponseCallBack( + fVoiceResponseCallBack: VOICERESPONSECallBack, + pUser: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_VoiceRequest( + lUserID: LONG, + lpVoiceParam: LPNET_DVR_VOICEREQUESTPARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_AlarmSetupRequest( + lUserID: LONG, + lpAlarmSetupParam: LPNET_DVR_ALARMSETUPREQUESTPARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetDialParam( + lUserID: LONG, + lpDialRequest: LPNET_DVR_DIALREQUEST, + lpDialParam: LPNET_DVR_DIALPARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetDialParam( + lUserID: LONG, + lpDialRequest: LPNET_DVR_DIALREQUEST, + lpDialParam: LPNET_DVR_DIALPARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetSmsListInfo( + lUserID: LONG, + lpStartTime: LPNET_DVR_TIME_EX, + lpStopTime: LPNET_DVR_TIME_EX, + lpSmsListInfo: LPNET_DVR_SMSLISTINFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetSmsContent( + lUserID: LONG, + dwSmsIndex: DWORD, + lpSmsContent: LPNET_DVR_SMSCONTENT, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SendSms( + lUserID: LONG, + lpSmsContent: LPNET_DVR_SMSCONTENT, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StartServer( + sLocalIP: *mut ::std::os::raw::c_char, + wLocalPort: WORD, + byMode: BYTE, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_StopServer(lServerHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StartRecvNakedDataListen( + type_: NAKED_DATA_TYPE, + pParams: LPNET_DVR_NAKED_DATA_PARAM, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_StopRecvNakedDataListen(lNakedDataRecvHandle: LONG) -> ::std::os::raw::c_int; +} +pub type NAKEDDAtACALLBACK = ::std::option::Option< + unsafe extern "C" fn( + typeInfo: DWORD, + pInfo: *mut ::std::os::raw::c_char, + dwInfoLen: DWORD, + dwIPLen: DWORD, + pUser: *mut ::std::os::raw::c_void, + ), +>; +extern "C" { + pub fn NET_DVR_SetNakedDataRecvCallBack( + lNakedDataRecvHandle: LONG, + fNakedDataCallBack: ::std::option::Option< + unsafe extern "C" fn( + dwTypeInfo: DWORD, + pStruNakedDataInfo: *mut NET_DVR_NAKED_DATA_INFO, + pInfo: *mut ::std::os::raw::c_char, + dwInfoLen: DWORD, + pUser: *mut ::std::os::raw::c_void, + ), + >, + pUser: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +pub type ALARMSETUPRESPONSECallBack = ::std::option::Option< + unsafe extern "C" fn( + lUserID: LONG, + lAlarmHandle: LONG, + pUser: *mut ::std::os::raw::c_void, + ) -> LONG, +>; +extern "C" { + pub fn NET_DVR_SetAlarmSetupResponseCallBack( + fAlarmSetupResponseCallBack: ALARMSETUPRESPONSECallBack, + pUser: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SpringJPEGPicture( + lUserID: LONG, + lChannel: LONG, + lpJpegPara: *const NET_DVR_PUSHJPEGPARA, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetPushModeParam(pPushParam: LPNET_DVR_PUSHMODEPARAM) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_AlarmHostSetupAlarmChan( + lUserID: LONG, + lpInter: *mut NET_DVR_ALARMIN_SETUP, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_AlarmHostCloseAlarmChan( + lUserID: LONG, + lpInter: *mut NET_DVR_ALARMIN_SETUP, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_BypassAlarmChan( + lUserID: LONG, + lpInter: *mut NET_DVR_ALARMIN_SETUP, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_UnBypassAlarmChan( + lUserID: LONG, + lpInter: *mut NET_DVR_ALARMIN_SETUP, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_AlarmHostAssistantControl( + lUserID: LONG, + dwType: DWORD, + dwNumber: DWORD, + dwCmdParam: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetAirCondition( + lUserID: LONG, + l485Index: LONG, + lpAirConditionParam: *mut NET_DVR_AIR_CONDITION_PARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetAirCondition( + lUserID: LONG, + l485Index: LONG, + lpAirConditionParam: *mut NET_DVR_AIR_CONDITION_PARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetDeviceTypeList( + lUserID: LONG, + lpDeviceTypeList: *mut NET_DVR_DEVICE_TYPE_LIST, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetDeviceProtoList( + lUserID: LONG, + lDeviceType: LONG, + lpDeviceProtoList: *mut NET_DVR_DEVICE_PROTO_LIST, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetBatteryVoltage(lUserID: LONG, pVoltage: *mut f32) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetAlarmDeviceUser( + lUserID: LONG, + lUserIndex: LONG, + lpDeviceUser: *mut NET_DVR_ALARM_DEVICE_USER, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetAlarmDeviceUser( + lUserID: LONG, + lUserIndex: LONG, + lpDeviceUser: *mut NET_DVR_ALARM_DEVICE_USER, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetKeyboardUser( + lUserID: LONG, + lUserIndex: LONG, + lpKeyboardUser: *mut NET_DVR_KEYBOARD_USER, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetKeyboardUser( + lUserID: LONG, + lUserIndex: LONG, + lpKeyboardUser: *mut NET_DVR_KEYBOARD_USER, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetOperateUser( + lUserID: LONG, + lUserIndex: LONG, + lpOperateUser: *mut NET_DVR_OPERATE_USER, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetOperateUser( + lUserID: LONG, + lUserIndex: LONG, + lpOperateUser: *mut NET_DVR_OPERATE_USER, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ControlGateway( + lUserID: LONG, + lGatewayIndex: LONG, + dwStaic: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetAlarmHostOut( + lUserID: LONG, + lAlarmOutPort: LONG, + lAlarmOutStatic: LONG, + ) -> ::std::os::raw::c_int; +} +pub type fAlarmHostSerialDataCallBack = ::std::option::Option< + unsafe extern "C" fn( + lSerialHandle: LONG, + lPort: LONG, + lDateType: LONG, + pRecvDataBuffer: *mut ::std::os::raw::c_char, + dwBufSize: DWORD, + pUser: *mut ::std::os::raw::c_void, + ), +>; +extern "C" { + pub fn NET_DVR_AlarmHostSerialStart( + lUserID: LONG, + lSerialType: LONG, + cbSerialDataCallBack: fAlarmHostSerialDataCallBack, + pUser: *mut ::std::os::raw::c_void, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_AlarmHostSerialSend( + lSerialHandle: LONG, + lPort: LONG, + pSendBuf: *mut ::std::os::raw::c_char, + dwBufSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_AlarmHostSerialStop(lSerialHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetMatrixPuChan( + lUserID: LONG, + lChanType: LONG, + lpChanList: *mut NET_DVR_PU_CHAN_LIST, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixAlarmOffMonitor( + lUserID: LONG, + dwMonID: DWORD, + dwCamID: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetCameraListInfo( + lUserID: LONG, + dwCamNum: DWORD, + dwStartCam: DWORD, + lpCamListInfo: LPNET_DVR_MATRIX_CAMERALIST, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetMonitorListInfo( + lUserID: LONG, + dwMonNum: DWORD, + dwStartMon: DWORD, + lpMonListInfo: LPNET_DVR_MATRIX_MONITORLIST, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetGlobalNum( + lUserID: LONG, + dwCamNum: *mut DWORD, + dwMonNum: *mut DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetUnitedMatrixInfo( + lUserID: LONG, + lpInter: LPNET_DVR_ALLUNITEDMATRIXINFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetUnitedMatrixInfo( + lUserID: LONG, + lpInter: LPNET_DVR_ALLUNITEDMATRIXINFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetGatewayInfo( + lUserID: LONG, + lpInter: LPNET_DVR_MATRIXGATEWAYINFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetGatewayInfo( + lUserID: LONG, + lpInter: LPNET_DVR_MATRIXGATEWAYINFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSpanSwitch( + lUserID: LONG, + nSwitchMode: BYTE, + lpInter: LPNET_DVR_MATRIXSWITCH, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixStartSwitch( + lUserID: LONG, + lpInter: LPNET_DVR_MATRIXSWITCHCTRL, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetConfigFile( + lUserID: LONG, + lpInter: LPNET_DVR_MATRIXDATABASE, + sInBuffer: *mut ::std::os::raw::c_char, + dwInSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetConfigFile( + lUserID: LONG, + lpInter: LPNET_DVR_MATRIXDATABASE, + sOutBuffer: *mut ::std::os::raw::c_char, + dwOutSize: DWORD, + pReturnSize: *mut DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetSubSystemInfo_V40( + lUserID: LONG, + lpInter: LPNET_DVR_ALLSUBSYSTEMINFO_V40, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetSubSystemInfo_V40( + lUserID: LONG, + lpInter: LPNET_DVR_ALLSUBSYSTEMINFO_V40, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetSubDecSystemJoinInfo_V40( + lUserID: LONG, + lpInter: LPNET_DVR_ALLDECSUBSYSTEMJOININFO_V40, + ) -> ::std::os::raw::c_int; +} +pub type FLOWTESTCALLBACK = ::std::option::Option< + unsafe extern "C" fn( + lFlowHandle: LONG, + pFlowInfo: LPNET_DVR_FLOW_INFO, + pUser: *mut ::std::os::raw::c_void, + ), +>; +extern "C" { + pub fn NET_DVR_StartNetworkFlowTest( + lUserID: LONG, + pFlowTest: *mut NET_DVR_FLOW_TEST_PARAM, + fFlowTestCallback: FLOWTESTCALLBACK, + pUser: *mut ::std::os::raw::c_void, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_StopNetworkFlowTest(lHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_FindRecordLabel(lUserID: LONG, lpFindLabel: LPNET_DVR_FIND_LABEL) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindNextLabel(lFindHandle: LONG, lpFindData: LPNET_DVR_FINDLABEL_DATA) -> LONG; +} +extern "C" { + pub fn NET_DVR_StopFindLabel(lFindHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InsertRecordLabel( + lPlayHandle: LONG, + lpRecordLabel: *mut NET_DVR_RECORD_LABEL, + lpLableIdentify: *mut NET_DVR_LABEL_IDENTIFY, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_DelRecordLabel( + lUserID: LONG, + lpDelLabelParam: *mut NET_DVR_DEL_LABEL_PARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ModifyRecordLabel( + lUserID: LONG, + lpModLabelParam: *mut NET_DVR_MOD_LABEL_PARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_CapturePlaybackPictureBlock( + lPlayHandle: LONG, + sPicFileName: *mut ::std::os::raw::c_char, + dwTimeOut: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_CapturePlaybackPictureBlock_New( + lPlayHandle: LONG, + pPicBuf: *mut ::std::os::raw::c_char, + dwPicSize: DWORD, + lpSizeReturned: *mut DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_FindPicture(lUserID: LONG, pFindParam: *mut NET_DVR_FIND_PICTURE_PARAM) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindNextPicture(lFindHandle: LONG, lpFindData: LPNET_DVR_FIND_PICTURE) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindNextPicture_V40( + lFindHandle: LONG, + lpFindData: LPNET_DVR_FIND_PICTURE_V40, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindNextPicture_V50( + lFindHandle: LONG, + lpFindData: LPNET_DVR_FIND_PICTURE_V50, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_CloseFindPicture(lFindHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetPicture( + lUserID: LONG, + sDVRFileName: *mut ::std::os::raw::c_char, + sSavedFileName: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetPicture_V30( + lUserID: LONG, + sDVRFileName: *mut ::std::os::raw::c_char, + sSavedFileBuf: *mut ::std::os::raw::c_char, + dwBufLen: DWORD, + lpdwRetLen: *mut DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetPicture_V50( + lUserID: LONG, + lpPicParam: LPNET_DVR_PIC_PARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_BackupPicture( + lUserID: LONG, + lpBackupPicture: *mut NET_DVR_BACKUP_PICTURE_PARAM, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_GetUpgradeStep(lUpgradeHandle: LONG, pSubProgress: *mut LONG) -> LONG; +} +extern "C" { + pub fn NET_DVR_MatrixGetEncodeJoint( + lUserID: LONG, + lChannel: LONG, + lpEncodeJoint: LPNET_DVR_ENCODE_JOINT_PARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetLocalIP( + strIP: *mut [::std::os::raw::c_char; 16usize], + pValidNum: *mut DWORD, + pEnableBind: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetValidIP( + dwIPIndex: DWORD, + bEnableBind: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetLocalIPv6( + strIP: *mut [BYTE; 16usize], + pValidNum: *mut DWORD, + pEnableBind: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetValidIPv6( + dwIPIndex: DWORD, + bEnableBind: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetVcaDevWorkState( + lUserID: LONG, + lpWorkState: LPNET_DVR_VCA_DEV_WORKSTATUS, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetRecvTimeOut(nRecvTimeOut: DWORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetDisplayCfg_V40( + lUserID: LONG, + dwDispChanNum: DWORD, + lpDisplayCfg: LPNET_DVR_VGA_DISP_CHAN_CFG_V40, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetDisplayCfg_V40( + lUserID: LONG, + dwDispChanNum: DWORD, + lpDisplayCfg: LPNET_DVR_VGA_DISP_CHAN_CFG_V40, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ShutterCompensation(lUserID: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_CorrectDeadPixel( + lUserID: LONG, + lChannel: LONG, + lpInParam: LPNET_DVR_CORRECT_DEADPIXEL_PARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_CustomConfig( + lUserID: LONG, + lChannel: LONG, + lpInBuffer: LPVOID, + dwInBufferSize: DWORD, + lpOutBuffer: LPVOID, + dwOutBufferSize: DWORD, + lpBytesReturned: LPDWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetHistoricDataInfo( + lUserID: LONG, + lChannel: LONG, + lpHisData: LPNET_DVR_HISTORICDATACFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetHistoricData( + lUserID: LONG, + lChannel: LONG, + lpOuter: LPNET_DVR_PLATE_RESULT, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ClearHistoricData(lUserID: LONG, lChannel: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_VPD_SetShutter( + lUserID: LONG, + lChannel: LONG, + lpShutter: LPNET_VPD_SHUTTER, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_VPD_SendPicture( + lUserID: LONG, + dwFields: DWORD, + sImageBuffer: *const BYTE, + dwWidth: DWORD, + dwHeight: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestUploadFile_V30( + lUserID: LONG, + lpInquestRoom: LPNET_DVR_INQUEST_ROOM, + sFileName: *mut ::std::os::raw::c_char, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_InquestDeleteFile_V30( + lUserID: LONG, + lpInquestRoom: LPNET_DVR_INQUEST_ROOM, + lpDeleteFile: LPNET_DVR_INQUEST_FILES, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestGetPIPStatus_V30( + lUserID: LONG, + lpInquestRoom: LPNET_DVR_INQUEST_ROOM, + lpStatus: LPNET_DVR_INQUEST_PIP_STATUS, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestSetPIPStatus_V30( + lUserID: LONG, + lpInquestRoom: LPNET_DVR_INQUEST_ROOM, + lpStatus: LPNET_DVR_INQUEST_PIP_STATUS, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestGetPIPStatus_V40( + lUserID: LONG, + lpInquestRoom: *const NET_DVR_INQUEST_ROOM, + lpStatus: LPNET_DVR_INQUEST_PIP_STATUS_V40, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestSetPIPStatus_V40( + lUserID: LONG, + lpInquestRoom: *const NET_DVR_INQUEST_ROOM, + lpStatus: LPNET_DVR_INQUEST_PIP_STATUS_V40, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestGetSystemInfo( + lUserID: LONG, + lpSystemInfo: LPNET_DVR_INQUEST_SYSTEM_INFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestSetSystemInfo( + lUserID: LONG, + lpSystemInfo: LPNET_DVR_INQUEST_SYSTEM_INFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestSendMessage( + lUserID: LONG, + lpInquestRoom: LPNET_DVR_INQUEST_ROOM, + lpInquestMessage: LPNET_DVR_INQUEST_MESSAGE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestStartCDW_V30( + lUserID: LONG, + lpInquestRoom: LPNET_DVR_INQUEST_ROOM, + bNotBurn: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestStopCDW_V30( + lUserID: LONG, + lpInquestRoom: LPNET_DVR_INQUEST_ROOM, + bCancelWrite: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestGetCDWState_V30( + lUserID: LONG, + lpInquestRoom: LPNET_DVR_INQUEST_ROOM, + pStatus: LPNET_DVR_INQUEST_CDRW_STATUS, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestResumeEvent( + lUserID: LONG, + lpResumeEvent: LPNET_DVR_INQUEST_RESUME_EVENT, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_InquestGetResumeProgress( + lHandle: LONG, + pState: *mut DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestStopResume(lHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquestFindFile_V30(lUserID: LONG, pInquestRoom: LPNET_DVR_INQUEST_ROOM) + -> LONG; +} +extern "C" { + pub fn NET_DVR_InquestGetDeviceVersion( + lUserID: LONG, + lpVersionInfo: LPNET_DVR_INQUEST_DEVICE_VERSION, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetSDKSecretKey( + lUserID: LONG, + sSecretKey: *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_LockFileByTime( + lUserID: LONG, + lpLockPara: LPNET_DVR_TIME_LOCK, + lpLockReturn: LPNET_DVR_LOCK_RETURN, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_UnlockFileByTime( + lUserID: LONG, + lpLockPara: LPNET_DVR_TIME_LOCK, + lpLockReturn: LPNET_DVR_LOCK_RETURN, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ScreenZoomIn( + lUserID: LONG, + pStruScreen: LPNET_DVR_SCREENZOOM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetAllCameraInfo( + lUserID: LONG, + lpCamListInfo: LPNET_DVR_MATRIX_CAMERALIST, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetSingleCameraInfo( + lUserID: LONG, + dwCameraId: DWORD, + lpInter: LPNET_MATRIX_CAMERAINFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixAddCamera( + lUserID: LONG, + dwCameraNum: DWORD, + pBuffer: *mut BYTE, + dwBufLength: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixModCameraInfo( + lUserID: LONG, + lpInter: LPNET_MATRIX_CAMERAINFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixDelCamera(lUserID: LONG, dwCameraId: DWORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetAllMonitorInfo( + lUserID: LONG, + lpMonListInfo: LPNET_DVR_MATRIX_MONITORLIST, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetSingleMonitorInfo( + lUserID: LONG, + dwMonitorId: DWORD, + lpInter: LPNET_MATRIX_MONITORINFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixAddMonitor( + lUserID: LONG, + dwMonitorNum: DWORD, + pBuffer: *mut BYTE, + dwBufLength: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixModMonitorInfo( + lUserID: LONG, + lpInter: LPNET_MATRIX_MONITORINFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixDelMonitor(lUserID: LONG, dwMonitorId: DWORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetAllMatrixInfo( + lUserID: LONG, + lpMatrixListInfo: LPNET_DVR_MATRIXLIST, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetSingleMatrixInfo( + lUserID: LONG, + dwMatrixId: DWORD, + lpInter: LPNET_MATRIX_MATRIXINFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_AddMatrix( + lUserID: LONG, + lpInter: LPNET_MATRIX_MATRIXINFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ModMatrixInfo( + lUserID: LONG, + lpInter: LPNET_MATRIX_MATRIXINFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_DelMatrix(lUserID: LONG, dwMatrixId: DWORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetUartParam( + lUserID: LONG, + dwSerialChan: DWORD, + lpInter: LPNET_MATRIX_UARTPARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetUartParam( + lUserID: LONG, + dwSerialChan: DWORD, + lpInter: LPNET_MATRIX_UARTPARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetUserInfo( + lUserID: LONG, + dwUserNum: DWORD, + lpInter: LPNET_MATRIX_USERPARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixAddUser( + lUserID: LONG, + dwUserNum: DWORD, + lpInter: LPNET_MATRIX_USERPARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixModUserInfo( + lUserID: LONG, + dwUserNum: DWORD, + lpInter: LPNET_MATRIX_USERPARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixDelUser(lUserID: LONG, dwUserNum: DWORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetResourceInfo( + lUserID: LONG, + dwResourceNum: DWORD, + lpInter: LPNET_MATRIX_RESOURSEGROUPPARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixAddResourceInfo( + lUserID: LONG, + dwResourceNum: DWORD, + lpInter: LPNET_MATRIX_RESOURSEGROUPPARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixModResourceInfo( + lUserID: LONG, + dwResourceNum: DWORD, + lpInter: LPNET_MATRIX_RESOURSEGROUPPARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixDelResourceInfo( + lUserID: LONG, + dwResourceNum: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetUserGroupInfo( + lUserID: LONG, + dwUserGroupNum: DWORD, + lpInter: LPNET_MATRIX_USERGROUPPARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixAddUserGroupInfo( + lUserID: LONG, + dwUserGroupNum: DWORD, + lpInter: LPNET_MATRIX_USERGROUPPARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixModUserGroupInfo( + lUserID: LONG, + dwUserGroupNum: DWORD, + lpInter: LPNET_MATRIX_USERGROUPPARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixDelUserGroup( + lUserID: LONG, + dwUserGroupNum: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetAllTrunkInfo( + lUserID: LONG, + lpTrunkListInfo: LPNET_DVR_MATRIX_TRUNKLIST, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetTrunkInfo( + lUserID: LONG, + dwTrunkNum: DWORD, + lpInter: LPNET_MATRIX_TRUNKPARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixAddTrunk( + lUserID: LONG, + lpInter: LPNET_MATRIX_TRUNKPARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixModTrunkInfo( + lUserID: LONG, + lpInter: LPNET_MATRIX_TRUNKPARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixTrunkCtrl( + lUserID: LONG, + dwTrunkNum: DWORD, + byCtrlMode: BYTE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixTrunkStatusQuery( + lUserID: LONG, + dwTrunkNum: DWORD, + byTrunkStatus: *mut BYTE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_FindBackgroundPic( + lUserID: LONG, + dwPicID: DWORD, + pPicBuffer: *mut BYTE, + lpPicLen: *mut DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_DetectImage( + lUserID: LONG, + lpFDProcImg: LPNET_VCA_FD_PROCIMG_CFG, + lpOutBuf: LPNET_VCA_FD_PROCIMG_RESULT, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetPictureModel( + lUserID: LONG, + lpInBuf: LPNET_VCA_REGISTER_PIC, + lpOutBuf: LPNET_VCA_PICMODEL_RESULT, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_AddBlockList( + lUserID: LONG, + lChannel: LONG, + lpInter: LPNET_VCA_BLOCKLIST_PARA, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_FindBlockList(lUserID: LONG, lpBlockListCond: LPNET_VCA_BLOCKLIST_COND) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindNextBlockList( + lFindHandle: LONG, + lpFindData: LPNET_VCA_BLOCKLIST_INFO, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindBlockListClose(lFindHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetBlockListPicture( + lUserID: LONG, + dwRegisterID: DWORD, + lpOutBuffer: LPNET_VCA_BLOCKLIST_PIC, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_UpdateBlockList( + lUserID: LONG, + lChannel: LONG, + lpInter: LPNET_VCA_BLOCKLIST_PARA, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_DelBlockList( + lUserID: LONG, + lChannel: LONG, + dwRegisterID: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_FindSnapPicture(lUserID: LONG, lpFindParam: LPNET_VCA_FIND_PICTURECOND) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindNextSnapPic( + lFindHandle: LONG, + lpFindData: LPNET_VCA_SUB_SNAPPIC_DATA, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindSnapPicClose(lFindHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_AdvanceFindSnapPicture( + lUserID: LONG, + lpFindParam: LPNET_VCA_FIND_PICTURECOND_ADVANCE, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindFaceMatchAlarm( + lUserID: LONG, + lpFindParam: LPNET_VCA_FIND_PICTURECOND, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindNextFaceMatchAlarm( + lFindHandle: LONG, + lpFaceMatchAlarmLog: LPNET_VCA_FACESNAP_MATCH_ALARM_LOG, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindFaceMatchAlarmClose(lFindHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetFaceMatchPic( + lUserID: LONG, + lpMatchCond: LPNET_VCA_FACEMATCH_PICCOND, + lpMatchPic: LPNET_VCA_FACEMATCH_PICTURE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_FastAddBlockList( + lUserID: LONG, + lChannel: LONG, + lpInter: LPNET_VCA_BLOCKLIST_FASTREGISTER_PARA, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetRemotePlay_V41( + lUserID: LONG, + dwDecChanNum: DWORD, + lpInter: LPNET_DVR_MATRIX_DEC_REMOTE_PLAY_V41, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetDisplayCfg_V41( + lUserID: LONG, + dwDispChanNum: DWORD, + lpVoutCfg: LPNET_DVR_MATRIX_VOUTCFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetDisplayCfg_V41( + lUserID: LONG, + dwDispChanNum: DWORD, + lpDisplayCfg: LPNET_DVR_MATRIX_VOUTCFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetDeviceStatus_V41( + lUserID: LONG, + lpDecoderCfg: LPNET_DVR_DECODER_WORK_STATUS_V41, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetSceneCfg( + lUserID: LONG, + dwSceneNum: DWORD, + lpSceneCfg: LPNET_DVR_MATRIX_SCENECFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetSceneCfg( + lUserID: LONG, + dwSceneNum: DWORD, + lpSceneCfg: LPNET_DVR_MATRIX_SCENECFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSceneControl( + lUserID: LONG, + dwSceneNum: DWORD, + dwCmd: DWORD, + dwCmdParam: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetCurrentSceneMode( + lUserID: LONG, + dwSceneNum: *mut DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetAllValidWinInfo( + lUserID: LONG, + lpWinListInfo: LPNET_DVR_WINLIST, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ScreenWinCtrl( + lUserID: LONG, + dwWinIndex: DWORD, + dwCommand: DWORD, + lpInter: LPNET_DVR_SCREEN_WINCFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetScreenInputStatus( + lUserID: LONG, + lpStatus: LPNET_DVR_SCREENINPUTSTATUS, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PicUpload( + lUserID: LONG, + sFileName: *const ::std::os::raw::c_char, + lpPictureCfg: LPNET_DVR_PICTURECFG, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_GetPicUploadProgress(lUploadHandle: LONG) -> LONG; +} +extern "C" { + pub fn NET_DVR_CloseUploadHandle(lUploadHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PicControl( + lUserID: LONG, + byUseType: BYTE, + byPicIndex: BYTE, + byCtrlCmd: BYTE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetPicUploadState(lUploadHandle: LONG) -> LONG; +} +extern "C" { + pub fn NET_DVR_ScreenCtrl( + lUserID: LONG, + dwDeviceNum: DWORD, + lpStruScreenCtrl: LPNET_DVR_SCREEN_CONTROL, + ) -> ::std::os::raw::c_int; +} +pub type SCREENPICDATACB = ::std::option::Option< + unsafe extern "C" fn( + nScreenPicHandle: LONG, + dwDataType: DWORD, + pBuffer: *mut BYTE, + dwBufSize: DWORD, + pUser: *mut ::std::os::raw::c_void, + ), +>; +extern "C" { + pub fn NET_DVR_StartScreenPic( + nUserID: LONG, + nInputNum: DWORD, + PicDataCallback: SCREENPICDATACB, + pUserData: *mut ::std::os::raw::c_void, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_StopScreenPic(nScreenPicHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_FocusOnePush(lUserID: LONG, lChannel: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ResetLens(lUserID: LONG, lChannel: LONG) -> ::std::os::raw::c_int; +} +pub type fRemoteConfigCallback = ::std::option::Option< + unsafe extern "C" fn( + dwType: DWORD, + lpBuffer: *mut ::std::os::raw::c_void, + dwBufLen: DWORD, + pUserData: *mut ::std::os::raw::c_void, + ), +>; +extern "C" { + pub fn NET_DVR_StartRemoteConfig( + lUserID: LONG, + dwCommand: DWORD, + lpInBuffer: LPVOID, + dwInBufferLen: DWORD, + cbStateCallback: fRemoteConfigCallback, + pUserData: LPVOID, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_StopRemoteConfig(lHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetNextRemoteConfig( + lHandle: LONG, + lpOutBuff: *mut ::std::os::raw::c_void, + dwOutBuffSize: DWORD, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_GetRemoteConfigState( + lHandle: LONG, + pState: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SendRemoteConfig( + lHandle: LONG, + dwDataType: DWORD, + pSendBuf: *mut ::std::os::raw::c_char, + dwBufSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SendWithRecvRemoteConfig( + lHandle: LONG, + lpInBuff: *mut ::std::os::raw::c_void, + dwInBuffSize: DWORD, + lpOutBuff: *mut ::std::os::raw::c_void, + dwOutBuffSize: DWORD, + dwOutDataLen: *mut DWORD, + ) -> LONG; +} +pub type fLongCfgStateCallback = + ::std::option::Option; +extern "C" { + pub fn NET_DVR_CloseLongCfgHandle(lHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_RaidPullDiskStart( + lUserID: LONG, + lRaidID: LONG, + cbStateCallback: fLongCfgStateCallback, + pUserData: LPVOID, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_ScanRaidStart( + lUserID: LONG, + cbStateCallback: fLongCfgStateCallback, + pUserData: LPVOID, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_SetAccessCameraInfo( + lUserID: LONG, + dwChannel: DWORD, + lpCameraInfo: LPNET_DVR_ACCESS_CAMERA_INFO, + cbStateCallback: fLongCfgStateCallback, + pUserData: LPVOID, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_InquiryRecordTimeSpan( + lUserID: LONG, + dwChannel: DWORD, + lpInquiry: *const NET_DVR_RECORD_TIME_SPAN_INQUIRY, + lpResult: LPNET_DVR_RECORD_TIME_SPAN, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_UpdateRecordIndex(lUserID: LONG, dwChannel: DWORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetUpnpNatState( + lUserID: LONG, + lpState: LPNET_DVR_UPNP_NAT_STATE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetLoopPlanArray( + lUserID: LONG, + dwArrayNum: DWORD, + lpInter: LPNET_DVR_MATRIX_LOOP_DECINFO_V30, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetLoopPlanArray( + lUserID: LONG, + dwArrayNum: DWORD, + lpInter: *const NET_DVR_MATRIX_LOOP_DECINFO_V30, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetAlarmShowMode( + lUserID: LONG, + lpInter: LPNET_DVR_ALARMMODECFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetAlarmShowMode( + lUserID: LONG, + lpInter: *const NET_DVR_ALARMMODECFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixStartDynamicAssociateDecode( + lUserID: LONG, + dwDecChanNum: DWORD, + lpInter: *const NET_DVR_DYNAMICDECODE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixAlarmTurn( + lUserID: LONG, + dwDecChanNum: DWORD, + dwTurnParam: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixAlarmShowControl( + lUserID: LONG, + dwDecChanNum: DWORD, + dwShowMode: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetPlanDecode( + lUserID: LONG, + dwDecChanNum: DWORD, + lpInter: LPNET_DVR_PLANDECODE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetPlanDecode( + lUserID: LONG, + dwDecChanNum: DWORD, + lpInter: *const NET_DVR_PLANDECODE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetLoopDecChanInfo_EX( + lUserID: LONG, + dwDecChanNum: DWORD, + lpInter: LPNET_DVR_MATRIX_LOOP_DECINFO_EX, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetLoopDecChanInfo_EX( + lUserID: LONG, + dwDecChanNum: DWORD, + lpInter: LPNET_DVR_MATRIX_LOOP_DECINFO_EX, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixStartDynamic_EX( + lUserID: LONG, + dwDecChanNum: DWORD, + lpDynamicInfo: LPNET_DVR_PU_STREAM_CFG_EX, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetTrunkListInfo( + lUserID: LONG, + dwTrunkNum: DWORD, + dwStartTrunk: DWORD, + lpTrunkListInfo: LPNET_DVR_MATRIX_TRUNKLIST, + pReturnSize: *mut DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetSubDecSystemJoinInfo_V41( + lUserID: LONG, + lpInter: LPNET_DVR_ALLDECSUBSYSTEMJOININFO_V41, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_AlarmHostSubSystemSetupAlarmChan( + lUserID: LONG, + dwSubSystemNum: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_AlarmHostSubSystemCloseAlarmChan( + lUserID: LONG, + dwSubSystemNum: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_AlarmHostClearAlarm( + lUserID: LONG, + dwSubSystemNum: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_AlarmHostArrayBypass(lUserID: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_AlarmHostArrayBypassResume(lUserID: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_AlarmHostSetReportMode( + lUserID: LONG, + lCenterNum: LONG, + lpInputBuf: LPVOID, + dwInputBufLen: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_AlarmHostGetReportMode( + lUserID: LONG, + lpOutputBuf: LPVOID, + dwOutputBufLen: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StartUploadAudio( + lUserID: LONG, + dwAudioNum: DWORD, + dwAudioType: DWORD, + sAudioFileName: *const ::std::os::raw::c_char, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_StartDownloadAudio( + lUserID: LONG, + dwAudioNum: DWORD, + sAudioFileName: *const ::std::os::raw::c_char, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_StopAudioOperate(lAudioHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetAudioProgress(lAudioHandle: LONG) -> LONG; +} +extern "C" { + pub fn NET_DVR_AudioCtrl( + lUserID: LONG, + dwAudioNum: DWORD, + dwCtrlParam: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetDeviceConfig( + lUserID: LONG, + dwCommand: DWORD, + dwCount: DWORD, + lpInBuffer: LPVOID, + dwInBufferSize: DWORD, + lpStatusList: LPVOID, + lpOutBuffer: LPVOID, + dwOutBufferSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetDeviceConfig( + lUserID: LONG, + dwCommand: DWORD, + dwCount: DWORD, + lpInBuffer: LPVOID, + dwInBufferSize: DWORD, + lpStatusList: LPVOID, + lpInParamBuffer: LPVOID, + dwInParamBufferSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_LockStreamFileByTime( + lUserID: LONG, + lpLockPara: LPNET_DVR_STREAM_TIME_LOCK, + lpLockReturn: LPNET_DVR_LOCK_RETURN, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_UnlockStreamFileByTime( + lUserID: LONG, + lpLockPara: LPNET_DVR_STREAM_TIME_LOCK, + lpLockReturn: LPNET_DVR_LOCK_RETURN, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StartManualRecord( + lUserID: LONG, + lpManualRecPara: LPNET_DVR_MANUAL_RECORD_PARA, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StopManualRecord( + lUserID: LONG, + pIDInfo: LPNET_DVR_STREAM_INFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PlayBackByTime_V40(lUserID: LONG, pVodPara: *const NET_DVR_VOD_PARA) -> LONG; +} +extern "C" { + pub fn NET_DVR_PlayBackByTime_V50(lUserID: LONG, pVodPara: *const NET_DVR_VOD_PARA_V50) + -> LONG; +} +extern "C" { + pub fn NET_DVR_PlayBackReverseByTime_V40( + lUserID: LONG, + hWnd: HWND, + pPlayCond: LPNET_DVR_PLAYCOND, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_GetFileByTime_V40( + lUserID: LONG, + sSavedFileName: *mut ::std::os::raw::c_char, + pDownloadCond: LPNET_DVR_PLAYCOND, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindFile_V40(lUserID: LONG, pFindCond: LPNET_DVR_FILECOND_V40) -> LONG; +} +extern "C" { + pub fn NET_DVR_SetupAlarmChan_V41( + lUserID: LONG, + lpSetupParam: LPNET_DVR_SETUPALARM_PARAM, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_AddDataBase( + lUserID: LONG, + lpInBuf: LPNET_VCA_DATABASE_PARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_FindDataBase(lUserID: LONG, lpInBuf: LPNET_VCA_FIND_DATABASE_COND) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindNextDataBase(lFindHandle: LONG, lpOutBuf: LPNET_VCA_DATABASE_PARAM) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindDataBaseClose(lFindHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_UpdateDataBase( + lUserID: LONG, + lpInBuf: LPNET_VCA_DATABASE_PARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_DeleteDataBase( + lUserID: LONG, + lpCond: LPNET_VCA_DELETE_DATABASE_COND, + ) -> ::std::os::raw::c_int; +} +pub type fSearchDBCallBack = ::std::option::Option< + unsafe extern "C" fn( + lHandle: LONG, + dwType: DWORD, + dwResultNum: DWORD, + pBuffer: *mut BYTE, + dwBufSize: DWORD, + pUser: *mut ::std::os::raw::c_void, + ), +>; +extern "C" { + pub fn NET_DVR_InquireSnapDBRecord( + lUserID: LONG, + dwDataBaseID: DWORD, + lpInBuf: LPNET_VCA_INQUIRE_SNAPDB_COND, + cbSearchDBCallBack: fSearchDBCallBack, + pUser: *mut ::std::os::raw::c_void, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_GetInquireSnapDBProgress( + lInquireHandle: LONG, + pState: *mut DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_DeleteSnapDBRecord( + lUserID: LONG, + dwDataBaseID: DWORD, + lpInBuf: LPNET_VCA_DELETE_SNAPRECORD_COND, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SearchSnapDB( + lUserID: LONG, + lpInBuf: LPNET_VCA_SEARCH_SNAPDB_COND, + cbSearchDBCallBack: fSearchDBCallBack, + pUser: *mut ::std::os::raw::c_void, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_GetSearchSnapDBProgress( + lSearchHandle: LONG, + pState: *mut DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_AddFaceDBRecord( + lUserID: LONG, + dwDataBaseID: DWORD, + lpInBuf: LPNET_VCA_DATARECORD_INFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_FastAddFaceDBRecord( + lUserID: LONG, + dwDataBaseID: DWORD, + lpInBuf: LPNET_VCA_FAST_DATARECORD_INFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_InquireFaceDBRecord( + lUserID: LONG, + lpInBuf: LPNET_VCA_DATARECORD_COND, + cbInquireDBCallBack: fSearchDBCallBack, + pUser: *mut ::std::os::raw::c_void, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_GetInquireFaceDBProgress( + lInquireHandle: LONG, + pState: *mut DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_UpdateFaceDBRecord( + lUserID: LONG, + dwDataBaseID: DWORD, + lpInBuf: LPNET_VCA_DATARECORD_INFO, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_DeleteFaceDBRecord( + lUserID: LONG, + dwDataBaseID: DWORD, + lpInBuf: LPNET_VCA_DELETE_RECORD_COND, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SearchFaceDB( + lUserID: LONG, + lpInBuf: LPNET_VCA_SEARCH_FACEDB_COND, + cbSearchDBCallBack: fSearchDBCallBack, + pUser: *mut ::std::os::raw::c_void, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_GetSearchFaceDBProgress( + lSearchHandle: LONG, + pState: *mut DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StopSearchDB(lHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_FindMatchPicture( + lUserID: LONG, + lpFindCond: LPNET_VCA_FIND_MATCHPIC_COND, + lpFindResult: LPNET_VCA_FIND_MATCHPIC_RESULT, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_RemoteControl( + lUserID: LONG, + dwCommand: DWORD, + lpInBuffer: LPVOID, + dwInBufferSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetBMPByTime( + lUserID: LONG, + lChannel: LONG, + lpTime: *const NET_DVR_TIME, + sFilename: *const ::std::os::raw::c_char, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_CommandDevice( + lUserID: LONG, + dwOutCommand: DWORD, + lpInBuffer: LPVOID, + dwInBufferSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_TestDVRAlive(lUserID: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PicViewRequest( + lUserID: LONG, + lpPicViewParam: *mut NET_DVR_PIC_VIEW_PARAM, + ) -> ::std::os::raw::c_int; +} +pub type PicViewCallBack = ::std::option::Option< + unsafe extern "C" fn( + pStruPicViewParam: LPNET_DVR_PICVIEW_CALLBACKPARAM, + pUser: *mut ::std::os::raw::c_void, + ) -> LONG, +>; +extern "C" { + pub fn NET_DVR_SetPicViewResponseCallBack( + fPicViewResponseCallBack: PicViewCallBack, + pUser: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetPicViewDataCallBack( + lPicViewHandle: LONG, + fPicDataCallback: SCREENPICDATACB, + pUserData: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetDevList( + lUserID: LONG, + lpDevListInfo: LPNET_DVR_DEVLIST, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetScreenList( + lUserID: LONG, + lpScreenListInfo: LPNET_DVR_SCREENLIST, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetScreenRelation( + lUserID: LONG, + lpScreenInfo: *const NET_DVR_DISP_SCREEN, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_TextShowCtrl( + lUserID: LONG, + dwDeviceIndex: DWORD, + lpText: LPNET_DVR_TEXTSHOW, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StartUpgrade( + lUserID: LONG, + lpStruOperate: LPNET_DVR_OPERATE_DEVICE, + UpgradeStateCallback: DVCS_UPGRADESTATE_CB, + pUserData: *mut ::std::os::raw::c_void, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_StopUpgrade( + lUserID: LONG, + lpStruOperate: LPNET_DVR_OPERATE_DEVICE, + lUpgradeHandle: LONG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_AddNetSignal( + lUserID: LONG, + lpStruSignal: LPNET_DVR_NETSIGNAL_INFO, + lpOutBuf: *mut ::std::os::raw::c_void, + dwBufLen: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StartPicPreview( + lUserID: LONG, + lpStruStartPicView: *const NET_DVR_START_PIC_VIEW_INFO, + PicDataCallback: SCREENPICDATACB, + pUserData: *mut ::std::os::raw::c_void, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_GetDeviceStatus( + lUserID: LONG, + dwCommand: DWORD, + dwCount: DWORD, + lpInBuffer: LPVOID, + dwInBufferSize: DWORD, + lpStatusList: LPVOID, + lpOutBuffer: LPVOID, + dwOutBufferSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetPlanList( + lUserID: LONG, + dwDevNum: DWORD, + lpPlanList: LPNET_DVR_PLAN_LIST, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetInputSignalList( + lUserID: LONG, + dwDevNum: DWORD, + lpInputSignalList: LPNET_DVR_INPUT_SIGNAL_LIST, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetInputSignalList_V40( + lUserID: LONG, + dwDevNum: DWORD, + lpInputSignalList: LPNET_DVR_INPUT_SIGNAL_LIST, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_UploadFile( + lUserID: LONG, + dwUploadType: DWORD, + lpInBuffer: LPVOID, + dwInBufferSize: DWORD, + sFileName: *mut ::std::os::raw::c_char, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_UploadFile_V40( + lUserID: LONG, + dwUploadType: DWORD, + lpInBuffer: LPVOID, + dwInBufferSize: DWORD, + sFileName: *const ::std::os::raw::c_char, + lpOutBuffer: LPVOID, + dwOutBufferSize: DWORD, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_GetUploadState(lUploadHandle: LONG, pProgress: LPDWORD) -> LONG; +} +extern "C" { + pub fn NET_DVR_GetUploadResult( + lUploadHandle: LONG, + lpOutBuffer: LPVOID, + dwOutBufferSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_UploadClose(lUploadHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StartUploadFile( + lUserID: LONG, + lpStruUploadParam: LPNET_DVR_UPLOAD_PARAM, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_GetUploadFileProgress(lFileHandle: LONG) -> LONG; +} +extern "C" { + pub fn NET_DVR_GetUploadFileState(lFileHandle: LONG) -> LONG; +} +extern "C" { + pub fn NET_DVR_StopUploadFile(lFileHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StartDownloadFile( + lUserID: LONG, + lpStruDownloadParam: LPNET_DVR_DOWNLOAD_PARAM, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_GetDownloadFileProgress(lFileHandle: LONG) -> LONG; +} +extern "C" { + pub fn NET_DVR_GetDownloadFileState(lFileHandle: LONG) -> LONG; +} +extern "C" { + pub fn NET_DVR_StopDownloadFile(lFileHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_DownloadControl( + lDownloadHandle: LONG, + enumDownloadType: NET_SDK_DOWNLOAD_CONTROL_TYPE_ENUM, + lpInBuffer: *mut ::std::os::raw::c_void, + dwInBufferLen: DWORD, + lpOutBuffer: *mut ::std::os::raw::c_void, + dwOutBufferLen: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_UploadSend( + lUploadHandle: LONG, + pstruSendParamIN: *const NET_DVR_SEND_PARAM_IN, + lpOutBuffer: *mut ::std::os::raw::c_void, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_GetMobileDevStatus( + lUserID: LONG, + dwStatusType: DWORD, + lpstruMobileDevStatus: LPNET_DVR_MB_MOBILEDEV_STATUS, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetVoiceDataCallBack( + lVoiceComHandle: LONG, + bNeedCBNoEncData: ::std::os::raw::c_int, + fVoiceDataCallBack: ::std::option::Option< + unsafe extern "C" fn( + lVoiceComHandle: LONG, + pRecvDataBuffer: *mut ::std::os::raw::c_char, + dwBufSize: DWORD, + byAudioFlag: BYTE, + pUser: *mut ::std::os::raw::c_void, + ), + >, + pUser: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetTransparentParam( + lUserID: LONG, + sInBuffer: *mut ::std::os::raw::c_char, + dwInSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetTransparentParam( + lUserID: LONG, + sInBuffer: *mut ::std::os::raw::c_char, + dwInSize: DWORD, + sOutBuffer: *mut ::std::os::raw::c_char, + dwOutSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetSDKLocalConfig( + lpSdkLocalCfg: LPNET_DVR_SDKLOCAL_CFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetSDKLocalConfig( + lpSdkLocalCfg: LPNET_DVR_SDKLOCAL_CFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetSDKLocalCfg( + enumType: NET_SDK_LOCAL_CFG_TYPE, + lpInBuff: *const ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetSDKLocalCfg( + enumType: NET_SDK_LOCAL_CFG_TYPE, + lpOutBuff: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_OpticalUpgrade( + lUserID: LONG, + sFileName: *const ::std::os::raw::c_char, + lpOpticalInfo: LPNET_DVR_OPTICAL_INFO, + ) -> LONG; +} +pub type fGPSDataCallback = ::std::option::Option< + unsafe extern "C" fn( + nHandle: LONG, + dwState: DWORD, + lpBuffer: *mut ::std::os::raw::c_void, + dwBufLen: DWORD, + pUserData: *mut ::std::os::raw::c_void, + ), +>; +extern "C" { + pub fn NET_DVR_GetVehicleGpsInfo( + nUserID: LONG, + lpGPSDataParam: LPNET_DVR_GET_GPS_DATA_PARAM, + cbGPSDataCallback: fGPSDataCallback, + pUser: *mut ::std::os::raw::c_void, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_ClosePreview(lUserID: LONG, nSessionID: DWORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ClosePlayBack(lUserID: LONG, nSessionID: DWORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_RealPlay_V40( + lUserID: LONG, + lpPreviewInfo: LPNET_DVR_PREVIEWINFO, + fRealDataCallBack_V30: REALDATACALLBACK, + pUser: *mut ::std::os::raw::c_void, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_RealPlaySpecial( + lUserID: LONG, + lpPreviewInfo: LPNET_DVR_PREVIEWINFO_SPECIAL, + fRealDataCallBack_V30: REALDATACALLBACK, + pUser: *mut ::std::os::raw::c_void, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_GetLinkAddr( + lLinkHandle: LONG, + enumLinkKind: NET_DVR_LINK_KIND, + lpLinkAddr: LPNET_DVR_LINK_ADDR, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StartDownload( + lUserID: LONG, + dwDownloadType: DWORD, + lpInBuffer: LPVOID, + dwInBufferSize: DWORD, + sFileName: *const ::std::os::raw::c_char, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_GetDownloadState(lDownloadHandle: LONG, pProgress: LPDWORD) -> LONG; +} +extern "C" { + pub fn NET_DVR_GetDownloadStateInfo( + lDownloadHandle: LONG, + pStatusInfo: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StopDownload(lHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixStartDynamic_V41( + lUserID: LONG, + dwDecChanNum: DWORD, + lpDynamicInfo: LPNET_DVR_PU_STREAM_CFG_V41, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetLoopDecChanInfo_V41( + lUserID: LONG, + dwDecChanNum: DWORD, + lpOuter: LPNET_DVR_MATRIX_LOOP_DECINFO_V41, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixSetLoopDecChanInfo_V41( + lUserID: LONG, + dwDecChanNum: DWORD, + lpInter: LPNET_DVR_MATRIX_LOOP_DECINFO_V41, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_MatrixGetDecChanInfo_V41( + lUserID: LONG, + dwDecChanNum: DWORD, + lpOuter: LPNET_DVR_MATRIX_DEC_CHAN_INFO_V41, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StartT1Test( + lUserID: LONG, + lpStruDownloadParam: LPNET_DVR_ALARMHOST_DOWNLOAD_PARAM, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_StopTT1Test(lHandle: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetT1TestStatus(lHandle: LONG, pStatus: *mut LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SendT1TestData( + lHandle: LONG, + dwDataType: DWORD, + pSendBuf: *mut ::std::os::raw::c_char, + dwSendBufLen: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_UploadLogo_NEW( + lUserID: LONG, + dwLogoNo: DWORD, + lpLogoInfo: LPNET_DVR_MATRIX_LOGO_INFO, + sLogoBuffer: *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_DownloadLogo( + lUserID: LONG, + dwLogoNo: DWORD, + lpLogoInfo: LPNET_DVR_MATRIX_LOGO_INFO, + sLogoBuffer: *mut ::std::os::raw::c_char, + dwLogoBufferSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StartPassiveTransCode( + lUserID: LONG, + pStreamInfo: *const NET_DVR_STREAM_INFO, + pDstTransInfo: *const NET_DVR_COMPRESSIONCFG_V30, + pPassiveTransInfo: *const NET_DVR_PASSIVETRANSINFO, + fTransCodeDataCallBack: ::std::option::Option< + unsafe extern "C" fn( + lPassiveHandle: LONG, + dwDataType: DWORD, + pBuffer: *mut BYTE, + dwBufSize: DWORD, + pUser: *mut ::std::os::raw::c_void, + ), + >, + pUser: *mut ::std::os::raw::c_void, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_TransCodeInputData( + lPassiveHandle: LONG, + pBuffer: *mut BYTE, + dwBufSize: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StopPassiveTransCode(lPassiveHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetPassiveTransChanNum(lPassiveHandle: LONG) -> LONG; +} +extern "C" { + pub fn NET_DVR_SetDeviceConfigEx( + lUserID: LONG, + dwCommand: DWORD, + dwCount: DWORD, + lpInParam: *mut NET_DVR_IN_PARAM, + lpOutParam: *mut NET_DVR_OUT_PARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetSTDConfig( + lUserID: LONG, + dwCommand: DWORD, + lpConfigParam: LPNET_DVR_STD_CONFIG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetSTDConfig( + lUserID: LONG, + dwCommand: DWORD, + lpConfigParam: LPNET_DVR_STD_CONFIG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetSTDAbility( + lUserID: LONG, + dwAbilityType: DWORD, + lpAbilityParam: LPNET_DVR_STD_ABILITY, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_STDControl( + lUserID: LONG, + dwCommand: DWORD, + lpControlParam: LPNET_DVR_STD_CONTROL, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_STDXMLConfig( + lUserID: LONG, + lpInputParam: *mut NET_DVR_XML_CONFIG_INPUT, + lpOutputParam: *mut NET_DVR_XML_CONFIG_OUTPUT, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_Upgrade_V40( + lUserID: DWORD, + dwUpgradeType: DWORD, + sFileName: *const ::std::os::raw::c_char, + pInbuffer: *mut ::std::os::raw::c_void, + dwBufferLen: DWORD, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_Upgrade_V50(lUserID: DWORD, lpUpgradeParam: LPNET_DVR_UPGRADE_PARAM) -> LONG; +} +extern "C" { + pub fn NET_DVR_DetectImage_V50( + lUserID: LONG, + lpFDProcImg: LPNET_VCA_FD_PROCIMG_CFG, + lpOutBuf: LPNET_VCA_FD_PROCIMG_RESULT_V50, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SmartSearchPicture( + lUserID: LONG, + pFindParam: *mut NET_DVR_SMART_SEARCH_PIC_PARA, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_FindNextSmartPicture( + lFindHandle: LONG, + lpFindData: LPNET_DVR_SMART_SEARCH_PIC_RET, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_CloseSmartSearchPicture(lFindHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetESCallBack( + iRealHandle: LONG, + fnESCallback: ::std::option::Option< + unsafe extern "C" fn( + lPreviewHandle: LONG, + dwDataType: DWORD, + pBuffer: *mut BYTE, + dwBufSize: DWORD, + pUser: *mut ::std::os::raw::c_void, + ), + >, + pUser: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetESRealPlayCallBack( + iRealHandle: LONG, + fPlayESCallBack: ::std::option::Option< + unsafe extern "C" fn( + lPreviewHandle: LONG, + pstruPackInfo: *mut NET_DVR_PACKET_INFO_EX, + pUser: *mut ::std::os::raw::c_void, + ), + >, + pUser: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ActivateDevice( + sDVRIP: *mut ::std::os::raw::c_char, + wDVRPort: WORD, + lpActivateCfg: LPNET_DVR_ACTIVATECFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetAddrInfoByServer( + dwQueryType: DWORD, + pInBuf: *mut ::std::os::raw::c_void, + dwInBufLen: DWORD, + pOutBuf: *mut ::std::os::raw::c_void, + dwOutBufLen: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StartGetDevState(pParams: LPNET_DVR_CHECK_DEV_STATE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_StopGetDevState() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_RigisterPlayBackDrawFun( + lPlayHandle: LONG, + fDrawFun: ::std::option::Option< + unsafe extern "C" fn(lPlayHandle: LONG, hDc: HDC, dwUser: DWORD), + >, + dwUser: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetSDKInitCfg( + enumType: NET_SDK_INIT_CFG_TYPE, + lpInBuff: *mut ::std::os::raw::c_void, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ReleaseSDKMemPool( + lpSdkMemPoolCfg: LPNET_DVR_SDKMEMPOOL_CFG, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_CapturePictureBlock( + iRealHandle: LONG, + sPicFileName: *const ::std::os::raw::c_char, + dwTimeOut: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_CapturePictureBlock_New( + iRealHandle: LONG, + pPicBuf: *mut ::std::os::raw::c_char, + dwPicSize: DWORD, + lpSizeReturned: *mut DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_ChangeWndResolution(iRealHandle: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SDKChannelToISAPI( + lUserID: LONG, + lInChannel: LONG, + bSDKToISAPI: ::std::os::raw::c_int, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_STDXMLConfig_Conv( + lUserID: LONG, + lpInputParam: *mut NET_DVR_XML_CONFIG_INPUT, + lpOutputParam: *mut NET_DVR_XML_CONFIG_OUTPUT, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetDevXmlLen(lUserID: LONG, wDevXmlLen: WORD) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetupAlarmChan_V50( + iUserID: LONG, + lpSetupParam: LPNET_DVR_SETUPALARM_PARAM_V50, + pSub: *mut ::std::os::raw::c_char, + dwSubSize: DWORD, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_GetAlarmSubscribe( + lAlarmHandle: LONG, + pData: *mut ::std::os::raw::c_char, + dwDataLen: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetAlarmSubscribe( + lAlarmHandle: LONG, + pData: *mut ::std::os::raw::c_char, + dwDataLen: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_GetNPQStat( + lHandle: LONG, + pStruStat: *mut NET_SDK_NPQ_STATE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_SetNPQNotifyParam( + lHandle: LONG, + pNotifyParam: *mut NET_SDK_NPQ_NOTIFY_PARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PlaybackGetNPQStat( + lHandle: LONG, + pStruStat: *mut NET_SDK_NPQ_STATE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_RenderPrivateData( + lRealHandle: LONG, + iIntelType: ::std::os::raw::c_int, + bTrue: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_RenderPrivateDataEx( + lRealHandle: LONG, + iIntelType: ::std::os::raw::c_int, + iSubType: ::std::os::raw::c_int, + bTrue: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_PlaybackSetNPQNotifyParam( + lHandle: LONG, + pNotifyParam: *mut NET_SDK_NPQ_NOTIFY_PARAM, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_EnableRelogon( + bEnable: ::std::os::raw::c_int, + dwReserved: DWORD, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_CreateEzvizUser( + pLoginInfo: LPNET_DVR_EZVIZ_USER_LOGIN_INFO, + pDeviceInfo: LPNET_DVR_DEVICEINFO_V30, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_DeleteEzvizUser(iUserID: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_CreateOpenEzvizUser( + pLoginInfo: LPNET_DVR_OPEN_EZVIZ_USER_LOGIN_INFO, + pDeviceInfo: LPNET_DVR_DEVICEINFO_V40, + ) -> LONG; +} +extern "C" { + pub fn NET_DVR_DeleteOpenEzvizUser(iUserID: LONG) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn NET_DVR_LoadAdditionalLib( + libType: ADDITIONAL_LIB, + sDllName: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} diff --git a/hkstreamer b/hkstreamer new file mode 100755 index 0000000..e359c9f Binary files /dev/null and b/hkstreamer differ diff --git a/hkstreamer.rs b/hkstreamer.rs new file mode 100644 index 0000000..8515bec --- /dev/null +++ b/hkstreamer.rs @@ -0,0 +1,199 @@ +/* automatically generated by rust-bindgen 0.64.0 */ + +pub const HPR_OK: u32 = 0; +pub const HPR_ERROR: i32 = -1; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LoginInfo { + pub sDeviceAddress: [::std::os::raw::c_char; 129usize], + pub sUserName: [::std::os::raw::c_char; 64usize], + pub sPassword: [::std::os::raw::c_char; 64usize], +} +#[test] +fn bindgen_test_layout_LoginInfo() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 257usize, + concat!("Size of: ", stringify!(LoginInfo)) + ); + assert_eq!( + ::std::mem::align_of::(), + 1usize, + concat!("Alignment of ", stringify!(LoginInfo)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sDeviceAddress) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(LoginInfo), + "::", + stringify!(sDeviceAddress) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sUserName) as usize - ptr as usize }, + 129usize, + concat!( + "Offset of field: ", + stringify!(LoginInfo), + "::", + stringify!(sUserName) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sPassword) as usize - ptr as usize }, + 193usize, + concat!( + "Offset of field: ", + stringify!(LoginInfo), + "::", + stringify!(sPassword) + ) + ); +} +pub type LPLoginInfo = *mut LoginInfo; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct StreamDate { + pub dwYear: ::std::os::raw::c_ulong, + pub dwMonth: ::std::os::raw::c_ulong, + pub dwDay: ::std::os::raw::c_ulong, + pub dwHour: ::std::os::raw::c_ulong, + pub dwMinute: ::std::os::raw::c_ulong, + pub dwSecond: ::std::os::raw::c_ulong, +} +#[test] +fn bindgen_test_layout_StreamDate() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(StreamDate)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(StreamDate)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwYear) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(StreamDate), + "::", + stringify!(dwYear) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMonth) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(StreamDate), + "::", + stringify!(dwMonth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwDay) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(StreamDate), + "::", + stringify!(dwDay) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwHour) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(StreamDate), + "::", + stringify!(dwHour) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwMinute) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(StreamDate), + "::", + stringify!(dwMinute) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dwSecond) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(StreamDate), + "::", + stringify!(dwSecond) + ) + ); +} +pub type LStreamDate = *mut StreamDate; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct StreamCon { + pub lChannel: ::std::os::raw::c_ulong, + pub start: StreamDate, + pub end: StreamDate, +} +#[test] +fn bindgen_test_layout_StreamCon() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 104usize, + concat!("Size of: ", stringify!(StreamCon)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(StreamCon)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lChannel) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(StreamCon), + "::", + stringify!(lChannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).start) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(StreamCon), + "::", + stringify!(start) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).end) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(StreamCon), + "::", + stringify!(end) + ) + ); +} +pub type LPStream = *mut StreamCon; +extern "C" { + pub fn playback(loginInfo: LPLoginInfo, stream: LPStream) -> ::std::os::raw::c_int; +} diff --git a/include/HkStreamer.h b/include/HkStreamer.h index 38a884d..9c0edca 100644 --- a/include/HkStreamer.h +++ b/include/HkStreamer.h @@ -10,29 +10,39 @@ // typedef unsigned long ULONG; // typedef unsigned long unsigned long ; // // #endif //#ifdef __LINUX__ - -typedef struct { - char sDeviceAddress[129]; - char sUserName[64]; - char sPassword[64]; -} LoginInfo, *LPLoginInfo; - -typedef struct +#ifdef __cplusplus +extern "C" { - unsigned long dwYear; //年 - unsigned long dwMonth; //月 - unsigned long dwDay; //日 - unsigned long dwHour; //时 - unsigned long dwMinute; //分 - unsigned long dwSecond; //秒 -} StreamDate, *LStreamDate; -typedef struct { - unsigned long lChannel; - StreamDate start; - StreamDate end; -} StreamCon, *LPStream; +#endif + typedef struct + { + char sDeviceAddress[129]; + char sUserName[64]; + char sPassword[64]; + } LoginInfo, *LPLoginInfo; + + typedef struct + { + unsigned long dwYear; // 年 + unsigned long dwMonth; // 月 + unsigned long dwDay; // 日 + unsigned long dwHour; // 时 + unsigned long dwMinute; // 分 + unsigned long dwSecond; // 秒 + } StreamDate, *LStreamDate; + typedef struct + { + unsigned long lChannel; + StreamDate start; + StreamDate end; + } StreamCon, *LPStream; + +#define HPR_OK 0 +#define HPR_ERROR -1 + int playback(LPLoginInfo loginInfo, LPStream stream); + int getCfg(LPLoginInfo loginInfo); +#ifdef __cplusplus +} +#endif -#define HPR_OK 0 -#define HPR_ERROR -1 -int playback(LPLoginInfo loginInfo, LPStream stream); #endif \ No newline at end of file diff --git a/main.cpp b/main.cpp new file mode 100644 index 0000000..abb8bc1 --- /dev/null +++ b/main.cpp @@ -0,0 +1,117 @@ +#include "HkStreamer.h" +#include +#include +#include +#include +#include +using namespace std; +bool check_key(std::map *m, string key) +{ + // Key is not present + if (m->find(key) == m->end()) + return false; + + return true; +} + +void parseTime(string timeStr,struct tm *timeOut){ + strptime(timeStr.c_str(), "%Y%m%dT%H%M%S",timeOut); +} +void parseArgs(int argc, char *argv[], std::map *paramMap) +{ + static struct option long_options[] = { + {"cnd", required_argument, NULL, 'c'}, + {"url", required_argument, NULL, 'i'}, + {"user", required_argument, NULL, 'u'}, + {"passwd", required_argument, NULL, 'p'}, + {"device", required_argument, NULL, 'd'}, + {"channel", required_argument, NULL, 'c'}, + {"start", required_argument, NULL, 's'}, + {"end", required_argument, NULL, 'e'}, + }; + int c; + while (1) + { + int opt_index = 0; + c = getopt_long(argc, argv, "c:u:p:", long_options, &opt_index); + if (c == -1) + { + break; + } + + std::string paraName(1, char(c)); + + std::cout << "paraName:" << paraName << std::endl; + std::string paraValue = optarg; + + (*paramMap)[paraName] = paraValue; + } +} + +void error(string msg) +{ + cerr << msg << endl; + exit(1); +} + +int main(int argc, char *argv[]) +{ + std::map pMap; + parseArgs(argc, argv, &pMap); + std::string cmd = pMap.at("cmd"); + if (!check_key(&pMap, "u")) + { + error("Must set user"); + } + + if (!check_key(&pMap, "d")) + { + error("Must set device address"); + } + LoginInfo loginInfo = {0}; + strcpy(loginInfo.sDeviceAddress, pMap.at("d").c_str()); + strcpy(loginInfo.sUserName, pMap.at("u").c_str()); + strcpy(loginInfo.sPassword, pMap.at("p").c_str()); + if (cmd == "playback") + { + if (!check_key(&pMap, "c")) + { + error("Muset set channel"); + } + + if (!check_key(&pMap, "s")) + { + error("Must set start time"); + } + if (!check_key(&pMap, "e")) + { + error("Must set end time"); + } + + StreamCon stream = {0}; + + stream.lChannel = stol(pMap.at("c")); + string startStr = pMap.at("s"); + struct tm start; + parseTime(startStr, &start); + stream.start.dwYear = start.tm_year; + stream.start.dwMonth = start.tm_mon; + stream.start.dwDay = start.tm_mday; + stream.start.dwHour = start.tm_hour; + stream.start.dwMinute = start.tm_min; + stream.start.dwSecond = start.tm_sec; + string endStr = pMap.at("e"); + struct tm end; + parseTime(endStr, &end); + stream.end.dwYear = end.tm_year; + stream.end.dwMonth = end.tm_mon; + stream.end.dwDay = end.tm_mday; + stream.end.dwHour = end.tm_hour; + stream.end.dwMinute = end.tm_min; + stream.end.dwSecond = end.tm_sec; + playback(&loginInfo, &stream); + + } + // getCfg(&loginInfo); + return 0; +} \ No newline at end of file diff --git a/t.ts b/t.ts new file mode 100644 index 0000000..47ee5cf Binary files /dev/null and b/t.ts differ